liyong
2 天以前 d42f9256b4aab375b6c7897e11e99f07bf5f9c95
Merge remote-tracking branch 'origin/dev_business' into dev_business
已添加212个文件
已修改31个文件
358340 ■■■■■ 文件已修改
.playwright-mcp/page-2026-07-21T07-05-51-287Z.yml 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-06-20-697Z.yml 315 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-06-46-253Z.png 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-08-30-493Z.png 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-08-59-408Z.png 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-09-42-959Z.yml 428 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-09-59-810Z.yml 416 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-11-18-147Z.png 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-13-43-647Z.yml 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-14-06-572Z.yml 394 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-14-13-732Z.png 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-14-34-792Z.png 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-57-24-131Z.yml 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/material_stock_move.md 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/production_workflow_optimization.md 744 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/sale_order_production_status.md 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/work_order_center_integration.md 506 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/work_order_process_integration.md 229 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/browser-test.js 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/.bin/playwright 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/.bin/playwright-core 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/.bin/playwright-core.cmd 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/.bin/playwright-core.ps1 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/.bin/playwright.cmd 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/.bin/playwright.ps1 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/.package-lock.json 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/LICENSE 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/NOTICE 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/README.md 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/ThirdPartyNotices.txt 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/install_media_pack.ps1 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/install_webkit_wsl.ps1 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_chrome_beta_win.ps1 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_chrome_stable_win.ps1 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_msedge_beta_win.ps1 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_msedge_dev_win.ps1 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/bin/reinstall_msedge_stable_win.ps1 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/browsers.json 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/cli.js 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/index.d.ts 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/index.js 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/index.mjs 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/bootstrap.js 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/coreBundle.js 73386 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/entry/cliDaemon.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/entry/dashboardApp.js 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/entry/mcp.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/entry/oopBrowserDownload.js 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/package.js 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/server/chromium/appIcon.png 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/server/deviceDescriptorsSource.json 2739 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/server/electron/loader.js 115 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/serverRegistry.js 7343 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/serverRegistry.js.LICENSE 354 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/channelSessions.js 141 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/cli.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/help.json 693 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/minimist.js 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/output.js 343 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/program.js 404 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/registry.js 176 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/session.js 254 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/SKILL.md 404 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/element-attributes.md 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/playwright-tests.md 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/request-mocking.md 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/running-code.md 241 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/session-management.md 225 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/spec-driven-testing.md 305 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/storage-state.md 275 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/test-generation.md 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/tracing.md 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/video-recording.md 143 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/dashboard/appIcon.png 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/trace/SKILL.md 171 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/utils/extension.js 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/tools/utils/socketConnection.js 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/utilsBundle.js 86736 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/utilsBundle.js.LICENSE 2056 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/codicon-DCmgc-ay.ttf 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/firefox-1bWoP6pv.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/firefox-beta-k3eOH_eK.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/firefox-nightly-Cp5nfeDT.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/index-BY2S1tHT.css 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/index-C_5TMfeg.js 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/safari-na3_-uQk.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/dashboard/index.html 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/dashboard/playwright-logo.svg 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/htmlReport/index.html 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/htmlReport/report.css 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/htmlReport/report.js 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-DYBRYzYX.css 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-DeBYQozu.js 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/recorder/assets/codicon-DCmgc-ay.ttf 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/recorder/assets/index-4ZiSSCmn.css 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/recorder/assets/index-Bq-mQf8S.js 193 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/recorder/index.html 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/recorder/playwright-logo.svg 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/assets/codeMirrorModule-LEHpjmcn.js 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-BNmKHKpQ.js 264 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/assets/urlMatch-BYQrIQwR.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/assets/xtermModule-CsJ4vdCR.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/codeMirrorModule.DYBRYzYX.css 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/codicon.DCmgc-ay.ttf 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/defaultSettingsView.CjdS-WJx.css 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/index.CzXZzn5A.css 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/index.DMMX1gXU.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/index.html 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/manifest.webmanifest 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/playwright-logo.svg 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/snapshot.html 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/snapshot.v8KI4P3m.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/sw.bundle.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/uiMode.BZQ54Kgt.css 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/uiMode.Ut8wwJNp.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/uiMode.html 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/vite/traceViewer/xtermModule.DYP7pi_n.css 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/lib/xdg-open 1066 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/package.json 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/types/protocol.d.ts 24629 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/types/structs.d.ts 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright-core/types/types.d.ts 24445 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/LICENSE 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/NOTICE 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/README.md 318 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/ThirdPartyNotices.txt 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/cli.js 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/index.d.ts 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/index.js 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/index.mjs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/jsx-runtime.js 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/jsx-runtime.mjs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/agentParser.js 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/copilot-setup-steps.yml 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/generateAgents.js 395 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/playwright-test-coverage.prompt.md 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/playwright-test-generate.prompt.md 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/playwright-test-generator.agent.md 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/playwright-test-heal.prompt.md 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/playwright-test-healer.agent.md 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/playwright-test-plan.prompt.md 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/agents/playwright-test-planner.agent.md 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/cli/reportActions.js 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/cli/testActions.js 213 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/common/index.js 2932 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/common/index.js.txt 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/errorContext.js 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/globals.js 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/index.js 784 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/isomorphic.js 260 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/isomorphic.js.txt 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/loader/loaderProcessEntry.js 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/loader/loaderProcessEntry.js.txt 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/matchers/expect.js 13054 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/matchers/expect.js.LICENSE 693 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/matchers/expect.js.txt 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/mcp/test/browserBackend.js 125 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/mcp/test/generatorTools.js 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/mcp/test/plannerTools.js 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/mcp/test/seed.js 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/mcp/test/streams.js 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/mcp/test/testBackend.js 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/mcp/test/testContext.js 306 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/mcp/test/testTool.js 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/mcp/test/testTools.js 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/package.js 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/program.js 223 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/runner/index.js 8085 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/runner/index.js.txt 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/transform/babelBundle.js 71030 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/transform/babelBundle.js.LICENSE 2359 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/transform/babelBundle.js.txt 325 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/transform/esmLoader.js 6065 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/transform/esmLoader.js.LICENSE 335 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/transform/esmLoader.js.txt 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/util.js 400 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/worker/workerProcessEntry.js 1868 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/lib/worker/workerProcessEntry.js.txt 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/package.json 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/test.d.ts 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/test.js 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/test.mjs 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/types/test.d.ts 10461 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/node_modules/playwright/types/testReporter.d.ts 824 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/package-lock.json 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
scripts/package.json 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sql/production_workflow_optimization.sql 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/framework/permission/core/aop/CrmPermissionAspect.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/util/CrmPermissionUtils.java 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/ErpSaleOrderController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/controller/admin/item/MdmItemController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/service/item/MdmItemService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/service/item/MdmItemServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes-api/src/main/java/cn/iocoder/yudao/module/mes/api/mps/MesProMpsApi.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/api/mps/MesProMpsApiImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/MesProFeedbackController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/vo/MesProFeedbackBatchCreateReqVO.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/vo/MesProFeedbackBatchCreateRespVO.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/vo/MesProFeedbackQuickCreateReqVO.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/vo/MesProFeedbackQuickCreateRespVO.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/task/MesProTaskController.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/task/vo/MesProTaskAutoGeneratePreviewRespVO.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/task/vo/MesProTaskAutoGenerateReqVO.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderController.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderProcessController.java 152 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/MesProWorkOrderProgressRespVO.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/process/MesProWorkOrderProcessPageReqVO.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/process/MesProWorkOrderProcessRespVO.java 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/process/MesProWorkOrderProcessSaveReqVO.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/materialstock/MesWmMaterialStockController.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/materialstock/vo/MesWmMaterialStockMoveReqVO.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/pro/task/MesProTaskDO.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/pro/workorder/MesProWorkOrderDO.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/pro/workorder/MesProWorkOrderProcessDO.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/workorder/MesProWorkOrderMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/workorder/MesProWorkOrderProcessMapper.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/materialstock/MesWmMaterialStockMapper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/pro/MesProTaskStatusEnum.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/feedback/MesProFeedbackService.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/feedback/MesProFeedbackServiceImpl.java 126 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/mps/MesProMpsService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/mps/MesProMpsServiceImpl.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/task/MesProTaskService.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/task/MesProTaskServiceImpl.java 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderProcessService.java 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderProcessServiceImpl.java 245 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderService.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java 159 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockServiceImpl.java 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/transfer/MesWmTransferServiceImpl.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-server/src/main/java/cn/iocoder/yudao/server/controller/DefaultController.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.playwright-mcp/page-2026-07-21T07-05-51-287Z.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,90 @@
- generic [active] [ref=e1]:
  - generic [ref=e3]:
    - generic [ref=e4]:
      - generic [ref=e8]: ä¸­å°ä¼ä¸šæ”¹é€ bug修改列表
      - button "登录腾讯文档" [ref=e12]
    - generic [ref=e13]:
      - generic [ref=e14]:
        - generic [ref=e15]: å¼€å§‹
        - generic [ref=e16]: æ’å…¥
        - generic [ref=e17]: æ•°æ®
        - generic [ref=e18]: å…¬å¼
        - generic [ref=e19]: åä½œ
        - generic [ref=e20]: è§†å›¾
      - generic [ref=e21]:
        - generic [ref=e27]:
          - generic [ref=e28]: é»˜è®¤å­—体
          - generic [ref=e30]: "10"
        - generic [ref=e42]: è¡¨æ ¼æ ·å¼
        - generic [ref=e44]: æ¡ä»¶æ ¼å¼
        - generic [ref=e53]: æ¢è¡Œ
        - generic [ref=e55]: åˆå¹¶
        - generic [ref=e58]: å¸¸è§„
        - generic [ref=e64]: ç­›é€‰
        - generic [ref=e66]: å†»ç»“
        - generic [ref=e68]: æŽ’序
        - generic [ref=e70]: æ±‚å’Œ
        - generic [ref=e72]: æ•°æ®
        - generic [ref=e74]: ä¿æŠ¤
        - generic [ref=e77]: æ’å…¥
        - generic [ref=e79]: å›¾ç‰‡
        - generic [ref=e81]: å›¾è¡¨
        - generic [ref=e83]: é€è§†è¡¨
        - generic [ref=e86]: å¿«æ·å·¥å…·
        - generic [ref=e88]: ç”Ÿæˆå›¾ç‰‡
        - generic [ref=e90]: å…³è”收集表
        - generic [ref=e92]: å›¾ç‰‡è½¬è¡¨æ ¼
        - generic [ref=e94]: ç”Ÿæˆæ™ºèƒ½è¡¨
        - generic [ref=e96]: PDF转换
        - generic [ref=e99]: æ‰“印
  - generic [ref=e106]:
    - textbox [ref=e107]
    - combobox [ref=e108]:
      - paragraph [ref=e109]
  - generic [ref=e122]:
    - generic [ref=e125]:
      - link "进销存重构-NEW" [ref=e126]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=fs73ok
      - generic [ref=e129]: é“¶å·3级MOM系统
      - link "OA问题表" [ref=e132]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=f64daq
      - link "宁夏-万通建材" [ref=e135]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=ept4mh
      - link "浪潮" [ref=e138]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=spyhmp
      - link "酒泉验收问题" [ref=e141]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=x00zho
      - link "湟水峡验收问题表" [ref=e144]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=h625nh
      - link "天津—双奇点" [ref=e147]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=BB08J2
      - link "天津—军泰伟业" [ref=e150]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=lspijq
      - link "天津--君歌化工" [ref=e153]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=mq8fx1
      - link "天津—阳光印刷" [ref=e156]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=0l2zs6
      - link "鹤壁—天沐玻璃" [ref=e159]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=iwl1zq
      - link "天津—德瑞斯影视" [ref=e162]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=uw3s1s
      - link "湖南—坤泰化工" [ref=e165]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=lhgufk
      - link "湖南—鹏创电子" [ref=e168]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=qr1hgf
      - link "宁夏-中盛建材" [ref=e171]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=glpee8
      - link "长治—健齿齿科器材" [ref=e174]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=f6oijb
      - link "长治—安铁熔剂" [ref=e177]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=27v3ks
      - link "长治-祥雨" [ref=e180]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=51i5b3
      - link "长治-晋和园" [ref=e183]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=bo7qyg
      - link "河南-鹤壁" [ref=e186]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=mkpiqo
    - generic [ref=e191]: 100%
  - textbox [ref=e193]
  - combobox [ref=e195]:
    - paragraph
.playwright-mcp/page-2026-07-21T07-06-20-697Z.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,315 @@
- generic [ref=e1]:
  - generic [ref=e197]:
    - toolbar "titlebar" [ref=e198]:
      - generic [ref=e205]: ä¸­å°ä¼ä¸šæ”¹é€ bug修改列表
      - button "只能查看" [ref=e219]
      - img "breadcrumb" [ref=e236]
      - generic [ref=e246]:
        - img "头像" [ref=e249]
        - img "头像" [ref=e254]
      - button "登录腾讯文档" [ref=e261]
    - toolbar "Toolbar" [ref=e267]:
      - tablist [ref=e269]:
        - tab "开始" [selected] [ref=e270]
        - tab "插入" [ref=e271]
        - tab "数据" [ref=e272]
        - tab "公式" [ref=e273]
        - tab "协作" [ref=e274]
        - tab "视图" [ref=e275]
        - tab "效率工具" [ref=e276]
        - tab "会员专享" [ref=e277]
      - tabpanel [ref=e279]:
        - toolbar "开始" [ref=e280]:
          - generic [ref=e281]:
            - generic [ref=e282]:
              - generic [ref=e283]:
                - button [disabled] [ref=e288]:
                  - button [disabled] [ref=e290]
                - button [disabled] [ref=e296]:
                  - button [disabled] [ref=e298]
              - generic [ref=e300]:
                - button [disabled] [ref=e305]:
                  - button [disabled] [ref=e307]
                - button [disabled] [ref=e313]:
                  - button [disabled] [ref=e315]
            - generic [ref=e318]:
              - generic [ref=e319]:
                - button [disabled] [ref=e327]:
                  - generic [ref=e328]: é»˜è®¤å­—体
                - button [disabled] [ref=e339]:
                  - generic [ref=e340]: "12"
                - group [disabled] [ref=e351]:
                  - generic [ref=e352]:
                    - button [disabled] [ref=e353]
                    - button [disabled] [ref=e356]
                - button [disabled] [ref=e364]:
                  - button [disabled] [ref=e366]
                - button [disabled] [ref=e377]:
                  - generic [ref=e378]:
                    - button [disabled] [ref=e379]
                    - generic [ref=e381]: è¡¨æ ¼æ ·å¼
              - generic [ref=e384]:
                - button [disabled] [pressed] [ref=e389]:
                  - button [disabled] [ref=e391]
                - button [disabled] [ref=e397]:
                  - button [disabled] [ref=e399]
                - button [disabled] [ref=e405]:
                  - button [disabled] [ref=e407]
                - button [disabled] [ref=e413]:
                  - button [disabled] [ref=e415]
                - group [disabled] [ref=e424]:
                  - generic [ref=e425]:
                    - button [disabled] [ref=e426]
                    - button [disabled] [ref=e430]
                - group [disabled] [ref=e438]:
                  - generic [ref=e439]:
                    - button [disabled] [ref=e440]
                    - button [disabled] [ref=e444]
                - button [disabled] [ref=e452]:
                  - generic [ref=e453]:
                    - button [disabled] [ref=e454]
                    - generic [ref=e456]: æ¡ä»¶æ ¼å¼
            - button [ref=e468]:
              - button [ref=e470]
              - generic [ref=e474]: å­—体样式
            - generic [ref=e476]:
              - generic [ref=e477]:
                - button [disabled] [ref=e485]:
                  - button [disabled] [ref=e487]
                - button [disabled] [ref=e498]:
                  - button [disabled] [ref=e500]
              - generic [ref=e504]:
                - button [disabled] [ref=e509]:
                  - button [disabled] [ref=e511]
                - button [disabled] [pressed] [ref=e517]:
                  - button [disabled] [ref=e519]
                - button [disabled] [ref=e525]:
                  - button [disabled] [ref=e527]
            - generic [ref=e529]:
              - button [disabled] [ref=e535]:
                - generic [ref=e536]:
                  - button [disabled] [ref=e537]
                  - generic [ref=e539]: æ¢è¡Œ
              - group [disabled] [ref=e548]:
                - generic [ref=e549]:
                  - button [disabled] [ref=e550]
                  - generic [ref=e552]: åˆå¹¶
                  - button [disabled] [ref=e554]
            - button [ref=e564]:
              - button [ref=e566]
              - generic [ref=e570]: å¯¹é½æ–¹å¼
            - generic [ref=e572]:
              - button [disabled] [ref=e581]:
                - generic [ref=e582]: å¸¸è§„
              - generic [ref=e586]:
                - button [disabled] [ref=e591]:
                  - button [disabled] [ref=e593]
                - button [disabled] [ref=e599]:
                  - button [disabled] [ref=e601]
            - button [ref=e612]:
              - button [ref=e614]
              - generic [ref=e618]: æ•°å­—格式
            - group [ref=e629]:
              - generic [ref=e630]:
                - button [ref=e631]
                - button [ref=e634]
              - generic [ref=e635]: ç­›é€‰
            - generic [ref=e636]:
              - generic [ref=e637]:
                - button [disabled] [ref=e645]:
                  - generic [ref=e646]:
                    - button [disabled] [ref=e647]
                    - generic [ref=e649]: å†»ç»“
                - group [disabled] [ref=e659]:
                  - generic [ref=e660]:
                    - button [disabled] [ref=e661]
                    - generic [ref=e663]: æ±‚å’Œ
                    - button [disabled] [ref=e665]
              - generic [ref=e666]:
                - button [disabled] [ref=e674]:
                  - generic [ref=e675]:
                    - button [disabled] [ref=e676]
                    - generic [ref=e678]: æŽ’序
                - button [disabled] [ref=e688]:
                  - generic [ref=e689]:
                    - button [disabled] [ref=e690]
                    - generic [ref=e692]: æ•°æ®
            - button [ref=e704]:
              - button [ref=e706]
              - generic [ref=e710]: æ•°æ®
            - button [disabled] [ref=e720]:
              - button [disabled] [ref=e722]
              - generic [ref=e726]: ä¿æŠ¤
            - button [disabled] [ref=e737]:
              - button [disabled] [ref=e739]
              - generic [ref=e743]: æ’å…¥
            - button [disabled] [ref=e753]:
              - button [disabled] [ref=e755]
              - generic [ref=e759]: å›¾ç‰‡
            - generic [ref=e760]:
              - button [disabled] [ref=e769]:
                - generic [ref=e770]:
                  - button [disabled] [ref=e771]
                  - generic [ref=e773]: å›¾è¡¨
              - button [disabled] [ref=e781]:
                - generic [ref=e782]:
                  - button [disabled] [ref=e783]
                  - generic [ref=e785]: é€è§†è¡¨
            - button [disabled] [ref=e795]:
              - button [disabled] [ref=e797]
              - generic [ref=e801]: æ’å…¥
            - button [disabled] [ref=e812]:
              - button [disabled] [ref=e814]
              - generic [ref=e818]: å¿«æ·å·¥å…·
            - button [disabled] [ref=e825]:
              - button [disabled] [ref=e827]
              - generic [ref=e829]: ç”Ÿæˆå›¾ç‰‡
            - generic [ref=e830]:
              - generic [ref=e831]:
                - button [ref=e836]:
                  - generic [ref=e837]:
                    - button [ref=e838]
                    - generic [ref=e840]: ç”ŸæˆæŸ¥è¯¢
                - button [ref=e845]:
                  - generic [ref=e846]:
                    - button [ref=e847]
                    - generic [ref=e849]: ç”Ÿæˆæ™ºèƒ½è¡¨
              - generic [ref=e850]:
                - button [disabled] [ref=e855]:
                  - generic [ref=e856]:
                    - button [disabled] [ref=e857]
                    - generic [ref=e859]: å›¾ç‰‡è½¬è¡¨æ ¼
                - button [disabled] [ref=e867]:
                  - generic [ref=e868]:
                    - button [disabled] [ref=e869]
                    - generic [ref=e871]: PDF转换
            - button [ref=e883]:
              - button [ref=e885]
              - generic [ref=e889]: å¿«æ·å·¥å…·
            - button [ref=e897]:
              - button [ref=e899]
              - generic [ref=e901]: æ‰“印
            - button [ref=e911]:
              - button [ref=e913]
              - generic [ref=e920]: æ›´å¤š
          - generic [ref=e921]:
            - generic [ref=e922]:
              - generic [ref=e923]:
                - button "撤销" [disabled] [ref=e928]:
                  - button [disabled] [ref=e930]
                - button "重做" [disabled] [ref=e936]:
                  - button [disabled] [ref=e938]
              - generic [ref=e940]:
                - button "格式刷,双击可重复使用" [disabled] [ref=e945]:
                  - button [disabled] [ref=e947]
                - button "清除格式" [disabled] [ref=e953]:
                  - button [disabled] [ref=e955]
            - generic [ref=e958]:
              - generic [ref=e959]:
                - button "默认字体" [disabled] [ref=e967]
                - button "12" [disabled] [ref=e979]
                - group "边框" [disabled] [ref=e991]:
                  - generic [ref=e992]:
                    - button "边框" [disabled] [ref=e993]
                    - button "边框 æ›´å¤šé€‰é¡¹" [disabled] [ref=e996]
                - button "单元格样式" [disabled] [ref=e1004]:
                  - button [disabled] [ref=e1006]
                - button "表格样式" [disabled] [ref=e1017]:
                  - generic [ref=e1018]:
                    - button [disabled] [ref=e1019]
                    - generic [ref=e1021]: è¡¨æ ¼æ ·å¼
              - generic [ref=e1024]:
                - button "加粗" [disabled] [pressed] [ref=e1029]:
                  - button [disabled] [ref=e1031]
                - button "倾斜" [disabled] [ref=e1037]:
                  - button [disabled] [ref=e1039]
                - button "下划线" [disabled] [ref=e1045]:
                  - button [disabled] [ref=e1047]
                - button "删除线" [disabled] [ref=e1053]:
                  - button [disabled] [ref=e1055]
                - group "字体颜色" [disabled] [ref=e1064]:
                  - generic [ref=e1065]:
                    - button "字体颜色" [disabled] [ref=e1066]
                    - button "字体颜色 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1070]
                - group "填充颜色" [disabled] [ref=e1078]:
                  - generic [ref=e1079]:
                    - button "填充颜色" [disabled] [ref=e1080]
                    - button "填充颜色 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1084]
                - button "条件格式" [disabled] [ref=e1092]:
                  - generic [ref=e1093]:
                    - button [disabled] [ref=e1094]
                    - generic [ref=e1096]: æ¡ä»¶æ ¼å¼
            - button "对齐方式" [ref=e1109]:
              - button [ref=e1111]
            - button "数字格式" [ref=e1126]:
              - button [ref=e1128]
            - generic [ref=e1135]:
              - group "筛选" [ref=e1143]:
                - generic [ref=e1144]:
                  - button "筛选" [ref=e1145]
                  - button "筛选 æ›´å¤šé€‰é¡¹" [ref=e1148]
              - button "数据" [ref=e1157]:
                - button [ref=e1159]
              - button "保护" [disabled] [ref=e1171]:
                - button [disabled] [ref=e1173]
            - button "插入" [disabled] [ref=e1188]:
              - button [disabled] [ref=e1190]
            - button "快捷工具" [ref=e1205]:
              - button [ref=e1207]
            - button "打印" [ref=e1219]:
              - button [ref=e1221]
        - toolbar [ref=e1225]:
          - generic [ref=e1228]:
            - button "查找替换" [ref=e1233]:
              - button [ref=e1235]
            - button "工具栏切换" [ref=e1244]:
              - button [ref=e1246]
    - generic [ref=e105]:
      - generic [ref=e106]:
        - textbox [ref=e107]
        - combobox [ref=e108]:
          - paragraph [ref=e109]
      - combobox [active] [ref=e195]:
        - paragraph
    - toolbar "状态栏" [ref=e1264]:
      - button [ref=e1265]
      - button [ref=e1277]
      - button [ref=e1289]:
        - tablist "工作表" [ref=e1296]:
          - generic [ref=e1298]:
            - tab "进销存重构-NEW" [ref=e1300] [cursor=pointer]
            - tab "银川3级MOM系统" [selected] [ref=e1303] [cursor=pointer]
            - tab "OA问题表" [ref=e1306] [cursor=pointer]
            - tab "宁夏-万通建材" [ref=e1309] [cursor=pointer]
            - tab "浪潮" [ref=e1312] [cursor=pointer]
            - tab "酒泉验收问题" [ref=e1315] [cursor=pointer]
            - tab "湟水峡验收问题表" [ref=e1318] [cursor=pointer]
            - tab "天津—双奇点" [ref=e1321] [cursor=pointer]
            - tab "天津—军泰伟业" [ref=e1324] [cursor=pointer]
            - tab "天津--君歌化工" [ref=e1327] [cursor=pointer]
            - tab "天津—阳光印刷" [ref=e1330] [cursor=pointer]
            - tab "鹤壁—天沐玻璃" [ref=e1333] [cursor=pointer]
            - tab "天津—德瑞斯影视" [ref=e1336] [cursor=pointer]
            - tab "湖南—坤泰化工" [ref=e1339] [cursor=pointer]
            - tab "湖南—鹏创电子" [ref=e1342] [cursor=pointer]
            - tab "宁夏-中盛建材" [ref=e1345] [cursor=pointer]
            - tab "长治—健齿齿科器材" [ref=e1348] [cursor=pointer]
            - tab "长治—安铁熔剂" [ref=e1351] [cursor=pointer]
            - tab "长治-祥雨" [ref=e1354] [cursor=pointer]
            - tab "长治-晋和园" [ref=e1357] [cursor=pointer]
            - tab "河南-鹤壁" [ref=e1360] [cursor=pointer]
          - generic [ref=e1362]:
            - generic [ref=e1365]:
              - button [disabled]
            - button [ref=e1369]
      - button
      - button "高亮所在行列" [ref=e1370]
      - button [ref=e1382]
      - button "全屏查看 ç¼©å°,Ctrl+0可恢复至100% æ”¾å¤§,Ctrl+0可恢复至100%" [ref=e1387]:
        - generic [ref=e1392]:
          - generic "全屏查看" [ref=e1396]
          - generic "缩小,Ctrl+0可恢复至100%" [ref=e1400]
          - combobox [ref=e1404]:
            - generic [ref=e1405]: 100%
          - generic "放大,Ctrl+0可恢复至100%" [ref=e1410]
  - textbox [ref=e193]
.playwright-mcp/page-2026-07-21T07-06-46-253Z.png
.playwright-mcp/page-2026-07-21T07-08-30-493Z.png
.playwright-mcp/page-2026-07-21T07-08-59-408Z.png
.playwright-mcp/page-2026-07-21T07-09-42-959Z.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,428 @@
- generic [ref=e1]:
  - generic [ref=e197]:
    - toolbar "titlebar" [ref=e198]:
      - generic [ref=e205]: ä¸­å°ä¼ä¸šæ”¹é€ bug修改列表
      - button "只能查看" [ref=e219]
      - img "breadcrumb" [ref=e236]
      - generic [ref=e246]:
        - img "头像" [ref=e249]
        - img "头像" [ref=e254]
        - img "头像" [ref=e1727]
      - button "登录腾讯文档" [active] [ref=e261]
    - toolbar "Toolbar" [ref=e267]:
      - tablist [ref=e269]:
        - tab "开始" [selected] [ref=e270]
        - tab "插入" [ref=e271]
        - tab "数据" [ref=e272]
        - tab "公式" [ref=e273]
        - tab "协作" [ref=e274]
        - tab "视图" [ref=e275]
        - tab "效率工具" [ref=e276]
        - tab "会员专享" [ref=e277]
      - tabpanel [ref=e279]:
        - toolbar "开始" [ref=e280]:
          - generic [ref=e281]:
            - generic [ref=e282]:
              - generic [ref=e283]:
                - button [disabled] [ref=e288]:
                  - button [disabled] [ref=e290]
                - button [disabled] [ref=e296]:
                  - button [disabled] [ref=e298]
              - generic [ref=e300]:
                - button [disabled] [ref=e305]:
                  - button [disabled] [ref=e307]
                - button [disabled] [ref=e313]:
                  - button [disabled] [ref=e315]
            - generic [ref=e318]:
              - generic [ref=e319]:
                - button [disabled] [ref=e327]:
                  - generic [ref=e328]: é»˜è®¤å­—体
                - button [disabled] [ref=e339]:
                  - generic [ref=e340]: "12"
                - group [disabled] [ref=e351]:
                  - generic [ref=e352]:
                    - button [disabled] [ref=e353]
                    - button [disabled] [ref=e356]
                - button [disabled] [ref=e364]:
                  - button [disabled] [ref=e366]
                - button [disabled] [ref=e377]:
                  - generic [ref=e378]:
                    - button [disabled] [ref=e379]
                    - generic [ref=e381]: è¡¨æ ¼æ ·å¼
              - generic [ref=e384]:
                - button [disabled] [pressed] [ref=e389]:
                  - button [disabled] [ref=e391]
                - button [disabled] [ref=e397]:
                  - button [disabled] [ref=e399]
                - button [disabled] [ref=e405]:
                  - button [disabled] [ref=e407]
                - button [disabled] [ref=e413]:
                  - button [disabled] [ref=e415]
                - group [disabled] [ref=e424]:
                  - generic [ref=e425]:
                    - button [disabled] [ref=e426]
                    - button [disabled] [ref=e430]
                - group [disabled] [ref=e438]:
                  - generic [ref=e439]:
                    - button [disabled] [ref=e440]
                    - button [disabled] [ref=e444]
                - button [disabled] [ref=e452]:
                  - generic [ref=e453]:
                    - button [disabled] [ref=e454]
                    - generic [ref=e456]: æ¡ä»¶æ ¼å¼
            - button [ref=e468]:
              - button [ref=e470]
              - generic [ref=e474]: å­—体样式
            - generic [ref=e476]:
              - generic [ref=e477]:
                - button [disabled] [ref=e485]:
                  - button [disabled] [ref=e487]
                - button [disabled] [ref=e498]:
                  - button [disabled] [ref=e500]
              - generic [ref=e504]:
                - button [disabled] [ref=e509]:
                  - button [disabled] [ref=e511]
                - button [disabled] [pressed] [ref=e517]:
                  - button [disabled] [ref=e519]
                - button [disabled] [ref=e525]:
                  - button [disabled] [ref=e527]
            - generic [ref=e529]:
              - button [disabled] [ref=e535]:
                - generic [ref=e536]:
                  - button [disabled] [ref=e537]
                  - generic [ref=e539]: æ¢è¡Œ
              - group [disabled] [ref=e548]:
                - generic [ref=e549]:
                  - button [disabled] [ref=e550]
                  - generic [ref=e552]: åˆå¹¶
                  - button [disabled] [ref=e554]
            - button [ref=e564]:
              - button [ref=e566]
              - generic [ref=e570]: å¯¹é½æ–¹å¼
            - generic [ref=e572]:
              - button [disabled] [ref=e581]:
                - generic [ref=e582]: å¸¸è§„
              - generic [ref=e586]:
                - button [disabled] [ref=e591]:
                  - button [disabled] [ref=e593]
                - button [disabled] [ref=e599]:
                  - button [disabled] [ref=e601]
            - button [ref=e612]:
              - button [ref=e614]
              - generic [ref=e618]: æ•°å­—格式
            - group [ref=e629]:
              - generic [ref=e630]:
                - button [ref=e631]
                - button [ref=e634]
              - generic [ref=e635]: ç­›é€‰
            - generic [ref=e636]:
              - generic [ref=e637]:
                - button [disabled] [ref=e645]:
                  - generic [ref=e646]:
                    - button [disabled] [ref=e647]
                    - generic [ref=e649]: å†»ç»“
                - group [disabled] [ref=e659]:
                  - generic [ref=e660]:
                    - button [disabled] [ref=e661]
                    - generic [ref=e663]: æ±‚å’Œ
                    - button [disabled] [ref=e665]
              - generic [ref=e666]:
                - button [disabled] [ref=e674]:
                  - generic [ref=e675]:
                    - button [disabled] [ref=e676]
                    - generic [ref=e678]: æŽ’序
                - button [disabled] [ref=e688]:
                  - generic [ref=e689]:
                    - button [disabled] [ref=e690]
                    - generic [ref=e692]: æ•°æ®
            - button [ref=e704]:
              - button [ref=e706]
              - generic [ref=e710]: æ•°æ®
            - button [disabled] [ref=e720]:
              - button [disabled] [ref=e722]
              - generic [ref=e726]: ä¿æŠ¤
            - button [disabled] [ref=e737]:
              - button [disabled] [ref=e739]
              - generic [ref=e743]: æ’å…¥
            - button [disabled] [ref=e753]:
              - button [disabled] [ref=e755]
              - generic [ref=e759]: å›¾ç‰‡
            - generic [ref=e760]:
              - button [disabled] [ref=e769]:
                - generic [ref=e770]:
                  - button [disabled] [ref=e771]
                  - generic [ref=e773]: å›¾è¡¨
              - button [disabled] [ref=e781]:
                - generic [ref=e782]:
                  - button [disabled] [ref=e783]
                  - generic [ref=e785]: é€è§†è¡¨
            - button [disabled] [ref=e795]:
              - button [disabled] [ref=e797]
              - generic [ref=e801]: æ’å…¥
            - button [disabled] [ref=e812]:
              - button [disabled] [ref=e814]
              - generic [ref=e818]: å¿«æ·å·¥å…·
            - button [disabled] [ref=e825]:
              - button [disabled] [ref=e827]
              - generic [ref=e829]: ç”Ÿæˆå›¾ç‰‡
            - generic [ref=e830]:
              - generic [ref=e831]:
                - button [ref=e836]:
                  - generic [ref=e837]:
                    - button [ref=e838]
                    - generic [ref=e840]: ç”ŸæˆæŸ¥è¯¢
                - button [ref=e845]:
                  - generic [ref=e846]:
                    - button [ref=e847]
                    - generic [ref=e849]: ç”Ÿæˆæ™ºèƒ½è¡¨
              - generic [ref=e850]:
                - button [disabled] [ref=e855]:
                  - generic [ref=e856]:
                    - button [disabled] [ref=e857]
                    - generic [ref=e859]: å›¾ç‰‡è½¬è¡¨æ ¼
                - button [disabled] [ref=e867]:
                  - generic [ref=e868]:
                    - button [disabled] [ref=e869]
                    - generic [ref=e871]: PDF转换
            - button [ref=e883]:
              - button [ref=e885]
              - generic [ref=e889]: å¿«æ·å·¥å…·
            - button [ref=e897]:
              - button [ref=e899]
              - generic [ref=e901]: æ‰“印
            - button [ref=e911]:
              - button [ref=e913]
              - generic [ref=e920]: æ›´å¤š
          - generic [ref=e921]:
            - generic [ref=e922]:
              - generic [ref=e923]:
                - button "撤销" [disabled] [ref=e928]:
                  - button [disabled] [ref=e930]
                - button "重做" [disabled] [ref=e936]:
                  - button [disabled] [ref=e938]
              - generic [ref=e940]:
                - button "格式刷,双击可重复使用" [disabled] [ref=e945]:
                  - button [disabled] [ref=e947]
                - button "清除格式" [disabled] [ref=e953]:
                  - button [disabled] [ref=e955]
            - generic [ref=e958]:
              - generic [ref=e959]:
                - button "默认字体" [disabled] [ref=e967]
                - button "12" [disabled] [ref=e979]
                - group "边框" [disabled] [ref=e991]:
                  - generic [ref=e992]:
                    - button "边框" [disabled] [ref=e993]
                    - button "边框 æ›´å¤šé€‰é¡¹" [disabled] [ref=e996]
                - button "单元格样式" [disabled] [ref=e1004]:
                  - button [disabled] [ref=e1006]
                - button "表格样式" [disabled] [ref=e1017]:
                  - generic [ref=e1018]:
                    - button [disabled] [ref=e1019]
                    - generic [ref=e1021]: è¡¨æ ¼æ ·å¼
              - generic [ref=e1024]:
                - button "加粗" [disabled] [pressed] [ref=e1029]:
                  - button [disabled] [ref=e1031]
                - button "倾斜" [disabled] [ref=e1037]:
                  - button [disabled] [ref=e1039]
                - button "下划线" [disabled] [ref=e1045]:
                  - button [disabled] [ref=e1047]
                - button "删除线" [disabled] [ref=e1053]:
                  - button [disabled] [ref=e1055]
                - group "字体颜色" [disabled] [ref=e1064]:
                  - generic [ref=e1065]:
                    - button "字体颜色" [disabled] [ref=e1066]
                    - button "字体颜色 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1070]
                - group "填充颜色" [disabled] [ref=e1078]:
                  - generic [ref=e1079]:
                    - button "填充颜色" [disabled] [ref=e1080]
                    - button "填充颜色 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1084]
                - button "条件格式" [disabled] [ref=e1092]:
                  - generic [ref=e1093]:
                    - button [disabled] [ref=e1094]
                    - generic [ref=e1096]: æ¡ä»¶æ ¼å¼
            - generic [ref=e1411]:
              - generic [ref=e1412]:
                - button "垂直对齐" [disabled] [ref=e1420]:
                  - button [disabled] [ref=e1422]
                - button "文字方向" [disabled] [ref=e1433]:
                  - button [disabled] [ref=e1435]
              - generic [ref=e1439]:
                - button "左对齐" [disabled] [ref=e1444]:
                  - button [disabled] [ref=e1446]
                - button "居中对齐" [disabled] [pressed] [ref=e1452]:
                  - button [disabled] [ref=e1454]
                - button "右对齐" [disabled] [ref=e1460]:
                  - button [disabled] [ref=e1462]
            - generic [ref=e1464]:
              - button "换行" [disabled] [ref=e1470]:
                - generic [ref=e1471]:
                  - button [disabled] [ref=e1472]
                  - generic [ref=e1474]: æ¢è¡Œ
              - group "合并" [disabled] [ref=e1483]:
                - generic [ref=e1484]:
                  - button "合并" [disabled] [ref=e1485]
                  - generic [ref=e1487]: åˆå¹¶
                  - button "合并 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1489]
            - generic [ref=e1490]:
              - button "常规" [disabled] [ref=e1499]
              - generic [ref=e1504]:
                - button "百分比样式" [disabled] [ref=e1509]:
                  - button [disabled] [ref=e1511]
                - button "千位分隔样式" [disabled] [ref=e1517]:
                  - button [disabled] [ref=e1519]
            - group "筛选" [ref=e1143]:
              - generic [ref=e1144]:
                - button "筛选" [ref=e1145]
                - button "筛选 æ›´å¤šé€‰é¡¹" [ref=e1148]
            - generic [ref=e1521]:
              - generic [ref=e1522]:
                - button "冻结" [disabled] [ref=e1530]:
                  - generic [ref=e1531]:
                    - button [disabled] [ref=e1532]
                    - generic [ref=e1534]: å†»ç»“
                - group "求和" [disabled] [ref=e1544]:
                  - generic [ref=e1545]:
                    - button "求和" [disabled] [ref=e1546]
                    - generic [ref=e1548]: æ±‚å’Œ
                    - button "求和 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1550]
              - generic [ref=e1551]:
                - button "排序" [disabled] [ref=e1559]:
                  - generic [ref=e1560]:
                    - button [disabled] [ref=e1561]
                    - generic [ref=e1563]: æŽ’序
                - button "数据" [disabled] [ref=e1573]:
                  - generic [ref=e1574]:
                    - button [disabled] [ref=e1575]
                    - generic [ref=e1577]: æ•°æ®
            - button "保护" [disabled] [ref=e1589]:
              - button [disabled] [ref=e1591]
            - button "插入" [disabled] [ref=e1605]:
              - button [disabled] [ref=e1607]
            - button "图片" [disabled] [ref=e1621]:
              - button [disabled] [ref=e1623]
            - generic [ref=e1628]:
              - button "图表" [disabled] [ref=e1637]:
                - generic [ref=e1638]:
                  - button [disabled] [ref=e1639]
                  - generic [ref=e1641]: å›¾è¡¨
              - button "透视表" [disabled] [ref=e1649]:
                - generic [ref=e1650]:
                  - button [disabled] [ref=e1651]
                  - generic [ref=e1653]: é€è§†è¡¨
            - button "快捷工具" [disabled] [ref=e1663]:
              - button [disabled] [ref=e1665]
            - button "生成图片" [disabled] [ref=e1676]:
              - button [disabled] [ref=e1678]
            - generic [ref=e1681]:
              - generic [ref=e1682]:
                - button "生成查询" [ref=e1687]:
                  - generic [ref=e1688]:
                    - button [ref=e1689]
                    - generic [ref=e1691]: ç”ŸæˆæŸ¥è¯¢
                - button "生成智能表" [ref=e1696]:
                  - generic [ref=e1697]:
                    - button [ref=e1698]
                    - generic [ref=e1700]: ç”Ÿæˆæ™ºèƒ½è¡¨
              - generic [ref=e1701]:
                - button "图片转表格" [disabled] [ref=e1706]:
                  - generic [ref=e1707]:
                    - button [disabled] [ref=e1708]
                    - generic [ref=e1710]: å›¾ç‰‡è½¬è¡¨æ ¼
                - button "PDF转换" [disabled] [ref=e1718]:
                  - generic [ref=e1719]:
                    - button [disabled] [ref=e1720]
                    - generic [ref=e1722]: PDF转换
            - button "打印" [ref=e1219]:
              - button [ref=e1221]
        - toolbar [ref=e1225]:
          - generic [ref=e1228]:
            - button "查找替换" [ref=e1233]:
              - button [ref=e1235]
            - button "工具栏切换" [ref=e1244]:
              - button [ref=e1246]
    - generic [ref=e105]:
      - generic [ref=e106]:
        - textbox [ref=e107]
        - combobox [ref=e108]:
          - paragraph [ref=e109]
      - combobox [ref=e195]:
        - paragraph
    - toolbar "状态栏" [ref=e1264]:
      - button [ref=e1265]
      - button [ref=e1277]
      - button [ref=e1289]:
        - tablist "工作表" [ref=e1296]:
          - generic [ref=e1298]:
            - tab "进销存重构-NEW" [ref=e1300] [cursor=pointer]
            - tab "银川3级MOM系统" [selected] [ref=e1303] [cursor=pointer]
            - tab "OA问题表" [ref=e1306] [cursor=pointer]
            - tab "宁夏-万通建材" [ref=e1309] [cursor=pointer]
            - tab "浪潮" [ref=e1312] [cursor=pointer]
            - tab "酒泉验收问题" [ref=e1315] [cursor=pointer]
            - tab "湟水峡验收问题表" [ref=e1318] [cursor=pointer]
            - tab "天津—双奇点" [ref=e1321] [cursor=pointer]
            - tab "天津—军泰伟业" [ref=e1324] [cursor=pointer]
            - tab "天津--君歌化工" [ref=e1327] [cursor=pointer]
            - tab "天津—阳光印刷" [ref=e1330] [cursor=pointer]
            - tab "鹤壁—天沐玻璃" [ref=e1333] [cursor=pointer]
            - tab "天津—德瑞斯影视" [ref=e1336] [cursor=pointer]
            - tab "湖南—坤泰化工" [ref=e1339] [cursor=pointer]
            - tab "湖南—鹏创电子" [ref=e1342] [cursor=pointer]
            - tab "宁夏-中盛建材" [ref=e1345] [cursor=pointer]
            - tab "长治—健齿齿科器材" [ref=e1348] [cursor=pointer]
            - tab "长治—安铁熔剂" [ref=e1351] [cursor=pointer]
            - tab "长治-祥雨" [ref=e1354] [cursor=pointer]
            - tab "长治-晋和园" [ref=e1357] [cursor=pointer]
            - tab "河南-鹤壁" [ref=e1360] [cursor=pointer]
          - generic [ref=e1362]:
            - generic [ref=e1365]:
              - button [disabled]
            - button [ref=e1369]
      - button
      - button "高亮所在行列" [ref=e1370]
      - button [ref=e1382]
      - button "全屏查看 ç¼©å°,Ctrl+0可恢复至100% æ”¾å¤§,Ctrl+0可恢复至100%" [ref=e1387]:
        - generic [ref=e1392]:
          - generic "全屏查看" [ref=e1396]
          - generic "缩小,Ctrl+0可恢复至100%" [ref=e1400]
          - combobox [ref=e1404]:
            - generic [ref=e1405]: 100%
          - generic "放大,Ctrl+0可恢复至100%" [ref=e1410]
  - textbox [ref=e193]
  - generic [ref=e1732]:
    - generic [ref=e1733]: è¯·é€‰æ‹©ç™»å½•方式
    - generic [ref=e1737]:
      - generic [ref=e1738]:
        - tablist [ref=e1740] [cursor=pointer]:
          - tab "微信登录" [selected] [ref=e1741]
          - tab "QQ登录" [ref=e1743]
        - tabpanel [ref=e1746]:
          - generic [ref=e1747]: å¼€å¯å¿«æ·ç™»å½•
          - generic [ref=e1749]:
            - iframe [ref=e1753]:
              - generic [ref=f3e1]:
                - alert [ref=f3e2]:
                  - paragraph [ref=f3e4]: å·²å…è®¸
                - alert [ref=f3e5]:
                  - paragraph [ref=f3e7]: å·²æ‹’绝
                - alert [ref=f3e8]:
                  - paragraph [ref=f3e10]: å·²æ‹’绝使用你的微信身份运行
                - alert [ref=f3e11]:
                  - paragraph [ref=f3e14]: ç³»ç»Ÿé”™è¯¯ï¼Œè¯·åˆ·æ–°é‡è¯•
                - alert [ref=f3e15]:
                  - paragraph [ref=f3e18]: æ­¤åº”用仅支持扫一扫登录
                - alert [ref=f3e19]:
                  - paragraph [ref=f3e21]: ç™»å½•è¶…æ—¶
                - alert [ref=f3e22]:
                  - paragraph [ref=f3e24]: æ­£åœ¨åŠ è½½
            - button "立即登录" [ref=e1757] [cursor=pointer]
            - generic [ref=e1759]:
              - generic [ref=e1760]: å…¶ä»–账号登录
              - generic [ref=e1761]:
                - generic [ref=e1762] [cursor=pointer]: æ‰‹æœºå·
                - generic [ref=e1767] [cursor=pointer]: ä¼ä¸šå¾®ä¿¡
                - generic [ref=e1772] [cursor=pointer]: SSO登录
                - generic [ref=e1777] [cursor=pointer]: åˆ›å»ºç»„织
      - generic [ref=e1786]:
        - checkbox "我已阅读并接受腾讯文档的 æœåŠ¡åè®® å’Œ éšç§æ”¿ç­–" [ref=e1787]
        - generic [ref=e1789]: æˆ‘已阅读并接受腾讯文档的 æœåŠ¡åè®® å’Œ éšç§æ”¿ç­–
.playwright-mcp/page-2026-07-21T07-09-59-810Z.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,416 @@
- generic [ref=e1]:
  - generic [ref=e197]:
    - toolbar "titlebar" [ref=e198]:
      - generic [ref=e205]: ä¸­å°ä¼ä¸šæ”¹é€ bug修改列表
      - button "只能查看" [ref=e219]
      - img "breadcrumb" [ref=e236]
      - generic [ref=e246]:
        - img "头像" [ref=e249]
        - img "头像" [ref=e254]
        - img "头像" [ref=e1727]
      - button "登录腾讯文档" [active] [ref=e261]
    - toolbar "Toolbar" [ref=e267]:
      - tablist [ref=e269]:
        - tab "开始" [selected] [ref=e270]
        - tab "插入" [ref=e271]
        - tab "数据" [ref=e272]
        - tab "公式" [ref=e273]
        - tab "协作" [ref=e274]
        - tab "视图" [ref=e275]
        - tab "效率工具" [ref=e276]
        - tab "会员专享" [ref=e277]
      - tabpanel [ref=e279]:
        - toolbar "开始" [ref=e280]:
          - generic [ref=e281]:
            - generic [ref=e282]:
              - generic [ref=e283]:
                - button [disabled] [ref=e288]:
                  - button [disabled] [ref=e290]
                - button [disabled] [ref=e296]:
                  - button [disabled] [ref=e298]
              - generic [ref=e300]:
                - button [disabled] [ref=e305]:
                  - button [disabled] [ref=e307]
                - button [disabled] [ref=e313]:
                  - button [disabled] [ref=e315]
            - generic [ref=e318]:
              - generic [ref=e319]:
                - button [disabled] [ref=e327]:
                  - generic [ref=e328]: é»˜è®¤å­—体
                - button [disabled] [ref=e339]:
                  - generic [ref=e340]: "12"
                - group [disabled] [ref=e351]:
                  - generic [ref=e352]:
                    - button [disabled] [ref=e353]
                    - button [disabled] [ref=e356]
                - button [disabled] [ref=e364]:
                  - button [disabled] [ref=e366]
                - button [disabled] [ref=e377]:
                  - generic [ref=e378]:
                    - button [disabled] [ref=e379]
                    - generic [ref=e381]: è¡¨æ ¼æ ·å¼
              - generic [ref=e384]:
                - button [disabled] [pressed] [ref=e389]:
                  - button [disabled] [ref=e391]
                - button [disabled] [ref=e397]:
                  - button [disabled] [ref=e399]
                - button [disabled] [ref=e405]:
                  - button [disabled] [ref=e407]
                - button [disabled] [ref=e413]:
                  - button [disabled] [ref=e415]
                - group [disabled] [ref=e424]:
                  - generic [ref=e425]:
                    - button [disabled] [ref=e426]
                    - button [disabled] [ref=e430]
                - group [disabled] [ref=e438]:
                  - generic [ref=e439]:
                    - button [disabled] [ref=e440]
                    - button [disabled] [ref=e444]
                - button [disabled] [ref=e452]:
                  - generic [ref=e453]:
                    - button [disabled] [ref=e454]
                    - generic [ref=e456]: æ¡ä»¶æ ¼å¼
            - button [ref=e468]:
              - button [ref=e470]
              - generic [ref=e474]: å­—体样式
            - generic [ref=e476]:
              - generic [ref=e477]:
                - button [disabled] [ref=e485]:
                  - button [disabled] [ref=e487]
                - button [disabled] [ref=e498]:
                  - button [disabled] [ref=e500]
              - generic [ref=e504]:
                - button [disabled] [ref=e509]:
                  - button [disabled] [ref=e511]
                - button [disabled] [pressed] [ref=e517]:
                  - button [disabled] [ref=e519]
                - button [disabled] [ref=e525]:
                  - button [disabled] [ref=e527]
            - generic [ref=e529]:
              - button [disabled] [ref=e535]:
                - generic [ref=e536]:
                  - button [disabled] [ref=e537]
                  - generic [ref=e539]: æ¢è¡Œ
              - group [disabled] [ref=e548]:
                - generic [ref=e549]:
                  - button [disabled] [ref=e550]
                  - generic [ref=e552]: åˆå¹¶
                  - button [disabled] [ref=e554]
            - button [ref=e564]:
              - button [ref=e566]
              - generic [ref=e570]: å¯¹é½æ–¹å¼
            - generic [ref=e572]:
              - button [disabled] [ref=e581]:
                - generic [ref=e582]: å¸¸è§„
              - generic [ref=e586]:
                - button [disabled] [ref=e591]:
                  - button [disabled] [ref=e593]
                - button [disabled] [ref=e599]:
                  - button [disabled] [ref=e601]
            - button [ref=e612]:
              - button [ref=e614]
              - generic [ref=e618]: æ•°å­—格式
            - group [ref=e629]:
              - generic [ref=e630]:
                - button [ref=e631]
                - button [ref=e634]
              - generic [ref=e635]: ç­›é€‰
            - generic [ref=e636]:
              - generic [ref=e637]:
                - button [disabled] [ref=e645]:
                  - generic [ref=e646]:
                    - button [disabled] [ref=e647]
                    - generic [ref=e649]: å†»ç»“
                - group [disabled] [ref=e659]:
                  - generic [ref=e660]:
                    - button [disabled] [ref=e661]
                    - generic [ref=e663]: æ±‚å’Œ
                    - button [disabled] [ref=e665]
              - generic [ref=e666]:
                - button [disabled] [ref=e674]:
                  - generic [ref=e675]:
                    - button [disabled] [ref=e676]
                    - generic [ref=e678]: æŽ’序
                - button [disabled] [ref=e688]:
                  - generic [ref=e689]:
                    - button [disabled] [ref=e690]
                    - generic [ref=e692]: æ•°æ®
            - button [ref=e704]:
              - button [ref=e706]
              - generic [ref=e710]: æ•°æ®
            - button [disabled] [ref=e720]:
              - button [disabled] [ref=e722]
              - generic [ref=e726]: ä¿æŠ¤
            - button [disabled] [ref=e737]:
              - button [disabled] [ref=e739]
              - generic [ref=e743]: æ’å…¥
            - button [disabled] [ref=e753]:
              - button [disabled] [ref=e755]
              - generic [ref=e759]: å›¾ç‰‡
            - generic [ref=e760]:
              - button [disabled] [ref=e769]:
                - generic [ref=e770]:
                  - button [disabled] [ref=e771]
                  - generic [ref=e773]: å›¾è¡¨
              - button [disabled] [ref=e781]:
                - generic [ref=e782]:
                  - button [disabled] [ref=e783]
                  - generic [ref=e785]: é€è§†è¡¨
            - button [disabled] [ref=e795]:
              - button [disabled] [ref=e797]
              - generic [ref=e801]: æ’å…¥
            - button [disabled] [ref=e812]:
              - button [disabled] [ref=e814]
              - generic [ref=e818]: å¿«æ·å·¥å…·
            - button [disabled] [ref=e825]:
              - button [disabled] [ref=e827]
              - generic [ref=e829]: ç”Ÿæˆå›¾ç‰‡
            - generic [ref=e830]:
              - generic [ref=e831]:
                - button [ref=e836]:
                  - generic [ref=e837]:
                    - button [ref=e838]
                    - generic [ref=e840]: ç”ŸæˆæŸ¥è¯¢
                - button [ref=e845]:
                  - generic [ref=e846]:
                    - button [ref=e847]
                    - generic [ref=e849]: ç”Ÿæˆæ™ºèƒ½è¡¨
              - generic [ref=e850]:
                - button [disabled] [ref=e855]:
                  - generic [ref=e856]:
                    - button [disabled] [ref=e857]
                    - generic [ref=e859]: å›¾ç‰‡è½¬è¡¨æ ¼
                - button [disabled] [ref=e867]:
                  - generic [ref=e868]:
                    - button [disabled] [ref=e869]
                    - generic [ref=e871]: PDF转换
            - button [ref=e883]:
              - button [ref=e885]
              - generic [ref=e889]: å¿«æ·å·¥å…·
            - button [ref=e897]:
              - button [ref=e899]
              - generic [ref=e901]: æ‰“印
            - button [ref=e911]:
              - button [ref=e913]
              - generic [ref=e920]: æ›´å¤š
          - generic [ref=e921]:
            - generic [ref=e922]:
              - generic [ref=e923]:
                - button "撤销" [disabled] [ref=e928]:
                  - button [disabled] [ref=e930]
                - button "重做" [disabled] [ref=e936]:
                  - button [disabled] [ref=e938]
              - generic [ref=e940]:
                - button "格式刷,双击可重复使用" [disabled] [ref=e945]:
                  - button [disabled] [ref=e947]
                - button "清除格式" [disabled] [ref=e953]:
                  - button [disabled] [ref=e955]
            - generic [ref=e958]:
              - generic [ref=e959]:
                - button "默认字体" [disabled] [ref=e967]
                - button "12" [disabled] [ref=e979]
                - group "边框" [disabled] [ref=e991]:
                  - generic [ref=e992]:
                    - button "边框" [disabled] [ref=e993]
                    - button "边框 æ›´å¤šé€‰é¡¹" [disabled] [ref=e996]
                - button "单元格样式" [disabled] [ref=e1004]:
                  - button [disabled] [ref=e1006]
                - button "表格样式" [disabled] [ref=e1017]:
                  - generic [ref=e1018]:
                    - button [disabled] [ref=e1019]
                    - generic [ref=e1021]: è¡¨æ ¼æ ·å¼
              - generic [ref=e1024]:
                - button "加粗" [disabled] [pressed] [ref=e1029]:
                  - button [disabled] [ref=e1031]
                - button "倾斜" [disabled] [ref=e1037]:
                  - button [disabled] [ref=e1039]
                - button "下划线" [disabled] [ref=e1045]:
                  - button [disabled] [ref=e1047]
                - button "删除线" [disabled] [ref=e1053]:
                  - button [disabled] [ref=e1055]
                - group "字体颜色" [disabled] [ref=e1064]:
                  - generic [ref=e1065]:
                    - button "字体颜色" [disabled] [ref=e1066]
                    - button "字体颜色 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1070]
                - group "填充颜色" [disabled] [ref=e1078]:
                  - generic [ref=e1079]:
                    - button "填充颜色" [disabled] [ref=e1080]
                    - button "填充颜色 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1084]
                - button "条件格式" [disabled] [ref=e1092]:
                  - generic [ref=e1093]:
                    - button [disabled] [ref=e1094]
                    - generic [ref=e1096]: æ¡ä»¶æ ¼å¼
            - generic [ref=e1411]:
              - generic [ref=e1412]:
                - button "垂直对齐" [disabled] [ref=e1420]:
                  - button [disabled] [ref=e1422]
                - button "文字方向" [disabled] [ref=e1433]:
                  - button [disabled] [ref=e1435]
              - generic [ref=e1439]:
                - button "左对齐" [disabled] [ref=e1444]:
                  - button [disabled] [ref=e1446]
                - button "居中对齐" [disabled] [pressed] [ref=e1452]:
                  - button [disabled] [ref=e1454]
                - button "右对齐" [disabled] [ref=e1460]:
                  - button [disabled] [ref=e1462]
            - generic [ref=e1464]:
              - button "换行" [disabled] [ref=e1470]:
                - generic [ref=e1471]:
                  - button [disabled] [ref=e1472]
                  - generic [ref=e1474]: æ¢è¡Œ
              - group "合并" [disabled] [ref=e1483]:
                - generic [ref=e1484]:
                  - button "合并" [disabled] [ref=e1485]
                  - generic [ref=e1487]: åˆå¹¶
                  - button "合并 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1489]
            - generic [ref=e1490]:
              - button "常规" [disabled] [ref=e1499]
              - generic [ref=e1504]:
                - button "百分比样式" [disabled] [ref=e1509]:
                  - button [disabled] [ref=e1511]
                - button "千位分隔样式" [disabled] [ref=e1517]:
                  - button [disabled] [ref=e1519]
            - group "筛选" [ref=e1143]:
              - generic [ref=e1144]:
                - button "筛选" [ref=e1145]
                - button "筛选 æ›´å¤šé€‰é¡¹" [ref=e1148]
            - generic [ref=e1521]:
              - generic [ref=e1522]:
                - button "冻结" [disabled] [ref=e1530]:
                  - generic [ref=e1531]:
                    - button [disabled] [ref=e1532]
                    - generic [ref=e1534]: å†»ç»“
                - group "求和" [disabled] [ref=e1544]:
                  - generic [ref=e1545]:
                    - button "求和" [disabled] [ref=e1546]
                    - generic [ref=e1548]: æ±‚å’Œ
                    - button "求和 æ›´å¤šé€‰é¡¹" [disabled] [ref=e1550]
              - generic [ref=e1551]:
                - button "排序" [disabled] [ref=e1559]:
                  - generic [ref=e1560]:
                    - button [disabled] [ref=e1561]
                    - generic [ref=e1563]: æŽ’序
                - button "数据" [disabled] [ref=e1573]:
                  - generic [ref=e1574]:
                    - button [disabled] [ref=e1575]
                    - generic [ref=e1577]: æ•°æ®
            - button "保护" [disabled] [ref=e1589]:
              - button [disabled] [ref=e1591]
            - button "插入" [disabled] [ref=e1605]:
              - button [disabled] [ref=e1607]
            - button "图片" [disabled] [ref=e1621]:
              - button [disabled] [ref=e1623]
            - generic [ref=e1628]:
              - button "图表" [disabled] [ref=e1637]:
                - generic [ref=e1638]:
                  - button [disabled] [ref=e1639]
                  - generic [ref=e1641]: å›¾è¡¨
              - button "透视表" [disabled] [ref=e1649]:
                - generic [ref=e1650]:
                  - button [disabled] [ref=e1651]
                  - generic [ref=e1653]: é€è§†è¡¨
            - button "快捷工具" [disabled] [ref=e1663]:
              - button [disabled] [ref=e1665]
            - button "生成图片" [disabled] [ref=e1676]:
              - button [disabled] [ref=e1678]
            - generic [ref=e1681]:
              - generic [ref=e1682]:
                - button "生成查询" [ref=e1687]:
                  - generic [ref=e1688]:
                    - button [ref=e1689]
                    - generic [ref=e1691]: ç”ŸæˆæŸ¥è¯¢
                - button "生成智能表" [ref=e1696]:
                  - generic [ref=e1697]:
                    - button [ref=e1698]
                    - generic [ref=e1700]: ç”Ÿæˆæ™ºèƒ½è¡¨
              - generic [ref=e1701]:
                - button "图片转表格" [disabled] [ref=e1706]:
                  - generic [ref=e1707]:
                    - button [disabled] [ref=e1708]
                    - generic [ref=e1710]: å›¾ç‰‡è½¬è¡¨æ ¼
                - button "PDF转换" [disabled] [ref=e1718]:
                  - generic [ref=e1719]:
                    - button [disabled] [ref=e1720]
                    - generic [ref=e1722]: PDF转换
            - button "打印" [ref=e1219]:
              - button [ref=e1221]
        - toolbar [ref=e1225]:
          - generic [ref=e1228]:
            - button "查找替换" [ref=e1233]:
              - button [ref=e1235]
            - button "工具栏切换" [ref=e1244]:
              - button [ref=e1246]
    - generic [ref=e105]:
      - generic [ref=e106]:
        - textbox [ref=e107]
        - combobox [ref=e108]:
          - paragraph [ref=e109]
      - combobox [ref=e195]:
        - paragraph
    - toolbar "状态栏" [ref=e1264]:
      - button [ref=e1265]
      - button [ref=e1277]
      - button [ref=e1289]:
        - tablist "工作表" [ref=e1296]:
          - generic [ref=e1298]:
            - tab "进销存重构-NEW" [ref=e1300] [cursor=pointer]
            - tab "银川3级MOM系统" [selected] [ref=e1303] [cursor=pointer]
            - tab "OA问题表" [ref=e1306] [cursor=pointer]
            - tab "宁夏-万通建材" [ref=e1309] [cursor=pointer]
            - tab "浪潮" [ref=e1312] [cursor=pointer]
            - tab "酒泉验收问题" [ref=e1315] [cursor=pointer]
            - tab "湟水峡验收问题表" [ref=e1318] [cursor=pointer]
            - tab "天津—双奇点" [ref=e1321] [cursor=pointer]
            - tab "天津—军泰伟业" [ref=e1324] [cursor=pointer]
            - tab "天津--君歌化工" [ref=e1327] [cursor=pointer]
            - tab "天津—阳光印刷" [ref=e1330] [cursor=pointer]
            - tab "鹤壁—天沐玻璃" [ref=e1333] [cursor=pointer]
            - tab "天津—德瑞斯影视" [ref=e1336] [cursor=pointer]
            - tab "湖南—坤泰化工" [ref=e1339] [cursor=pointer]
            - tab "湖南—鹏创电子" [ref=e1342] [cursor=pointer]
            - tab "宁夏-中盛建材" [ref=e1345] [cursor=pointer]
            - tab "长治—健齿齿科器材" [ref=e1348] [cursor=pointer]
            - tab "长治—安铁熔剂" [ref=e1351] [cursor=pointer]
            - tab "长治-祥雨" [ref=e1354] [cursor=pointer]
            - tab "长治-晋和园" [ref=e1357] [cursor=pointer]
            - tab "河南-鹤壁" [ref=e1360] [cursor=pointer]
          - generic [ref=e1362]:
            - generic [ref=e1365]:
              - button [disabled]
            - button [ref=e1369]
      - button
      - button "高亮所在行列" [ref=e1370]
      - button [ref=e1382]
      - button "全屏查看 ç¼©å°,Ctrl+0可恢复至100% æ”¾å¤§,Ctrl+0可恢复至100%" [ref=e1387]:
        - generic [ref=e1392]:
          - generic "全屏查看" [ref=e1396]
          - generic "缩小,Ctrl+0可恢复至100%" [ref=e1400]
          - combobox [ref=e1404]:
            - generic [ref=e1405]: 100%
          - generic "放大,Ctrl+0可恢复至100%" [ref=e1410]
  - textbox [ref=e193]
  - generic [ref=e1732]:
    - generic [ref=e1733]: è¯·é€‰æ‹©ç™»å½•方式
    - generic [ref=e1737]:
      - generic [ref=e1738]:
        - tablist [ref=e1740] [cursor=pointer]:
          - tab "微信登录" [selected] [ref=e1741]
          - tab "QQ登录" [ref=e1743]
        - tabpanel [ref=e1746]:
          - generic [ref=e1747]: å¼€å¯å¿«æ·ç™»å½•
          - generic [ref=e1749]:
            - iframe [ref=e1753]:
              - generic [ref=f3e34]:
                - paragraph [ref=f3e35]: ä½¿ç”¨å¾®ä¿¡æ‰«ä¸€æ‰«ç™»å½•
                - paragraph [ref=f3e36]: â€œè…¾è®¯æ–‡æ¡£â€
            - button "立即登录" [ref=e1757] [cursor=pointer]
            - generic [ref=e1759]:
              - generic [ref=e1760]: å…¶ä»–账号登录
              - generic [ref=e1761]:
                - generic [ref=e1762] [cursor=pointer]: æ‰‹æœºå·
                - generic [ref=e1767] [cursor=pointer]: ä¼ä¸šå¾®ä¿¡
                - generic [ref=e1772] [cursor=pointer]: SSO登录
                - generic [ref=e1777] [cursor=pointer]: åˆ›å»ºç»„织
      - generic [ref=e1786]:
        - checkbox "我已阅读并接受腾讯文档的 æœåŠ¡åè®® å’Œ éšç§æ”¿ç­–" [ref=e1787]
        - generic [ref=e1789]: æˆ‘已阅读并接受腾讯文档的 æœåŠ¡åè®® å’Œ éšç§æ”¿ç­–
.playwright-mcp/page-2026-07-21T07-11-18-147Z.png
.playwright-mcp/page-2026-07-21T07-13-43-647Z.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,84 @@
- generic [active] [ref=f4e1]:
  - generic [ref=f4e3]:
    - generic [ref=f4e4]:
      - generic [ref=f4e8]: ä¸­å°ä¼ä¸šæ”¹é€ bug修改列表
      - button "登录腾讯文档" [ref=f4e12]
    - generic [ref=f4e13]:
      - generic [ref=f4e14]:
        - generic [ref=f4e15]: å¼€å§‹
        - generic [ref=f4e16]: æ’å…¥
        - generic [ref=f4e17]: æ•°æ®
        - generic [ref=f4e18]: å…¬å¼
        - generic [ref=f4e19]: åä½œ
        - generic [ref=f4e20]: è§†å›¾
      - generic [ref=f4e21]:
        - generic [ref=f4e27]:
          - generic [ref=f4e28]: é»˜è®¤å­—体
          - generic [ref=f4e30]: "10"
        - generic [ref=f4e42]: è¡¨æ ¼æ ·å¼
        - generic [ref=f4e44]: æ¡ä»¶æ ¼å¼
        - generic [ref=f4e53]: æ¢è¡Œ
        - generic [ref=f4e55]: åˆå¹¶
        - generic [ref=f4e58]: å¸¸è§„
        - generic [ref=f4e64]: ç­›é€‰
        - generic [ref=f4e66]: å†»ç»“
        - generic [ref=f4e68]: æŽ’序
        - generic [ref=f4e70]: æ±‚å’Œ
        - generic [ref=f4e72]: æ•°æ®
        - generic [ref=f4e74]: ä¿æŠ¤
        - generic [ref=f4e77]: æ’å…¥
        - generic [ref=f4e79]: å›¾ç‰‡
        - generic [ref=f4e81]: å›¾è¡¨
        - generic [ref=f4e83]: é€è§†è¡¨
        - generic [ref=f4e86]: å¿«æ·å·¥å…·
        - generic [ref=f4e88]: ç”Ÿæˆå›¾ç‰‡
        - generic [ref=f4e90]: å…³è”收集表
        - generic [ref=f4e92]: å›¾ç‰‡è½¬è¡¨æ ¼
        - generic [ref=f4e94]: ç”Ÿæˆæ™ºèƒ½è¡¨
        - generic [ref=f4e96]: PDF转换
        - generic [ref=f4e99]: æ‰“印
  - generic [ref=f4e105]: A1
  - generic [ref=f4e122]:
    - generic [ref=f4e125]:
      - link "进销存重构-NEW" [ref=f4e126]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=fs73ok
      - generic [ref=f4e129]: é“¶å·3级MOM系统
      - link "OA问题表" [ref=f4e132]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=f64daq
      - link "宁夏-万通建材" [ref=f4e135]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=ept4mh
      - link "浪潮" [ref=f4e138]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=spyhmp
      - link "酒泉验收问题" [ref=f4e141]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=x00zho
      - link "湟水峡验收问题表" [ref=f4e144]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=h625nh
      - link "天津—双奇点" [ref=f4e147]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=BB08J2
      - link "天津—军泰伟业" [ref=f4e150]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=lspijq
      - link "天津--君歌化工" [ref=f4e153]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=mq8fx1
      - link "天津—阳光印刷" [ref=f4e156]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=0l2zs6
      - link "鹤壁—天沐玻璃" [ref=f4e159]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=iwl1zq
      - link "天津—德瑞斯影视" [ref=f4e162]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=uw3s1s
      - link "湖南—坤泰化工" [ref=f4e165]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=lhgufk
      - link "湖南—鹏创电子" [ref=f4e168]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=qr1hgf
      - link "宁夏-中盛建材" [ref=f4e171]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=glpee8
      - link "长治—健齿齿科器材" [ref=f4e174]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=f6oijb
      - link "长治—安铁熔剂" [ref=f4e177]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=27v3ks
      - link "长治-祥雨" [ref=f4e180]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=51i5b3
      - link "长治-晋和园" [ref=f4e183]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=bo7qyg
      - link "河南-鹤壁" [ref=f4e186]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=mkpiqo
    - generic [ref=f4e191]: 100%
.playwright-mcp/page-2026-07-21T07-14-06-572Z.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,394 @@
- generic [ref=f4e1]:
  - generic [ref=f4e194]:
    - toolbar "titlebar" [ref=f4e195]:
      - generic [ref=f4e202]: ä¸­å°ä¼ä¸šæ”¹é€ bug修改列表
      - button "只能查看" [ref=f4e216]
      - img "breadcrumb" [ref=f4e233]
      - generic [ref=f4e243]:
        - img "头像" [ref=f4e246]
        - img "头像" [ref=f4e251]
        - img "头像" [ref=f4e256]
      - button "登录腾讯文档" [ref=f4e263]
    - toolbar "Toolbar" [ref=f4e269]:
      - tablist [ref=f4e271]:
        - tab "开始" [selected] [ref=f4e272]
        - tab "插入" [ref=f4e273]
        - tab "数据" [ref=f4e274]
        - tab "公式" [ref=f4e275]
        - tab "协作" [ref=f4e276]
        - tab "视图" [ref=f4e277]
        - tab "效率工具" [ref=f4e278]
        - tab "会员专享" [ref=f4e279]
      - tabpanel [ref=f4e281]:
        - toolbar "开始" [ref=f4e282]:
          - generic [ref=f4e283]:
            - generic [ref=f4e284]:
              - generic [ref=f4e285]:
                - button [disabled] [ref=f4e290]:
                  - button [disabled] [ref=f4e292]
                - button [disabled] [ref=f4e298]:
                  - button [disabled] [ref=f4e300]
              - generic [ref=f4e302]:
                - button [disabled] [ref=f4e307]:
                  - button [disabled] [ref=f4e309]
                - button [disabled] [ref=f4e315]:
                  - button [disabled] [ref=f4e317]
            - generic [ref=f4e320]:
              - generic [ref=f4e321]:
                - button [disabled] [ref=f4e329]:
                  - generic [ref=f4e330]: é»˜è®¤å­—体
                - button [disabled] [ref=f4e341]:
                  - generic [ref=f4e342]: "12"
                - group [disabled] [ref=f4e353]:
                  - generic [ref=f4e354]:
                    - button [disabled] [ref=f4e355]
                    - button [disabled] [ref=f4e358]
                - button [disabled] [ref=f4e366]:
                  - button [disabled] [ref=f4e368]
                - button [disabled] [ref=f4e379]:
                  - generic [ref=f4e380]:
                    - button [disabled] [ref=f4e381]
                    - generic [ref=f4e383]: è¡¨æ ¼æ ·å¼
              - generic [ref=f4e386]:
                - button [disabled] [pressed] [ref=f4e391]:
                  - button [disabled] [ref=f4e393]
                - button [disabled] [ref=f4e399]:
                  - button [disabled] [ref=f4e401]
                - button [disabled] [ref=f4e407]:
                  - button [disabled] [ref=f4e409]
                - button [disabled] [ref=f4e415]:
                  - button [disabled] [ref=f4e417]
                - group [disabled] [ref=f4e426]:
                  - generic [ref=f4e427]:
                    - button [disabled] [ref=f4e428]
                    - button [disabled] [ref=f4e432]
                - group [disabled] [ref=f4e440]:
                  - generic [ref=f4e441]:
                    - button [disabled] [ref=f4e442]
                    - button [disabled] [ref=f4e446]
                - button [disabled] [ref=f4e454]:
                  - generic [ref=f4e455]:
                    - button [disabled] [ref=f4e456]
                    - generic [ref=f4e458]: æ¡ä»¶æ ¼å¼
            - button [ref=f4e470]:
              - button [ref=f4e472]
              - generic [ref=f4e476]: å­—体样式
            - generic [ref=f4e478]:
              - generic [ref=f4e479]:
                - button [disabled] [ref=f4e487]:
                  - button [disabled] [ref=f4e489]
                - button [disabled] [ref=f4e500]:
                  - button [disabled] [ref=f4e502]
              - generic [ref=f4e506]:
                - button [disabled] [ref=f4e511]:
                  - button [disabled] [ref=f4e513]
                - button [disabled] [pressed] [ref=f4e519]:
                  - button [disabled] [ref=f4e521]
                - button [disabled] [ref=f4e527]:
                  - button [disabled] [ref=f4e529]
            - generic [ref=f4e531]:
              - button [disabled] [ref=f4e537]:
                - generic [ref=f4e538]:
                  - button [disabled] [ref=f4e539]
                  - generic [ref=f4e541]: æ¢è¡Œ
              - group [disabled] [ref=f4e550]:
                - generic [ref=f4e551]:
                  - button [disabled] [ref=f4e552]
                  - generic [ref=f4e554]: åˆå¹¶
                  - button [disabled] [ref=f4e556]
            - button [ref=f4e566]:
              - button [ref=f4e568]
              - generic [ref=f4e572]: å¯¹é½æ–¹å¼
            - generic [ref=f4e574]:
              - button [disabled] [ref=f4e583]:
                - generic [ref=f4e584]: å¸¸è§„
              - generic [ref=f4e588]:
                - button [disabled] [ref=f4e593]:
                  - button [disabled] [ref=f4e595]
                - button [disabled] [ref=f4e601]:
                  - button [disabled] [ref=f4e603]
            - button [ref=f4e614]:
              - button [ref=f4e616]
              - generic [ref=f4e620]: æ•°å­—格式
            - group [ref=f4e631]:
              - generic [ref=f4e632]:
                - button [ref=f4e633]
                - button [ref=f4e636]
              - generic [ref=f4e637]: ç­›é€‰
            - generic [ref=f4e638]:
              - generic [ref=f4e639]:
                - button [disabled] [ref=f4e647]:
                  - generic [ref=f4e648]:
                    - button [disabled] [ref=f4e649]
                    - generic [ref=f4e651]: å†»ç»“
                - group [disabled] [ref=f4e661]:
                  - generic [ref=f4e662]:
                    - button [disabled] [ref=f4e663]
                    - generic [ref=f4e665]: æ±‚å’Œ
                    - button [disabled] [ref=f4e667]
              - generic [ref=f4e668]:
                - button [disabled] [ref=f4e676]:
                  - generic [ref=f4e677]:
                    - button [disabled] [ref=f4e678]
                    - generic [ref=f4e680]: æŽ’序
                - button [disabled] [ref=f4e690]:
                  - generic [ref=f4e691]:
                    - button [disabled] [ref=f4e692]
                    - generic [ref=f4e694]: æ•°æ®
            - button [ref=f4e706]:
              - button [ref=f4e708]
              - generic [ref=f4e712]: æ•°æ®
            - button [disabled] [ref=f4e722]:
              - button [disabled] [ref=f4e724]
              - generic [ref=f4e728]: ä¿æŠ¤
            - button [disabled] [ref=f4e739]:
              - button [disabled] [ref=f4e741]
              - generic [ref=f4e745]: æ’å…¥
            - button [disabled] [ref=f4e755]:
              - button [disabled] [ref=f4e757]
              - generic [ref=f4e761]: å›¾ç‰‡
            - generic [ref=f4e762]:
              - button [disabled] [ref=f4e771]:
                - generic [ref=f4e772]:
                  - button [disabled] [ref=f4e773]
                  - generic [ref=f4e775]: å›¾è¡¨
              - button [disabled] [ref=f4e783]:
                - generic [ref=f4e784]:
                  - button [disabled] [ref=f4e785]
                  - generic [ref=f4e787]: é€è§†è¡¨
            - button [disabled] [ref=f4e797]:
              - button [disabled] [ref=f4e799]
              - generic [ref=f4e803]: æ’å…¥
            - button [disabled] [ref=f4e814]:
              - button [disabled] [ref=f4e816]
              - generic [ref=f4e820]: å¿«æ·å·¥å…·
            - button [disabled] [ref=f4e827]:
              - button [disabled] [ref=f4e829]
              - generic [ref=f4e831]: ç”Ÿæˆå›¾ç‰‡
            - generic [ref=f4e832]:
              - generic [ref=f4e833]:
                - button [ref=f4e838]:
                  - generic [ref=f4e839]:
                    - button [ref=f4e840]
                    - generic [ref=f4e842]: ç”ŸæˆæŸ¥è¯¢
                - button [ref=f4e847]:
                  - generic [ref=f4e848]:
                    - button [ref=f4e849]
                    - generic [ref=f4e851]: ç”Ÿæˆæ™ºèƒ½è¡¨
              - generic [ref=f4e852]:
                - button [disabled] [ref=f4e857]:
                  - generic [ref=f4e858]:
                    - button [disabled] [ref=f4e859]
                    - generic [ref=f4e861]: å›¾ç‰‡è½¬è¡¨æ ¼
                - button [disabled] [ref=f4e869]:
                  - generic [ref=f4e870]:
                    - button [disabled] [ref=f4e871]
                    - generic [ref=f4e873]: PDF转换
            - button [ref=f4e885]:
              - button [ref=f4e887]
              - generic [ref=f4e891]: å¿«æ·å·¥å…·
            - button [ref=f4e899]:
              - button [ref=f4e901]
              - generic [ref=f4e903]: æ‰“印
            - button [ref=f4e913]:
              - button [ref=f4e915]
              - generic [ref=f4e922]: æ›´å¤š
          - generic [ref=f4e923]:
            - generic [ref=f4e924]:
              - generic [ref=f4e925]:
                - button "撤销" [disabled] [ref=f4e930]:
                  - button [disabled] [ref=f4e932]
                - button "重做" [disabled] [ref=f4e938]:
                  - button [disabled] [ref=f4e940]
              - generic [ref=f4e942]:
                - button "格式刷,双击可重复使用" [disabled] [ref=f4e947]:
                  - button [disabled] [ref=f4e949]
                - button "清除格式" [disabled] [ref=f4e955]:
                  - button [disabled] [ref=f4e957]
            - generic [ref=f4e960]:
              - generic [ref=f4e961]:
                - button "默认字体" [disabled] [ref=f4e969]
                - button "12" [disabled] [ref=f4e981]
                - group "边框" [disabled] [ref=f4e993]:
                  - generic [ref=f4e994]:
                    - button "边框" [disabled] [ref=f4e995]
                    - button "边框 æ›´å¤šé€‰é¡¹" [disabled] [ref=f4e998]
                - button "单元格样式" [disabled] [ref=f4e1006]:
                  - button [disabled] [ref=f4e1008]
                - button "表格样式" [disabled] [ref=f4e1019]:
                  - generic [ref=f4e1020]:
                    - button [disabled] [ref=f4e1021]
                    - generic [ref=f4e1023]: è¡¨æ ¼æ ·å¼
              - generic [ref=f4e1026]:
                - button "加粗" [disabled] [pressed] [ref=f4e1031]:
                  - button [disabled] [ref=f4e1033]
                - button "倾斜" [disabled] [ref=f4e1039]:
                  - button [disabled] [ref=f4e1041]
                - button "下划线" [disabled] [ref=f4e1047]:
                  - button [disabled] [ref=f4e1049]
                - button "删除线" [disabled] [ref=f4e1055]:
                  - button [disabled] [ref=f4e1057]
                - group "字体颜色" [disabled] [ref=f4e1066]:
                  - generic [ref=f4e1067]:
                    - button "字体颜色" [disabled] [ref=f4e1068]
                    - button "字体颜色 æ›´å¤šé€‰é¡¹" [disabled] [ref=f4e1072]
                - group "填充颜色" [disabled] [ref=f4e1080]:
                  - generic [ref=f4e1081]:
                    - button "填充颜色" [disabled] [ref=f4e1082]
                    - button "填充颜色 æ›´å¤šé€‰é¡¹" [disabled] [ref=f4e1086]
                - button "条件格式" [disabled] [ref=f4e1094]:
                  - generic [ref=f4e1095]:
                    - button [disabled] [ref=f4e1096]
                    - generic [ref=f4e1098]: æ¡ä»¶æ ¼å¼
            - generic [ref=f4e1102]:
              - generic [ref=f4e1103]:
                - button "垂直对齐" [disabled] [ref=f4e1111]:
                  - button [disabled] [ref=f4e1113]
                - button "文字方向" [disabled] [ref=f4e1124]:
                  - button [disabled] [ref=f4e1126]
              - generic [ref=f4e1130]:
                - button "左对齐" [disabled] [ref=f4e1135]:
                  - button [disabled] [ref=f4e1137]
                - button "居中对齐" [disabled] [pressed] [ref=f4e1143]:
                  - button [disabled] [ref=f4e1145]
                - button "右对齐" [disabled] [ref=f4e1151]:
                  - button [disabled] [ref=f4e1153]
            - generic [ref=f4e1155]:
              - button "换行" [disabled] [ref=f4e1161]:
                - generic [ref=f4e1162]:
                  - button [disabled] [ref=f4e1163]
                  - generic [ref=f4e1165]: æ¢è¡Œ
              - group "合并" [disabled] [ref=f4e1174]:
                - generic [ref=f4e1175]:
                  - button "合并" [disabled] [ref=f4e1176]
                  - generic [ref=f4e1178]: åˆå¹¶
                  - button "合并 æ›´å¤šé€‰é¡¹" [disabled] [ref=f4e1180]
            - generic [ref=f4e1182]:
              - button "常规" [disabled] [ref=f4e1191]
              - generic [ref=f4e1196]:
                - button "百分比样式" [disabled] [ref=f4e1201]:
                  - button [disabled] [ref=f4e1203]
                - button "千位分隔样式" [disabled] [ref=f4e1209]:
                  - button [disabled] [ref=f4e1211]
            - group "筛选" [ref=f4e1223]:
              - generic [ref=f4e1224]:
                - button "筛选" [ref=f4e1225]
                - button "筛选 æ›´å¤šé€‰é¡¹" [ref=f4e1228]
            - generic [ref=f4e1230]:
              - generic [ref=f4e1231]:
                - button "冻结" [disabled] [ref=f4e1239]:
                  - generic [ref=f4e1240]:
                    - button [disabled] [ref=f4e1241]
                    - generic [ref=f4e1243]: å†»ç»“
                - group "求和" [disabled] [ref=f4e1253]:
                  - generic [ref=f4e1254]:
                    - button "求和" [disabled] [ref=f4e1255]
                    - generic [ref=f4e1257]: æ±‚å’Œ
                    - button "求和 æ›´å¤šé€‰é¡¹" [disabled] [ref=f4e1259]
              - generic [ref=f4e1260]:
                - button "排序" [disabled] [ref=f4e1268]:
                  - generic [ref=f4e1269]:
                    - button [disabled] [ref=f4e1270]
                    - generic [ref=f4e1272]: æŽ’序
                - button "数据" [disabled] [ref=f4e1282]:
                  - generic [ref=f4e1283]:
                    - button [disabled] [ref=f4e1284]
                    - generic [ref=f4e1286]: æ•°æ®
            - button "保护" [disabled] [ref=f4e1298]:
              - button [disabled] [ref=f4e1300]
            - button "插入" [disabled] [ref=f4e1315]:
              - button [disabled] [ref=f4e1317]
            - button "图片" [disabled] [ref=f4e1331]:
              - button [disabled] [ref=f4e1333]
            - generic [ref=f4e1338]:
              - button "图表" [disabled] [ref=f4e1347]:
                - generic [ref=f4e1348]:
                  - button [disabled] [ref=f4e1349]
                  - generic [ref=f4e1351]: å›¾è¡¨
              - button "透视表" [disabled] [ref=f4e1359]:
                - generic [ref=f4e1360]:
                  - button [disabled] [ref=f4e1361]
                  - generic [ref=f4e1363]: é€è§†è¡¨
            - button "快捷工具" [disabled] [ref=f4e1374]:
              - button [disabled] [ref=f4e1376]
            - button "生成图片" [disabled] [ref=f4e1387]:
              - button [disabled] [ref=f4e1389]
            - generic [ref=f4e1392]:
              - generic [ref=f4e1393]:
                - button "生成查询" [ref=f4e1398]:
                  - generic [ref=f4e1399]:
                    - button [ref=f4e1400]
                    - generic [ref=f4e1402]: ç”ŸæˆæŸ¥è¯¢
                - button "生成智能表" [ref=f4e1407]:
                  - generic [ref=f4e1408]:
                    - button [ref=f4e1409]
                    - generic [ref=f4e1411]: ç”Ÿæˆæ™ºèƒ½è¡¨
              - generic [ref=f4e1412]:
                - button "图片转表格" [disabled] [ref=f4e1417]:
                  - generic [ref=f4e1418]:
                    - button [disabled] [ref=f4e1419]
                    - generic [ref=f4e1421]: å›¾ç‰‡è½¬è¡¨æ ¼
                - button "PDF转换" [disabled] [ref=f4e1429]:
                  - generic [ref=f4e1430]:
                    - button [disabled] [ref=f4e1431]
                    - generic [ref=f4e1433]: PDF转换
            - button "打印" [ref=f4e1443]:
              - button [ref=f4e1445]
        - toolbar [ref=f4e1449]:
          - generic [ref=f4e1452]:
            - button "查找替换" [ref=f4e1457]:
              - button [ref=f4e1459]
            - button "工具栏切换" [ref=f4e1468]:
              - button [ref=f4e1470]
    - generic [ref=f4e105]:
      - generic [ref=f4e1480]:
        - textbox [ref=f4e1481]
        - combobox [ref=f4e1482]:
          - paragraph [ref=f4e1483]
      - combobox [active] [ref=f4e1487]:
        - paragraph
    - toolbar "状态栏" [ref=f4e1494]:
      - button [ref=f4e1495]
      - button [ref=f4e1507]
      - button [ref=f4e1519]:
        - tablist "工作表" [ref=f4e1526]:
          - generic [ref=f4e1528]:
            - tab "进销存重构-NEW" [ref=f4e1530] [cursor=pointer]
            - tab "银川3级MOM系统" [selected] [ref=f4e1533] [cursor=pointer]
            - tab "OA问题表" [ref=f4e1536] [cursor=pointer]
            - tab "宁夏-万通建材" [ref=f4e1539] [cursor=pointer]
            - tab "浪潮" [ref=f4e1542] [cursor=pointer]
            - tab "酒泉验收问题" [ref=f4e1545] [cursor=pointer]
            - tab "湟水峡验收问题表" [ref=f4e1548] [cursor=pointer]
            - tab "天津—双奇点" [ref=f4e1551] [cursor=pointer]
            - tab "天津—军泰伟业" [ref=f4e1554] [cursor=pointer]
            - tab "天津--君歌化工" [ref=f4e1557] [cursor=pointer]
            - tab "天津—阳光印刷" [ref=f4e1560] [cursor=pointer]
            - tab "鹤壁—天沐玻璃" [ref=f4e1563] [cursor=pointer]
            - tab "天津—德瑞斯影视" [ref=f4e1566] [cursor=pointer]
            - tab "湖南—坤泰化工" [ref=f4e1569] [cursor=pointer]
            - tab "湖南—鹏创电子" [ref=f4e1572] [cursor=pointer]
            - tab "宁夏-中盛建材" [ref=f4e1575] [cursor=pointer]
            - tab "长治—健齿齿科器材" [ref=f4e1578] [cursor=pointer]
            - tab "长治—安铁熔剂" [ref=f4e1581] [cursor=pointer]
            - tab "长治-祥雨" [ref=f4e1584] [cursor=pointer]
            - tab "长治-晋和园" [ref=f4e1587] [cursor=pointer]
            - tab "河南-鹤壁" [ref=f4e1590] [cursor=pointer]
          - generic [ref=f4e1592]:
            - generic [ref=f4e1595]:
              - button [disabled]
            - button [ref=f4e1599]
      - button "100% å…¬å¼è®¡ç®—中..." [ref=f4e1600]:
        - generic [ref=f4e1606]:
          - generic [ref=f4e1608]: 100%
          - text: å…¬å¼è®¡ç®—中...
      - button "高亮所在行列" [ref=f4e1609]
      - button [ref=f4e1621]
      - button "全屏查看 ç¼©å°,Ctrl+0可恢复至100% æ”¾å¤§,Ctrl+0可恢复至100%" [ref=f4e1626]:
        - generic [ref=f4e1631]:
          - generic "全屏查看" [ref=f4e1635]
          - generic "缩小,Ctrl+0可恢复至100%" [ref=f4e1639]
          - combobox [ref=f4e1643]:
            - generic [ref=f4e1644]: 100%
          - generic "放大,Ctrl+0可恢复至100%" [ref=f4e1649]
  - textbox [ref=f4e1650]
.playwright-mcp/page-2026-07-21T07-14-13-732Z.png
.playwright-mcp/page-2026-07-21T07-14-34-792Z.png
.playwright-mcp/page-2026-07-21T07-57-24-131Z.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,84 @@
- generic [active] [ref=e1]:
  - generic [ref=e3]:
    - generic [ref=e4]:
      - generic [ref=e8]: ä¸­å°ä¼ä¸šæ”¹é€ bug修改列表
      - button "登录腾讯文档" [ref=e12]
    - generic [ref=e13]:
      - generic [ref=e14]:
        - generic [ref=e15]: å¼€å§‹
        - generic [ref=e16]: æ’å…¥
        - generic [ref=e17]: æ•°æ®
        - generic [ref=e18]: å…¬å¼
        - generic [ref=e19]: åä½œ
        - generic [ref=e20]: è§†å›¾
      - generic [ref=e21]:
        - generic [ref=e27]:
          - generic [ref=e28]: é»˜è®¤å­—体
          - generic [ref=e30]: "10"
        - generic [ref=e42]: è¡¨æ ¼æ ·å¼
        - generic [ref=e44]: æ¡ä»¶æ ¼å¼
        - generic [ref=e53]: æ¢è¡Œ
        - generic [ref=e55]: åˆå¹¶
        - generic [ref=e58]: å¸¸è§„
        - generic [ref=e64]: ç­›é€‰
        - generic [ref=e66]: å†»ç»“
        - generic [ref=e68]: æŽ’序
        - generic [ref=e70]: æ±‚å’Œ
        - generic [ref=e72]: æ•°æ®
        - generic [ref=e74]: ä¿æŠ¤
        - generic [ref=e77]: æ’å…¥
        - generic [ref=e79]: å›¾ç‰‡
        - generic [ref=e81]: å›¾è¡¨
        - generic [ref=e83]: é€è§†è¡¨
        - generic [ref=e86]: å¿«æ·å·¥å…·
        - generic [ref=e88]: ç”Ÿæˆå›¾ç‰‡
        - generic [ref=e90]: å…³è”收集表
        - generic [ref=e92]: å›¾ç‰‡è½¬è¡¨æ ¼
        - generic [ref=e94]: ç”Ÿæˆæ™ºèƒ½è¡¨
        - generic [ref=e96]: PDF转换
        - generic [ref=e99]: æ‰“印
  - generic [ref=e105]: A1
  - generic [ref=e113]:
    - generic [ref=e116]:
      - link "进销存重构-NEW" [ref=e117]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=fs73ok&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - generic [ref=e120]: é“¶å·3级MOM系统
      - link "OA问题表" [ref=e123]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=f64daq&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "宁夏-万通建材" [ref=e126]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=ept4mh&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "浪潮" [ref=e129]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=spyhmp&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "酒泉验收问题" [ref=e132]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=x00zho&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "湟水峡验收问题表" [ref=e135]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=h625nh&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "天津—双奇点" [ref=e138]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=BB08J2&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "天津—军泰伟业" [ref=e141]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=lspijq&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "天津--君歌化工" [ref=e144]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=mq8fx1&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "天津—阳光印刷" [ref=e147]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=0l2zs6&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "鹤壁—天沐玻璃" [ref=e150]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=iwl1zq&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "天津—德瑞斯影视" [ref=e153]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=uw3s1s&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "湖南—坤泰化工" [ref=e156]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=lhgufk&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "湖南—鹏创电子" [ref=e159]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=qr1hgf&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "宁夏-中盛建材" [ref=e162]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=glpee8&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "长治—健齿齿科器材" [ref=e165]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=f6oijb&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "长治—安铁熔剂" [ref=e168]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=27v3ks&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "长治-祥雨" [ref=e171]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=51i5b3&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "长治-晋和园" [ref=e174]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=bo7qyg&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
      - link "河南-鹤壁" [ref=e177]:
        - /url: https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?aidPos=detail&no_promotion=1&is_blank_or_template=blank&tab=mkpiqo&_t=1784617837525&nlc=1&u=8829bcd3bce040719f56b04f14245507
    - generic [ref=e182]: 100%
docs/material_stock_move.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,120 @@
# åº“存移库 - å‰ç«¯è”调方案
## æ¶‰åŠé¡µé¢
- åº“存台账页面(/mes/wm/material-stock)
## ä¸šåŠ¡åœºæ™¯
在库存台账页面,用户可以选择一条库存记录,点击"移库"按钮,将该库存从当前库位移动到目标库位。移库操作会生成两条成对的库存事务流水(调拨移出 + è°ƒæ‹¨ç§»å…¥ï¼‰ï¼Œç¡®ä¿åº“存变动可追溯。
## æ–°å¢ž API
### åº“存移库
| æ–¹æ³• | è·¯å¾„ | è¯´æ˜Ž |
|------|------|------|
| POST | /mes/wm/material-stock/move | åº“存移库 |
**请求参数:**
| å‚æ•° | ç±»åž‹ | å¿…å¡« | è¯´æ˜Ž |
|------|------|------|------|
| materialStockId | Long | æ˜¯ | åº“存记录ID |
| toWarehouseId | Long | æ˜¯ | ç›®æ ‡ä»“库ID |
| toLocationId | Long | æ˜¯ | ç›®æ ‡åº“区ID |
| toAreaId | Long | æ˜¯ | ç›®æ ‡åº“位ID |
| quantity | BigDecimal | æ˜¯ | ç§»åº“数量 |
| remark | String | å¦ | å¤‡æ³¨ |
**请求示例:**
```json
{
  "materialStockId": 1024,
  "toWarehouseId": 1,
  "toLocationId": 2,
  "toAreaId": 3,
  "quantity": 100,
  "remark": "库位调整"
}
```
**响应:**
```json
{
  "code": 0,
  "msg": "操作成功",
  "data": true
}
```
## å‰ç«¯ä¿®æ”¹ç‚¹
### 1. åº“存台账列表页
- åœ¨æ“ä½œåˆ—添加"移库"按钮
- ç‚¹å‡»åŽæ‰“开移库弹窗
### 2. ç§»åº“弹窗
**表单字段:**
| å­—段 | ç±»åž‹ | å¿…å¡« | è¯´æ˜Ž |
|------|------|------|------|
| ç‰©æ–™ç¼–码 | æ–‡æœ¬ | - | åªè¯»ï¼Œä»Žé€‰ä¸­è¡Œå¸¦å…¥ |
| ç‰©æ–™åç§° | æ–‡æœ¬ | - | åªè¯»ï¼Œä»Žé€‰ä¸­è¡Œå¸¦å…¥ |
| æ‰¹æ¬¡å· | æ–‡æœ¬ | - | åªè¯»ï¼Œä»Žé€‰ä¸­è¡Œå¸¦å…¥ |
| å½“前仓库 | æ–‡æœ¬ | - | åªè¯»ï¼Œä»Žé€‰ä¸­è¡Œå¸¦å…¥ |
| å½“前库区 | æ–‡æœ¬ | - | åªè¯»ï¼Œä»Žé€‰ä¸­è¡Œå¸¦å…¥ |
| å½“前库位 | æ–‡æœ¬ | - | åªè¯»ï¼Œä»Žé€‰ä¸­è¡Œå¸¦å…¥ |
| å½“前数量 | æ•°å­— | - | åªè¯»ï¼Œä»Žé€‰ä¸­è¡Œå¸¦å…¥ |
| ç›®æ ‡ä»“库 | ä¸‹æ‹‰ | æ˜¯ | é€‰æ‹©ç›®æ ‡ä»“库 |
| ç›®æ ‡åº“区 | ä¸‹æ‹‰ | æ˜¯ | æ ¹æ®ç›®æ ‡ä»“库联动 |
| ç›®æ ‡åº“位 | ä¸‹æ‹‰ | æ˜¯ | æ ¹æ®ç›®æ ‡åº“区联动 |
| ç§»åº“数量 | æ•°å­— | æ˜¯ | è¾“入移库数量,不能超过当前数量 |
| å¤‡æ³¨ | æ–‡æœ¬ | å¦ | å¤‡æ³¨ä¿¡æ¯ |
**联动逻辑:**
1. é€‰æ‹©ç›®æ ‡ä»“库后,加载该仓库下的库区列表
2. é€‰æ‹©ç›®æ ‡åº“区后,加载该库区下的库位列表
**提交逻辑:**
1. æ ¡éªŒç§»åº“数量不能超过当前库存数量
2. æ ¡éªŒç§»åº“数量不能超过可用量(当前数量 - å†»ç»“数量 - å ç”¨é‡ï¼‰
3. è°ƒç”¨ç§»åº“接口
4. æˆåŠŸåŽå…³é—­å¼¹çª—ï¼Œåˆ·æ–°åˆ—è¡¨
## ä¸šåŠ¡è§„åˆ™è¯´æ˜Ž
| åœºæ™¯ | è§„则 |
|------|------|
| åº“存数量校验 | ç§»åº“数量不能超过可用量(在库数量 - å†»ç»“数量 - å ç”¨é‡ï¼‰ |
| å†»ç»“校验 | åº“存记录已冻结时,不允许移库 |
| åº“位混放规则 | ç›®æ ‡åº“位需满足混放规则(物料混放、批次混放) |
| åŒåº“位移库 | æºåº“位和目标库位相同时,不允许移库 |
## åº“存事务流水
移库操作会生成两条成对的库存事务流水:
| å­—段 | è°ƒæ‹¨ç§»å‡º | è°ƒæ‹¨ç§»å…¥ |
|------|----------|----------|
| type | 3 (MOVE_OUT) | 4 (MOVE_IN) |
| bizType | 112 (WM_TRANSFER_OUT) | 113 (WM_TRANSFER_IN) |
| bizCode | MOVE_xxx | MOVE_xxx(相同) |
| quantity | è´Ÿæ•°ï¼ˆå¦‚ -100) | æ­£æ•°ï¼ˆå¦‚ 100) |
| warehouseId | æºä»“库 | ç›®æ ‡ä»“库 |
| locationId | æºåº“区 | ç›®æ ‡åº“区 |
| areaId | æºåº“位 | ç›®æ ‡åº“位 |
| relatedTransactionId | null | ç§»å‡ºäº‹åŠ¡ID |
## æ³¨æ„äº‹é¡¹
1. **权限要求**:需要 `mes:wm-material-stock:move` æƒé™
2. **事务一致性**:移库操作在事务中执行,确保出库和入库操作的原子性
3. **批次保留**:移库时批次信息保留,不会改变批次属性
4. **供应商保留**:移库时供应商信息保留
docs/production_workflow_optimization.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,744 @@
# ç”Ÿäº§è®¢å•、排产、报工优化方案
## ä¸€ã€çŽ°çŠ¶åˆ†æž
### 1.1 æ•°æ®æ¨¡åž‹å…³ç³»
```
生产工单 (mes_pro_work_order)
    â”œâ”€â”€ å·¥å•工序 (mes_pro_work_order_process)     -- å·¥å•级别的工序安排
    â”œâ”€â”€ å·¥å•BOM (mes_pro_work_order_bom)          -- å·¥å•级别的物料清单
    â””── ç”Ÿäº§ä»»åŠ¡ (mes_pro_task)                   -- æŽ’产后的生产任务
            â”œâ”€â”€ ä»»åŠ¡æŠ•æ–™ (mes_pro_task_issue)     -- ä»»åŠ¡çº§åˆ«çš„æŠ•æ–™è®°å½•
            â””── æŠ¥å·¥å• (mes_pro_feedback)         -- ä»»åŠ¡çº§åˆ«çš„æŠ¥å·¥è®°å½•
                    â”œâ”€â”€ ç‰©æ–™æ¶ˆè€— (mes_wm_item_consume)  -- æŠ¥å·¥æ¶ˆè€—的物料
                    â””── äº§å‡ºå• (mes_wm_product_produce) -- æŠ¥å·¥äº§å‡ºçš„产品
```
### 1.2 å½“前状态流转
| å®žä½“ | çŠ¶æ€æµè½¬ | è§¦å‘条件 |
|------|---------|---------|
| **生产工单** | è‰ç¨¿ â†’ å·²ç¡®è®¤ â†’ å·²å®Œæˆ/已取消 | æ‰‹åŠ¨ç¡®è®¤ã€æ‰‹åŠ¨å®Œæˆ/取消 |
| **生产任务** | è‰ç¨¿ â†’ å·²å®Œæˆ/已取消 | å·¥å•完成/取消时级联更新 |
| **报工单** | è‰ç¨¿ â†’ å®¡æ‰¹ä¸­ â†’ å¾…检验/已完成 â†’ å·²å®Œæˆ | æ‰‹åŠ¨æäº¤ã€å®¡æ‰¹é€šè¿‡ |
### 1.3 å­˜åœ¨çš„问题
#### é—®é¢˜1:工单工序与任务关系断裂
- `MesProWorkOrderProcessDO` è®°å½•工单的工序安排,但创建任务时没有校验工序是否在工单工序中
- ä»»åŠ¡å¯ä»¥éšæ„æŒ‡å®šä»»æ„å·¥åºï¼Œå¯¼è‡´å·¥å•å·¥åºé…ç½®æ— æ•ˆ
- æŽ’产时需要手动逐个工序创建任务,效率低
#### é—®é¢˜2:排产数量无约束
- `quantityScheduled`(已排产数量)字段存在但没有累加逻辑
- å¯ä»¥è¶…量排产,无校验
- æ— æ³•直观看到工单的排产进度
#### é—®é¢˜3:任务缺少中间状态
- ä»»åŠ¡åªæœ‰ä¸‰ç§çŠ¶æ€ï¼šè‰ç¨¿ã€å·²å®Œæˆã€å·²å–æ¶ˆ
- ç¼ºå°‘「生产中」「部分完成」等中间状态
- æ— æ³•区分「未开始生产」和「正在生产」
#### é—®é¢˜4:报工流程繁琐
- æŠ¥å·¥éœ€è¦ä»Žç‹¬ç«‹èœå•进入,手动选择任务
- æ— æ³•从任务列表直接发起报工
- æ¯æ¬¡æŠ¥å·¥éœ€è¦ç»è¿‡ï¼šæ–°å¢ž â†’ ä¿å­˜ â†’ æäº¤ â†’ å®¡æ‰¹ 4æ­¥
#### é—®é¢˜5:工单完成条件不明确
- å·¥å•完成是手动操作,不判断实际进度
- å¯èƒ½å·¥å•数量未达标就被手动完成
- ç¼ºå°‘「自动完成」机制
#### é—®é¢˜6:前端操作割裂
- å·¥å•、排产、报工是三个独立菜单
- å·¥å•确认后需手动跳到「排产管理」创建任务
- ä»»åŠ¡åˆ›å»ºåŽéœ€æ‰‹åŠ¨è·³åˆ°ã€ŒæŠ¥å·¥åˆ—è¡¨ã€åˆ›å»ºæŠ¥å·¥
- ç”¨æˆ·éœ€è¦åœ¨å¤šä¸ªé¡µé¢æ¥å›žåˆ‡æ¢
---
## äºŒã€ä¼˜åŒ–方案
### 2.1 æ•°æ®æ¨¡åž‹ä¼˜åŒ–
#### 2.1.1 ä»»åŠ¡çŠ¶æ€æ‰©å±•
**新增任务状态枚举值**:
| çŠ¶æ€ | å€¼ | è¯´æ˜Ž | è¿›å…¥æ¡ä»¶ |
|------|---|------|---------|
| PREPARE | 0 | è‰ç¨¿ | ä»»åŠ¡åˆ›å»ºæ—¶ |
| PRODUCING | 1 | ç”Ÿäº§ä¸­ | é¦–次报工审批通过后 |
| PARTIAL_FINISHED | 2 | éƒ¨åˆ†å®Œæˆ | å·²ç”Ÿäº§æ•°é‡ > 0 ä¸” < æŽ’产数量 |
| FINISHED | 3 | å·²å®Œæˆ | å·²ç”Ÿäº§æ•°é‡ >= æŽ’产数量 æˆ– å·¥å•完成 |
| CANCELED | 4 | å·²å–消 | å·¥å•取消时 |
**修改文件**:`MesProTaskStatusEnum.java`
```java
public enum MesProTaskStatusEnum implements ArrayValuable<Integer> {
    PREPARE(0, "草稿"),
    PRODUCING(1, "生产中"),
    PARTIAL_FINISHED(2, "部分完成"),
    FINISHED(3, "已完成"),
    CANCELED(4, "已取消");
    /**
     * åˆ¤æ–­æ˜¯å¦ä¸ºç»ˆæ€
     */
    public static boolean isEndStatus(Integer status) {
        return ObjectUtils.equalsAny(status, FINISHED.status, CANCELED.status);
    }
    /**
     * åˆ¤æ–­æ˜¯å¦å¯ä»¥æŠ¥å·¥ï¼ˆè‰ç¨¿æˆ–非终态)
     */
    public static boolean canFeedback(Integer status) {
        return !isEndStatus(status);
    }
}
```
#### 2.1.2 å·¥å•增加排产相关字段
**新增字段**(已存在,补充逻辑):
| å­—段 | ç±»åž‹ | è¯´æ˜Ž |
|------|------|------|
| quantityScheduled | decimal(24,6) | å·²æŽ’产数量(关键工序任务数量之和) |
| quantityProduced | decimal(24,6) | å·²ç”Ÿäº§æ•°é‡ï¼ˆå…³é”®å·¥åºæŠ¥å·¥æ•°é‡ä¹‹å’Œï¼‰ |
**新增字段**:
| å­—段 | ç±»åž‹ | è¯´æ˜Ž |
|------|------|------|
| route_id | bigint | å·¥è‰ºè·¯çº¿ç¼–号(确认时从产品默认路线获取或手动选择) |
| auto_finish_flag | tinyint(1) | æ˜¯å¦è‡ªåŠ¨å®Œæˆï¼ˆé»˜è®¤ true,报工达标后自动完成工单) |
#### 2.1.3 ä»»åŠ¡å¢žåŠ è¿›åº¦è¿½è¸ªå­—æ®µ
**新增字段**:
| å­—段 | ç±»åž‹ | è¯´æ˜Ž |
|------|------|------|
| first_feedback_time | datetime | é¦–次报工时间(状态变为生产中时记录) |
| last_feedback_time | datetime | æœ€è¿‘报工时间 |
**数据库脚本**:
```sql
-- ä»»åŠ¡è¡¨æ–°å¢žå­—æ®µ
ALTER TABLE mes_pro_task ADD COLUMN first_feedback_time datetime COMMENT '首次报工时间' AFTER cancel_date;
ALTER TABLE mes_pro_task ADD COLUMN last_feedback_time datetime COMMENT '最近报工时间' AFTER first_feedback_time;
-- å·¥å•表新增字段
ALTER TABLE mes_pro_work_order ADD COLUMN route_id bigint COMMENT '工艺路线编号' AFTER batch_code;
ALTER TABLE mes_pro_work_order ADD COLUMN auto_finish_flag tinyint(1) DEFAULT 1 COMMENT '是否自动完成' AFTER route_id;
```
### 2.2 ä¸šåŠ¡é€»è¾‘ä¼˜åŒ–
#### 2.2.1 æŽ’产数量校验
**规则**:
- åˆ›å»ºä»»åŠ¡æ—¶æ ¡éªŒï¼š`工单.已排产数量 + æœ¬æ¬¡æŽ’产数量 <= å·¥å•.生产数量`
- ä»»åŠ¡åˆ›å»ºæˆåŠŸåŽç´¯åŠ å·¥å•çš„ `quantityScheduled`
- ä»»åŠ¡åˆ é™¤æ—¶æ‰£å‡å·¥å•çš„ `quantityScheduled`
**接口变更**:`MesProWorkOrderService`
```java
/**
 * ç´¯åŠ å·¥å•çš„å·²æŽ’äº§æ•°é‡
 *
 * @param id å·¥å•编号
 * @param incrQuantityScheduled æœ¬æ¬¡æŽ’产数量增量
 */
void updateScheduledQuantity(Long id, BigDecimal incrQuantityScheduled);
```
**Mapper æ–°å¢žæ–¹æ³•**:`MesProWorkOrderMapper`
```java
@Update("UPDATE mes_pro_work_order SET quantity_scheduled = quantity_scheduled + #{incrQuantity} " +
        "WHERE id = #{id} AND deleted = 0")
void updateScheduledQuantity(@Param("id") Long id, @Param("incrQuantity") BigDecimal incrQuantity);
```
#### 2.2.2 ä¸€é”®æŽ’产接口
**接口设计**:
```java
/**
 * ä¸€é”®æŽ’产:根据工艺路线自动生成所有工序任务
 *
 * @param workOrderId å·¥å•编号
 * @param routeId å·¥è‰ºè·¯çº¿ç¼–号(可选,不传则使用工单关联的工艺路线)
 * @return ç”Ÿæˆçš„任务ID列表
 */
List<Long> autoGenerateTasks(Long workOrderId, Long routeId);
```
**业务逻辑**:
1. æ ¡éªŒå·¥å•存在且状态为「已确认」
2. èŽ·å–å·¥è‰ºè·¯çº¿å·¥åºåˆ—è¡¨ï¼ˆæŒ‰ sort æŽ’序)
3. è®¡ç®—每个工序的排产数量:
   - é¦–道工序:工单生产数量
   - åŽç»­å·¥åºï¼šå‰é“工序数量 Ã— äº§å‡ºæ¯”(默认 1:1)
4. è‡ªåŠ¨åˆ†é…å·¥ä½œç«™ï¼š
   - ä¼˜å…ˆåˆ†é…å·¥è‰ºè·¯çº¿å·¥åºé…ç½®çš„工作站
   - è‹¥æœªé…ç½®ï¼Œåˆ™åˆ†é…äº§å“é»˜è®¤å·¥ä½œç«™
   - è‹¥ä»æ— ï¼Œåˆ™ç•™ç©ºç”±ç”¨æˆ·æ‰‹åŠ¨è°ƒæ•´
5. æ‰¹é‡åˆ›å»ºä»»åŠ¡ï¼Œç´¯åŠ å·¥å•å·²æŽ’äº§æ•°é‡
6. è‡ªåŠ¨åˆ›å»ºå·¥å•å·¥åºè®°å½•ï¼ˆ`mes_pro_work_order_process`)
**Controller æŽ¥å£**:
```java
@PostMapping("/auto-generate")
@Operation(summary = "一键排产")
@PreAuthorize("@ss.hasPermission('mes:pro-task:create')")
public CommonResult<List<Long>> autoGenerateTasks(
        @RequestParam("workOrderId") Long workOrderId,
        @RequestParam(value = "routeId", required = false) Long routeId) {
    return success(taskService.autoGenerateTasks(workOrderId, routeId));
}
```
#### 2.2.3 ä»»åŠ¡çŠ¶æ€è‡ªåŠ¨æµè½¬
**触发时机**:报工审批通过后
**状态流转规则**:
```
当前状态         æŠ¥å·¥åŽçŠ¶æ€åˆ¤æ–­
─────────────────────────────────────────────────
草稿(0)    â†’    ç”Ÿäº§ä¸­(1) æˆ– éƒ¨åˆ†å®Œæˆ(2) æˆ– å·²å®Œæˆ(3)
生产中(1)  â†’    ç”Ÿäº§ä¸­(1) æˆ– éƒ¨åˆ†å®Œæˆ(2) æˆ– å·²å®Œæˆ(3)
部分完成(2)→    éƒ¨åˆ†å®Œæˆ(2) æˆ– å·²å®Œæˆ(3)
```
**判断逻辑**:
```java
if (producedQuantity.compareTo(quantity) >= 0) {
    // å·²ç”Ÿäº§ >= è®¡åˆ’ â†’ å·²å®Œæˆ
    newStatus = MesProTaskStatusEnum.FINISHED;
} else if (producedQuantity.compareTo(BigDecimal.ZERO) > 0) {
    // 0 < å·²ç”Ÿäº§ < è®¡åˆ’ â†’ éƒ¨åˆ†å®Œæˆï¼ˆæˆ–保持生产中)
    newStatus = MesProTaskStatusEnum.PARTIAL_FINISHED;
} else {
    // å·²ç”Ÿäº§ = 0 ä¸”有报工 â†’ ç”Ÿäº§ä¸­ï¼ˆé¦–次报工)
    newStatus = MesProTaskStatusEnum.PRODUCING;
}
```
#### 2.2.4 å·¥å•进度自动更新
**规则**:
- æ‰€æœ‰å…³é”®å·¥åºçš„æŠ¥å·¥å®¡æ‰¹é€šè¿‡åŽï¼Œç´¯åŠ å·¥å•çš„ `quantityProduced`
- éžå…³é”®å·¥åºçš„æŠ¥å·¥ä¸æ›´æ–°å·¥å•进度(只更新任务进度)
**触发时机**:报工审批通过后
```java
// MesProFeedbackServiceImpl#approveFeedback
if (keyFlag) {
    // å…³é”®å·¥åºï¼šæ›´æ–°å·¥å•已生产数量
    workOrderService.updateProducedQuantity(feedback.getWorkOrderId(), feedback.getFeedbackQuantity());
    // æ£€æŸ¥æ˜¯å¦è‡ªåŠ¨å®Œæˆ
    checkAndAutoFinishWorkOrder(feedback.getWorkOrderId());
}
```
#### 2.2.5 å·¥å•自动完成检查
**规则**:
- å½“工单的 `autoFinishFlag = true` æ—¶ï¼Œæ£€æŸ¥æ˜¯å¦æ»¡è¶³è‡ªåŠ¨å®Œæˆæ¡ä»¶
- æ¡ä»¶ï¼šæ‰€æœ‰å…³é”®å·¥åºä»»åŠ¡çš„å·²ç”Ÿäº§æ•°é‡ >= å·¥å•生产数量
- æˆ–者:工单下所有任务状态都为「已完成」
**接口设计**:
```java
/**
 * æ£€æŸ¥å¹¶è‡ªåŠ¨å®Œæˆå·¥å•
 *
 * @param workOrderId å·¥å•编号
 * @return true=已自动完成, false=未满足条件
 */
boolean checkAndAutoFinishWorkOrder(Long workOrderId);
```
**业务逻辑**:
```java
public boolean checkAndAutoFinishWorkOrder(Long workOrderId) {
    MesProWorkOrderDO workOrder = getWorkOrder(workOrderId);
    if (workOrder == null || !Boolean.TRUE.equals(workOrder.getAutoFinishFlag())) {
        return false;
    }
    if (workOrder.getStatus() != MesProWorkOrderStatusEnum.CONFIRMED.getStatus()) {
        return false;
    }
    // æ£€æŸ¥ï¼šå·²ç”Ÿäº§æ•°é‡ >= ç”Ÿäº§æ•°é‡
    if (workOrder.getQuantityProduced().compareTo(workOrder.getQuantity()) >= 0) {
        finishWorkOrder(workOrderId);
        return true;
    }
    return false;
}
```
#### 2.2.6 å·¥åºæ ¡éªŒå¢žå¼º
**规则**:
- åˆ›å»ºä»»åŠ¡æ—¶ï¼Œæ ¡éªŒå·¥åºå¿…é¡»åœ¨å·¥å•å·¥åºåˆ—è¡¨ä¸­
- å¦‚果工单没有工序记录,允许创建(兼容老数据)
**修改**:`MesProTaskServiceImpl#createTask`
```java
// æ ¡éªŒå·¥åºåœ¨å·¥å•工序中(如果工单有工序配置)
List<MesProWorkOrderProcessDO> workOrderProcesses = workOrderProcessService.getListByWorkOrderId(createReqVO.getWorkOrderId());
if (CollUtil.isNotEmpty(workOrderProcesses)) {
    boolean processExists = workOrderProcesses.stream()
            .anyMatch(p -> ObjUtil.equal(p.getProcessId(), createReqVO.getProcessId()));
    if (!processExists) {
        throw exception(PRO_TASK_PROCESS_NOT_IN_WORK_ORDER);
    }
}
```
### 2.3 å‰ç«¯äº¤äº’优化
#### 2.3.1 æ•´åˆä¸ºã€Œå·¥å•中心」
**设计思路**:将工单、排产、报工整合到一个页面,通过 Tab åˆ‡æ¢ä¸åŒè§†å›¾
**页面结构**:
```
┌─────────────────────────────────────────────────────────────────────┐
│ å·¥å•中心                                                              â”‚
├─────────────────────────────────────────────────────────────────────┤
│ ã€æœç´¢æ¡ä»¶åŒºã€‘                                                        â”‚
│  å·¥å•编码: [____] äº§å“: [____] çŠ¶æ€: [全部 â–¼] å®¢æˆ·: [____]           â”‚
│  [查询] [重置]                                                       â”‚
├─────────────────────────────────────────────────────────────────────┤
│ ã€å·¥å•列表区】                                                        â”‚
│ â”Œâ”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â” â”‚
│ â”‚ å·¥å•编码 â”‚ äº§å“ â”‚ è®¡åˆ’数量 â”‚ å·²æŽ’产 â”‚ å·²ç”Ÿäº§ â”‚ è¿›åº¦ â”‚ çŠ¶æ€ â”‚ æ“ä½œâ”‚ â”‚
│ â”‚ WO001   â”‚ A   â”‚ 100     â”‚ 100   â”‚ 80    â”‚ â–ˆâ–ˆâ–ˆâ–ˆâ–ˆâ–ˆâ–ˆâ–ˆâ–‘â–‘ â”‚ ç”Ÿäº§ä¸­â”‚ è¯¦æƒ…│
│ â”‚ WO002   â”‚ B   â”‚ 50      â”‚ 0     â”‚ 0     â”‚ â–‘â–‘â–‘â–‘â–‘â–‘â–‘â–‘â–‘â–‘ â”‚ å·²ç¡®è®¤â”‚ æŽ’产│
│ â””─────────────────────────────────────────────────────────────────┘ â”‚
├─────────────────────────────────────────────────────────────────────┤
│ ã€å·¥å•详情区】(点击工单编码展开)                                      â”‚
│ â”Œâ”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â” â”‚
│ â”‚ ã€å·¥åºè¿›åº¦æ¡ã€‘                                                    â”‚ â”‚
│ â”‚  [下料] â†’ [机加工] â†’ [热处理] â†’ [质检] â†’ [包装]                    â”‚ â”‚
│ â”‚   âœ“       ç”Ÿäº§ä¸­     å¾…生产     å¾…生产    å¾…生产                   â”‚ â”‚
│ â”‚  100%      60%        0%        0%       0%                      â”‚ â”‚
│ â”œâ”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”¤ â”‚
│ â”‚ ã€å½“前工序任务列表】(点击工序tab切换)                             â”‚ â”‚
│ â”‚ [下料] [机加工] [热处理] [质检] [包装]                             â”‚ â”‚
│ â”‚ â”Œâ”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”â”‚ â”‚
│ â”‚ â”‚ ä»»åŠ¡ç¼–ç  â”‚ å·¥ä½œç«™ â”‚ è®¡åˆ’ â”‚ å·²æŠ¥å·¥ â”‚ è¿›åº¦ â”‚ çŠ¶æ€ â”‚ æ“ä½œ         â”‚│ â”‚
│ â”‚ â”‚ T001    â”‚ A-01  â”‚ 60   â”‚ 36    â”‚ 60%  â”‚ ç”Ÿäº§ä¸­â”‚ [报工]       â”‚│ â”‚
│ â”‚ â”‚ T002    â”‚ A-02  â”‚ 40   â”‚ 0     â”‚ 0%   â”‚ è‰ç¨¿  â”‚ [编辑] [删除]││ â”‚
│ â”‚ â””───────────────────────────────────────────────────────────────┘│ â”‚
│ â”‚ [新增任务] [一键排产]                                              â”‚ â”‚
│ â””─────────────────────────────────────────────────────────────────┘ â”‚
└─────────────────────────────────────────────────────────────────────┘
```
#### 2.3.2 å¿«é€ŸæŠ¥å·¥å…¥å£
**场景1:从任务列表报工**
```
任务行操作列 â†’ ç‚¹å‡»ã€ŒæŠ¥å·¥ã€æŒ‰é’® â†’ å¼¹å‡ºæŠ¥å·¥è¡¨å•
┌────────────────────────────────────┐
│ å¿«é€ŸæŠ¥å·¥                            â”‚
├────────────────────────────────────┤
│ ä»»åŠ¡ç¼–ç : T001 (自动带入,不可改)    â”‚
│ å·¥ä½œç«™: A-01 (自动带入)             â”‚
│ è®¡åˆ’数量: 60 (自动带入)             â”‚
│ å·²æŠ¥å·¥: 36 (自动带入)               â”‚
│ â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€      â”‚
│ æœ¬æ¬¡æŠ¥å·¥æ•°é‡: [____] *              â”‚
│ åˆæ ¼å“æ•°é‡: [____]                  â”‚
│ ä¸è‰¯å“æ•°é‡: [____]                  â”‚
│ å¤‡æ³¨: [________________]            â”‚
├────────────────────────────────────┤
│           [取消] [保存并提交]        â”‚
└────────────────────────────────────┘
```
**场景2:批量报工**
```
选中多个任务 â†’ ç‚¹å‡»ã€Œæ‰¹é‡æŠ¥å·¥ã€â†’ å¡«å†™ç›¸åŒæ•°é‡æ‰¹é‡æäº¤
┌────────────────────────────────────┐
│ æ‰¹é‡æŠ¥å·¥                            â”‚
├────────────────────────────────────┤
│ å·²é€‰æ‹© 3 ä¸ªä»»åŠ¡:                    â”‚
│  - T001 (机加工, è®¡åˆ’60, å·²æŠ¥36)    â”‚
│  - T003 (机加工, è®¡åˆ’50, å·²æŠ¥20)    â”‚
│  - T005 (机加工, è®¡åˆ’40, å·²æŠ¥0)     â”‚
│ â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€      â”‚
│ æœ¬æ¬¡æŠ¥å·¥æ•°é‡: [____] (应用到所有)   â”‚
│ å¤‡æ³¨: [________________]            â”‚
├────────────────────────────────────┤
│           [取消] [保存并提交]        â”‚
└────────────────────────────────────┘
```
#### 2.3.3 ä¸€é”®æŽ’产交互
```
┌────────────────────────────────────────┐
│ ä¸€é”®æŽ’产                                â”‚
├────────────────────────────────────────┤
│ å·¥å•编号: WO002                        â”‚
│ äº§å“: äº§å“A                            â”‚
│ ç”Ÿäº§æ•°é‡: 100                          â”‚
│ â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€          â”‚
│ å·¥è‰ºè·¯çº¿: [产品A默认路线 â–¼]             â”‚
│                                         â”‚
│ é¢„生成任务预览:                         â”‚
│ â”Œâ”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â” â”‚
│ â”‚ å·¥åº     â”‚ å·¥ä½œç«™ â”‚ æ•°é‡ â”‚ æ—¶é—´    â”‚ â”‚
│ â”‚ ä¸‹æ–™     â”‚ è‡ªåЍ   â”‚ 100  â”‚ 8:00   â”‚ â”‚
│ â”‚ æœºåŠ å·¥   â”‚ è‡ªåЍ   â”‚ 100  â”‚ 10:00  â”‚ â”‚
│ â”‚ çƒ­å¤„理   â”‚ è‡ªåЍ   â”‚ 100  â”‚ 14:00  â”‚ â”‚
│ â”‚ è´¨æ£€     â”‚ è‡ªåЍ   â”‚ 100  â”‚ 16:00  â”‚ â”‚
│ â”‚ åŒ…装     â”‚ è‡ªåЍ   â”‚ 100  â”‚ 17:00  â”‚ â”‚
│ â””────────────────────────────────────┘ â”‚
│ â˜‘ è‡ªåŠ¨åˆ†é…å·¥ä½œç«™                       â”‚
│ â˜‘ è‡ªåŠ¨è®¡ç®—ç”Ÿäº§æ—¶é—´                     â”‚
├────────────────────────────────────────┤
│           [取消] [确认排产]             â”‚
└────────────────────────────────────────┘
```
#### 2.3.4 è¿›åº¦å¯è§†åŒ–
**工单列表进度条**:
```html
<template #progress="{ row }">
  <div class="flex items-center gap-2">
    <Progress
      :percent="calculateProgress(row)"
      :stroke-color="getProgressColor(row.status)"
      size="small"
    />
    <span class="text-xs text-gray-500">
      {{ row.quantityProduced }}/{{ row.quantity }}
    </span>
  </div>
</template>
```
**工序进度条**:
```html
<div class="flex items-center gap-1">
  <div
    v-for="process in processList"
    :key="process.processId"
    class="flex-1 rounded px-2 py-1 text-center text-xs"
    :class="getProcessStatusClass(process)"
  >
    <div class="font-medium">{{ process.processName }}</div>
    <div class="text-gray-500">{{ process.progress }}%</div>
  </div>
  <RightOutlined class="text-gray-400" />
</div>
```
---
## ä¸‰ã€æŽ¥å£å˜æ›´æ¸…单
### 3.1 æ–°å¢žæŽ¥å£
| æŽ¥å£ | æ–¹æ³• | è·¯å¾„ | è¯´æ˜Ž |
|------|------|------|------|
| ä¸€é”®æŽ’产 | POST | /mes/pro-task/auto-generate | æ ¹æ®å·¥è‰ºè·¯çº¿è‡ªåŠ¨ç”Ÿæˆæ‰€æœ‰å·¥åºä»»åŠ¡ |
| æ‰¹é‡æŠ¥å·¥ | POST | /mes/pro-feedback/batch-create | æ‰¹é‡åˆ›å»ºæŠ¥å·¥å• |
| å·¥å•进度 | GET | /mes/pro-work-order/progress/{id} | èŽ·å–å·¥å•è¿›åº¦è¯¦æƒ…ï¼ˆå«å„å·¥åºè¿›åº¦ï¼‰ |
| å·¥å•自动完成检查 | POST | /mes/pro-work-order/check-auto-finish/{id} | æ£€æŸ¥å¹¶è‡ªåŠ¨å®Œæˆå·¥å• |
### 3.2 ä¿®æ”¹æŽ¥å£
| æŽ¥å£ | æ–¹æ³• | è·¯å¾„ | å˜æ›´è¯´æ˜Ž |
|------|------|------|---------|
| åˆ›å»ºä»»åŠ¡ | POST | /mes/pro-task/create | å¢žåŠ å·¥åºæ ¡éªŒã€æŽ’äº§æ•°é‡æ ¡éªŒã€ç´¯åŠ å·¥å•å·²æŽ’äº§æ•°é‡ |
| åˆ é™¤ä»»åŠ¡ | DELETE | /mes/pro-task/delete | æ‰£å‡å·¥å•已排产数量 |
| å®¡æ‰¹æŠ¥å·¥ | POST | /mes/pro-feedback/approve | å¢žåŠ ä»»åŠ¡çŠ¶æ€æµè½¬é€»è¾‘ã€å·¥å•è‡ªåŠ¨å®Œæˆæ£€æŸ¥ |
| ç¡®è®¤å·¥å• | POST | /mes/pro-work-order/confirm | å¯é€‰æ‹©å…³è”工艺路线 |
| å·¥å•详情 | GET | /mes/pro-work-order/get | å¢žåŠ è¿”å›ž `routeId`、`quantityScheduled`、`quantityProduced` |
### 3.3 æ–°å¢ž VO
#### å·¥å•进度 VO
```java
@Data
public class MesProWorkOrderProgressRespVO {
    /** å·¥å•ID */
    private Long workOrderId;
    /** å·¥å•编码 */
    private String workOrderCode;
    /** ç”Ÿäº§æ•°é‡ */
    private BigDecimal quantity;
    /** å·²æŽ’产数量 */
    private BigDecimal quantityScheduled;
    /** å·²ç”Ÿäº§æ•°é‡ */
    private BigDecimal quantityProduced;
    /** æ€»è¿›åº¦ç™¾åˆ†æ¯” */
    private BigDecimal progressPercent;
    /** å·¥åºè¿›åº¦åˆ—表 */
    private List<ProcessProgressVO> processList;
    @Data
    public static class ProcessProgressVO {
        /** å·¥åºID */
        private Long processId;
        /** å·¥åºç¼–码 */
        private String processCode;
        /** å·¥åºåç§° */
        private String processName;
        /** æ˜¯å¦å…³é”®å·¥åº */
        private Boolean keyFlag;
        /** è®¡åˆ’数量(关键工序) */
        private BigDecimal plannedQuantity;
        /** å·²ç”Ÿäº§æ•°é‡ */
        private BigDecimal producedQuantity;
        /** è¿›åº¦ç™¾åˆ†æ¯” */
        private BigDecimal progressPercent;
        /** ä»»åŠ¡åˆ—è¡¨ */
        private List<TaskProgressVO> taskList;
    }
    @Data
    public static class TaskProgressVO {
        /** ä»»åŠ¡ID */
        private Long taskId;
        /** ä»»åŠ¡ç¼–ç  */
        private String taskCode;
        /** å·¥ä½œç«™åç§° */
        private String workstationName;
        /** æŽ’产数量 */
        private BigDecimal quantity;
        /** å·²ç”Ÿäº§æ•°é‡ */
        private BigDecimal producedQuantity;
        /** è¿›åº¦ç™¾åˆ†æ¯” */
        private BigDecimal progressPercent;
        /** ä»»åŠ¡çŠ¶æ€ */
        private Integer status;
    }
}
```
#### ä¸€é”®æŽ’产请求 VO
```java
@Data
public class MesProTaskAutoGenerateReqVO {
    /** å·¥å•ID */
    @NotNull(message = "工单ID不能为空")
    private Long workOrderId;
    /** å·¥è‰ºè·¯çº¿ID(可选,不传则使用工单关联的工艺路线) */
    private Long routeId;
    /** æ˜¯å¦è‡ªåŠ¨åˆ†é…å·¥ä½œç«™ */
    private Boolean autoAssignWorkstation = true;
    /** æ˜¯å¦è‡ªåŠ¨è®¡ç®—ç”Ÿäº§æ—¶é—´ */
    private Boolean autoCalculateTime = true;
}
```
#### ä¸€é”®æŽ’产预览 VO
```java
@Data
public class MesProTaskAutoGeneratePreviewRespVO {
    /** å·¥å•ID */
    private Long workOrderId;
    /** å·¥è‰ºè·¯çº¿ID */
    private Long routeId;
    /** å·¥è‰ºè·¯çº¿åç§° */
    private String routeName;
    /** é¢„生成任务列表 */
    private List<TaskPreviewVO> taskList;
    @Data
    public static class TaskPreviewVO {
        /** å·¥åºID */
        private Long processId;
        /** å·¥åºåç§° */
        private String processName;
        /** å·¥åºé¡ºåº */
        private Integer sort;
        /** å»ºè®®å·¥ä½œç«™ID */
        private Long suggestWorkstationId;
        /** å»ºè®®å·¥ä½œç«™åç§° */
        private String suggestWorkstationName;
        /** æŽ’产数量 */
        private BigDecimal quantity;
        /** é¢„计开始时间 */
        private LocalDateTime suggestStartTime;
        /** é¢„计结束时间 */
        private LocalDateTime suggestEndTime;
        /** æ˜¯å¦å…³é”®å·¥åº */
        private Boolean keyFlag;
    }
}
```
#### æ‰¹é‡æŠ¥å·¥è¯·æ±‚ VO
```java
@Data
public class MesProFeedbackBatchCreateReqVO {
    /** ä»»åŠ¡ID列表 */
    @NotEmpty(message = "任务ID列表不能为空")
    private List<Long> taskIds;
    /** æœ¬æ¬¡æŠ¥å·¥æ•°é‡ï¼ˆåº”用到所有任务) */
    @NotNull(message = "报工数量不能为空")
    @DecimalMin(value = "0.01", message = "报工数量必须大于0")
    private BigDecimal feedbackQuantity;
    /** åˆæ ¼å“æ•°é‡ï¼ˆåº”用到所有任务,非质检工序必填) */
    private BigDecimal qualifiedQuantity;
    /** ä¸è‰¯å“æ•°é‡ */
    private BigDecimal unqualifiedQuantity;
    /** å¤‡æ³¨ */
    private String remark;
}
```
---
## å››ã€æ•°æ®åº“变更
### 4.1 è¡¨ç»“构变更
```sql
-- =============================================
-- ç”Ÿäº§ä»»åŠ¡è¡¨æ–°å¢žå­—æ®µ
-- =============================================
ALTER TABLE mes_pro_task
    ADD COLUMN first_feedback_time datetime COMMENT '首次报工时间' AFTER cancel_date,
    ADD COLUMN last_feedback_time datetime COMMENT '最近报工时间' AFTER first_feedback_time;
-- =============================================
-- ç”Ÿäº§å·¥å•表新增字段
-- =============================================
ALTER TABLE mes_pro_work_order
    ADD COLUMN route_id bigint COMMENT '工艺路线编号' AFTER batch_code,
    ADD COLUMN auto_finish_flag tinyint(1) DEFAULT 1 COMMENT '是否自动完成(报工达标后自动完成工单)' AFTER route_id;
-- =============================================
-- è¡¥å……索引
-- =============================================
ALTER TABLE mes_pro_task ADD INDEX idx_work_order_process (work_order_id, process_id);
```
### 4.2 æžšä¸¾å€¼å˜æ›´
```sql
-- ä»»åŠ¡çŠ¶æ€æžšä¸¾æ‰©å±•
-- 0=草稿, 1=生产中, 2=部分完成, 3=已完成, 4=已取消
-- æ³¨æ„ï¼šéœ€è¦æ›´æ–°å­—典数据 mes_pro_task_status
INSERT INTO system_dict_data (sort, label, value, dict_type, status, color_type, css_class, remark)
VALUES
    (1, '生产中', '1', 'mes_pro_task_status', 0, 'processing', '', '任务正在生产中'),
    (2, '部分完成', '2', 'mes_pro_task_status', 0, 'warning', '', '任务部分完成');
-- æ›´æ–°åŽŸæœ‰æžšä¸¾çš„ sort
UPDATE system_dict_data SET sort = 0 WHERE dict_type = 'mes_pro_task_status' AND value = '0';
UPDATE system_dict_data SET sort = 3 WHERE dict_type = 'mes_pro_task_status' AND value = '3';
UPDATE system_dict_data SET sort = 4 WHERE dict_type = 'mes_pro_task_status' AND value = '4';
```
---
## äº”、实施计划
### 5.1 é˜¶æ®µä¸€ï¼šåŽç«¯æ ¸å¿ƒé€»è¾‘(预计 3 å¤©ï¼‰
| ä»»åŠ¡ | è¯´æ˜Ž | ä¼˜å…ˆçº§ |
|------|------|--------|
| ä»»åŠ¡çŠ¶æ€æžšä¸¾æ‰©å±• | æ–°å¢ž PRODUCING、PARTIAL_FINISHED çŠ¶æ€ | P0 |
| æ•°æ®åº“变更执行 | æ‰§è¡Œ SQL è„šæœ¬ | P0 |
| æŽ’产数量校验 | åˆ›å»º/删除任务时校验和更新工单已排产数量 | P0 |
| ä»»åŠ¡çŠ¶æ€è‡ªåŠ¨æµè½¬ | æŠ¥å·¥å®¡æ‰¹åŽè‡ªåŠ¨æ›´æ–°ä»»åŠ¡çŠ¶æ€ | P0 |
| å·¥å•进度自动更新 | æŠ¥å·¥å®¡æ‰¹åŽæ›´æ–°å·¥å•已生产数量 | P0 |
| å·¥å•自动完成检查 | æŠ¥å·¥è¾¾æ ‡åŽè‡ªåŠ¨å®Œæˆå·¥å• | P1 |
### 5.2 é˜¶æ®µäºŒï¼šæ–°æŽ¥å£å¼€å‘(预计 2 å¤©ï¼‰
| ä»»åŠ¡ | è¯´æ˜Ž | ä¼˜å…ˆçº§ |
|------|------|--------|
| ä¸€é”®æŽ’产接口 | æ ¹æ®å·¥è‰ºè·¯çº¿è‡ªåŠ¨ç”Ÿæˆä»»åŠ¡ | P0 |
| å·¥å•进度接口 | è¿”回工单各工序进度详情 | P0 |
| æ‰¹é‡æŠ¥å·¥æŽ¥å£ | æ‰¹é‡åˆ›å»ºæŠ¥å·¥å• | P1 |
### 5.3 é˜¶æ®µä¸‰ï¼šå‰ç«¯æ”¹é€ ï¼ˆé¢„计 4 å¤©ï¼‰
| ä»»åŠ¡ | è¯´æ˜Ž | ä¼˜å…ˆçº§ |
|------|------|--------|
| å·¥å•中心页面 | æ•´åˆå·¥å•、排产、报工到一个页面 | P0 |
| å·¥åºè¿›åº¦æ¡ç»„ä»¶ | å¯è§†åŒ–展示各工序进度 | P0 |
| å¿«é€ŸæŠ¥å·¥å…¥å£ | ä»»åŠ¡è¡Œç›´æŽ¥æŠ¥å·¥ | P0 |
| ä¸€é”®æŽ’产弹窗 | é€‰æ‹©å·¥è‰ºè·¯çº¿åŽé¢„览并确认排产 | P1 |
| æ‰¹é‡æŠ¥å·¥åŠŸèƒ½ | é€‰ä¸­å¤šä»»åŠ¡æ‰¹é‡æŠ¥å·¥ | P2 |
### 5.4 é˜¶æ®µå››ï¼šæµ‹è¯•与优化(预计 1 å¤©ï¼‰
- å•元测试覆盖新增逻辑
- é›†æˆæµ‹è¯•验证完整流程
- æ€§èƒ½æµ‹è¯•(一键排产、批量报工)
---
## å…­ã€é£Žé™©ä¸Žæ³¨æ„äº‹é¡¹
### 6.1 å…¼å®¹æ€§
- **老数据处理**:历史任务的 `status` éœ€è¦æŒ‰æ–°æžšä¸¾å€¼è¿ç§»
- **API å…¼å®¹**:新接口不影响现有接口,前端可逐步迁移
### 6.2 æ€§èƒ½è€ƒè™‘
- ä¸€é”®æŽ’产可能生成大量任务,建议限制单次排产数量(如最多 10 ä¸ªå·¥åºï¼‰
- æ‰¹é‡æŠ¥å·¥å»ºè®®é™åˆ¶æ‰¹é‡æ•°é‡ï¼ˆå¦‚最多 50 ä¸ªä»»åŠ¡ï¼‰
### 6.3 ä¸šåŠ¡è§„åˆ™ç¡®è®¤
- å·¥å•自动完成是否默认开启?(建议默认开启)
- éžå…³é”®å·¥åºæŠ¥å·¥æ˜¯å¦æ›´æ–°å·¥å•进度?(建议不更新,工单进度只看关键工序)
- ä»»åŠ¡éƒ¨åˆ†å®ŒæˆçŠ¶æ€æ˜¯å¦éœ€è¦æ˜Žç¡®åŒºåˆ†ï¼Ÿï¼ˆå»ºè®®ç®€åŒ–ä¸ºã€Œç”Ÿäº§ä¸­ã€åŒ…å«éƒ¨åˆ†å®Œæˆï¼‰
---
## ä¸ƒã€å‰ç«¯è”调方案
详见:`docs/work_order_center_integration.md`(待创建)
docs/sale_order_production_status.md
@@ -74,7 +74,7 @@
| ç”Ÿäº§çŠ¶æ€åˆå§‹å€¼ | é”€å”®è®¢å•审核通过时,productionStatus é»˜è®¤ä¸º 0(未完成) |
| ç”Ÿäº§çŠ¶æ€æ›´æ–°æ—¶æœº | å½“所有关联的生产订单完成时,系统自动更新为 1(已完成) |
| ç”Ÿäº§å®Œæˆåˆ¤æ–­ | å·²ç”Ÿäº§æ•°é‡ >= è®¡åˆ’数量 ä¸” æ‰€æœ‰æŠ¥å·¥å•已完成(含质检完成) |
| å‘货通知单生成 | å½“ productionStatus=1 æ—¶ï¼ŒcanCreateSalesNotice ä¸º true |
| å‘货通知单生成 | å½“ productionStatus=1 ä¸”未生成发货通知单时,canCreateSalesNotice ä¸º true |
## å±•示逻辑说明
@@ -99,7 +99,9 @@
## æ³¨æ„äº‹é¡¹
1. **状态联动**:`productionStatus` ä¸Ž `canCreateSalesNotice` å…³è”,生产未完成时无法生成发货通知单
1. **状态联动**:`canCreateSalesNotice` éœ€åŒæ—¶æ»¡è¶³ä¸¤ä¸ªæ¡ä»¶ï¼šç”Ÿäº§å·²å®Œæˆï¼ˆproductionStatus=1)且未生成发货通知单(hasSalesNotice=false)
2. **已生成发货通知单**:当 `hasSalesNotice=true` æ—¶ï¼Œä¸æ˜¾ç¤º"生成发货通知单"按钮
2. **无需生产的订单**:`needProduction !== 1` çš„订单,`productionStatus` å­—段为 null,前端应显示"无需生产"或不显示
docs/work_order_center_integration.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,506 @@
# å·¥å•中心 - å‰ç«¯è”调方案
## æ¶‰åŠé¡µé¢
- å·¥å•中心(新页面,整合工单列表、排产、报工)
- ç”Ÿäº§ä»»åŠ¡åˆ—è¡¨ï¼ˆä¿ç•™ï¼Œç”¨äºŽé«˜çº§ç®¡ç†ï¼‰
- æŠ¥å·¥åˆ—表(保留,用于报工记录查询)
## ä¸šåŠ¡æµç¨‹ä¸Žæ•°æ®å¸¦å…¥
### æµç¨‹1:工单创建 â†’ ç¡®è®¤ â†’ æŽ’产
```
1. åˆ›å»ºå·¥å•
   - é€‰æ‹©äº§å“ â†’ è‡ªåŠ¨åŠ è½½äº§å“é»˜è®¤å·¥è‰ºè·¯çº¿ï¼ˆè‹¥æœ‰ï¼‰
   - å¡«å†™æ•°é‡ã€éœ€æ±‚日期
   - ä¿å­˜åŽç”Ÿæˆå·¥å•BOM(从产品BOM自动带入)
2. ç¡®è®¤å·¥å•
   - å¯é€‰æ‹©/修改工艺路线
   - ç¡®è®¤åŽå·¥å•状态变为「已确认」
   - å·¥å•可开始排产
3. ä¸€é”®æŽ’产
   - ç‚¹å‡»ã€Œä¸€é”®æŽ’产」→ å¼¹çª—选择工艺路线 â†’ é¢„览任务列表 â†’ ç¡®è®¤ç”Ÿæˆ
   - è‡ªåŠ¨æŒ‰å·¥è‰ºè·¯çº¿å·¥åºåˆ—è¡¨ç”Ÿæˆä»»åŠ¡
   - è‡ªåŠ¨åˆ†é…å·¥ä½œç«™ï¼ˆæŒ‰å·¥è‰ºè·¯çº¿å·¥åºé…ç½®ï¼‰
   - è‡ªåŠ¨åˆ›å»ºå·¥å•å·¥åºè®°å½•
```
### æµç¨‹2:任务报工
```
1. ä»Žå·¥å•中心报工
   - ç‚¹å‡»å·¥å• â†’ å±•开工序进度 â†’ é€‰æ‹©å·¥åº â†’ æŸ¥çœ‹ä»»åŠ¡åˆ—è¡¨
   - ç‚¹å‡»ä»»åŠ¡è¡Œçš„ã€ŒæŠ¥å·¥ã€æŒ‰é’® â†’ å¼¹å‡ºæŠ¥å·¥è¡¨å•
   - è¡¨å•自动带入:任务编码、工作站、计划数量、已报工数量
2. ä»Žä»»åŠ¡åˆ—è¡¨æŠ¥å·¥
   - é€‰ä¸­ä»»åŠ¡ â†’ ç‚¹å‡»ã€ŒæŠ¥å·¥ã€â†’ å¼¹å‡ºæŠ¥å·¥è¡¨å•
   - æ•°æ®åŒä¸Šè‡ªåЍ另入
3. æŠ¥å·¥æäº¤åŽ
   - ä»»åŠ¡çŠ¶æ€è‡ªåŠ¨æµè½¬ï¼ˆè‰ç¨¿ â†’ ç”Ÿäº§ä¸­ â†’ å·²å®Œæˆï¼‰
   - å·¥å•进度自动更新(关键工序报工累加工单已生产数量)
   - å·¥å•可自动完成(若已生产 >= è®¡åˆ’)
```
---
## API
### å·¥å•相关
| æ–¹æ³• | è·¯å¾„ | è¯´æ˜Ž |
|------|------|------|
| POST | /mes/pro-work-order/create | åˆ›å»ºå·¥å• |
| PUT | /mes/pro-work-order/update | æ›´æ–°å·¥å• |
| POST | /mes/pro-work-order/confirm | ç¡®è®¤å·¥å• |
| GET | /mes/pro-work-order/get | èŽ·å–å·¥å•è¯¦æƒ… |
| GET | /mes/pro-work-order/page | åˆ†é¡µæŸ¥è¯¢å·¥å• |
| **GET** | /mes/pro-work-order/progress/{id} | **新增:获取工单进度详情** |
| **POST** | /mes/pro-work-order/check-auto-finish/{id} | **新增:检查并自动完成工单** |
### ä»»åŠ¡ç›¸å…³
| æ–¹æ³• | è·¯å¾„ | è¯´æ˜Ž |
|------|------|------|
| POST | /mes/pro-task/create | åˆ›å»ºä»»åŠ¡ |
| PUT | /mes/pro-task/update | æ›´æ–°ä»»åŠ¡ |
| DELETE | /mes/pro-task/delete | åˆ é™¤ä»»åŠ¡ |
| GET | /mes/pro-task/page | åˆ†é¡µæŸ¥è¯¢ä»»åŠ¡ |
| **POST** | /mes/pro-task/auto-generate | **新增:一键排产** |
| **POST** | /mes/pro-task/auto-generate/preview | **新增:一键排产预览** |
### æŠ¥å·¥ç›¸å…³
| æ–¹æ³• | è·¯å¾„ | è¯´æ˜Ž |
|------|------|------|
| POST | /mes/pro-feedback/create | åˆ›å»ºæŠ¥å·¥ |
| PUT | /mes/pro-feedback/update | æ›´æ–°æŠ¥å·¥ |
| POST | /mes/pro-feedback/submit | æäº¤æŠ¥å·¥ |
| POST | /mes/pro-feedback/approve | å®¡æ‰¹æŠ¥å·¥ |
| **POST** | /mes/pro-feedback/batch-create | **新增:批量报工** |
| **POST** | /mes/pro-feedback/quick-create | **新增:快速报工(保存并提交)** |
---
## æŽ¥å£è¯¦æƒ…
### 1. èŽ·å–å·¥å•è¿›åº¦è¯¦æƒ…
**GET** `/mes/pro-work-order/progress/{id}`
**响应字段:**
| å­—段 | ç±»åž‹ | è¯´æ˜Ž |
|------|------|------|
| workOrderId | Long | å·¥å•ID |
| workOrderCode | String | å·¥å•编码 |
| quantity | Decimal | ç”Ÿäº§æ•°é‡ |
| quantityScheduled | Decimal | å·²æŽ’产数量 |
| quantityProduced | Decimal | å·²ç”Ÿäº§æ•°é‡ |
| progressPercent | Decimal | æ€»è¿›åº¦ç™¾åˆ†æ¯” |
| processList | Array | å·¥åºè¿›åº¦åˆ—表 |
| processList[].processId | Long | å·¥åºID |
| processList[].processCode | String | å·¥åºç¼–码 |
| processList[].processName | String | å·¥åºåç§° |
| processList[].keyFlag | Boolean | æ˜¯å¦å…³é”®å·¥åº |
| processList[].plannedQuantity | Decimal | è®¡åˆ’数量(关键工序) |
| processList[].producedQuantity | Decimal | å·²ç”Ÿäº§æ•°é‡ |
| processList[].progressPercent | Decimal | è¿›åº¦ç™¾åˆ†æ¯” |
| processList[].status | Integer | å·¥åºçŠ¶æ€ï¼ˆ0=未开始, 1=进行中, 2=已完成) |
| processList[].taskList | Array | ä»»åŠ¡åˆ—è¡¨ |
| taskList[].taskId | Long | ä»»åŠ¡ID |
| taskList[].taskCode | String | ä»»åŠ¡ç¼–ç  |
| taskList[].workstationName | String | å·¥ä½œç«™åç§° |
| taskList[].quantity | Decimal | æŽ’产数量 |
| taskList[].producedQuantity | Decimal | å·²ç”Ÿäº§æ•°é‡ |
| taskList[].progressPercent | Decimal | è¿›åº¦ç™¾åˆ†æ¯” |
| taskList[].status | Integer | ä»»åŠ¡çŠ¶æ€ |
**响应示例:**
```json
{
  "code": 0,
  "data": {
    "workOrderId": 1001,
    "workOrderCode": "WO202401150001",
    "quantity": 100,
    "quantityScheduled": 100,
    "quantityProduced": 80,
    "progressPercent": 80,
    "processList": [
      {
        "processId": 1,
        "processCode": "P001",
        "processName": "下料",
        "keyFlag": false,
        "plannedQuantity": null,
        "producedQuantity": 100,
        "progressPercent": 100,
        "status": 2,
        "taskList": [
          {
            "taskId": 101,
            "taskCode": "T202401150001",
            "workstationName": "下料区-A01",
            "quantity": 100,
            "producedQuantity": 100,
            "progressPercent": 100,
            "status": 3
          }
        ]
      },
      {
        "processId": 2,
        "processCode": "P002",
        "processName": "机加工",
        "keyFlag": true,
        "plannedQuantity": 100,
        "producedQuantity": 80,
        "progressPercent": 80,
        "status": 1,
        "taskList": [
          {
            "taskId": 102,
            "taskCode": "T202401150002",
            "workstationName": "CNC-01",
            "quantity": 60,
            "producedQuantity": 60,
            "progressPercent": 100,
            "status": 3
          },
          {
            "taskId": 103,
            "taskCode": "T202401150003",
            "workstationName": "CNC-02",
            "quantity": 40,
            "producedQuantity": 20,
            "progressPercent": 50,
            "status": 1
          }
        ]
      }
    ]
  }
}
```
### 2. ä¸€é”®æŽ’产预览
**POST** `/mes/pro-task/auto-generate/preview`
**请求参数:**
| å‚æ•° | ç±»åž‹ | å¿…å¡« | è¯´æ˜Ž |
|------|------|------|------|
| workOrderId | Long | æ˜¯ | å·¥å•ID |
| routeId | Long | å¦ | å·¥è‰ºè·¯çº¿ID(不传则使用工单关联的工艺路线) |
**响应字段:**
| å­—段 | ç±»åž‹ | è¯´æ˜Ž |
|------|------|------|
| workOrderId | Long | å·¥å•ID |
| routeId | Long | å·¥è‰ºè·¯çº¿ID |
| routeName | String | å·¥è‰ºè·¯çº¿åç§° |
| taskList | Array | é¢„生成任务列表 |
| taskList[].processId | Long | å·¥åºID |
| taskList[].processName | String | å·¥åºåç§° |
| taskList[].sort | Integer | å·¥åºé¡ºåº |
| taskList[].suggestWorkstationId | Long | å»ºè®®å·¥ä½œç«™ID |
| taskList[].suggestWorkstationName | String | å»ºè®®å·¥ä½œç«™åç§° |
| taskList[].quantity | Decimal | æŽ’产数量 |
| taskList[].keyFlag | Boolean | æ˜¯å¦å…³é”®å·¥åº |
**响应示例:**
```json
{
  "code": 0,
  "data": {
    "workOrderId": 1001,
    "routeId": 101,
    "routeName": "产品A-标准工艺",
    "taskList": [
      {
        "processId": 1,
        "processName": "下料",
        "sort": 1,
        "suggestWorkstationId": 201,
        "suggestWorkstationName": "下料区-A01",
        "quantity": 100,
        "keyFlag": false
      },
      {
        "processId": 2,
        "processName": "机加工",
        "sort": 2,
        "suggestWorkstationId": 202,
        "suggestWorkstationName": "CNC-01",
        "quantity": 100,
        "keyFlag": true
      }
    ]
  }
}
```
### 3. ä¸€é”®æŽ’产执行
**POST** `/mes/pro-task/auto-generate`
**请求参数:**
| å‚æ•° | ç±»åž‹ | å¿…å¡« | è¯´æ˜Ž |
|------|------|------|------|
| workOrderId | Long | æ˜¯ | å·¥å•ID |
| routeId | Long | å¦ | å·¥è‰ºè·¯çº¿ID |
| autoAssignWorkstation | Boolean | å¦ | æ˜¯å¦è‡ªåŠ¨åˆ†é…å·¥ä½œç«™ï¼ˆé»˜è®¤true) |
| autoCalculateTime | Boolean | å¦ | æ˜¯å¦è‡ªåŠ¨è®¡ç®—ç”Ÿäº§æ—¶é—´ï¼ˆé»˜è®¤true) |
**响应字段:**
| å­—段 | ç±»åž‹ | è¯´æ˜Ž |
|------|------|------|
| taskIds | Array\<Long\> | ç”Ÿæˆçš„任务ID列表 |
**响应示例:**
```json
{
  "code": 0,
  "data": {
    "taskIds": [101, 102, 103, 104, 105]
  }
}
```
### 4. å¿«é€ŸæŠ¥å·¥
**POST** `/mes/pro-feedback/quick-create`
**说明**:创建报工单并直接提交(跳过草稿状态),适用于快速报工场景
**请求参数:**
| å‚æ•° | ç±»åž‹ | å¿…å¡« | è¯´æ˜Ž |
|------|------|------|------|
| taskId | Long | æ˜¯ | ä»»åŠ¡ID |
| feedbackQuantity | Decimal | æ˜¯ | æœ¬æ¬¡æŠ¥å·¥æ•°é‡ |
| qualifiedQuantity | Decimal | å¦ | åˆæ ¼å“æ•°é‡ï¼ˆéžè´¨æ£€å·¥åºå¿…填) |
| unqualifiedQuantity | Decimal | å¦ | ä¸è‰¯å“æ•°é‡ |
| remark | String | å¦ | å¤‡æ³¨ |
**响应字段:**
| å­—段 | ç±»åž‹ | è¯´æ˜Ž |
|------|------|------|
| feedbackId | Long | æŠ¥å·¥å•ID |
| taskStatus | Integer | ä»»åŠ¡çŠ¶æ€ï¼ˆæŠ¥å·¥åŽå¯èƒ½å˜åŒ–ï¼‰ |
| workOrderStatus | Integer | å·¥å•状态(可能自动完成) |
**响应示例:**
```json
{
  "code": 0,
  "data": {
    "feedbackId": 201,
    "taskStatus": 1,
    "workOrderStatus": 1
  }
}
```
### 5. æ‰¹é‡æŠ¥å·¥
**POST** `/mes/pro-feedback/batch-create`
**请求参数:**
| å‚æ•° | ç±»åž‹ | å¿…å¡« | è¯´æ˜Ž |
|------|------|------|------|
| taskIds | Array\<Long\> | æ˜¯ | ä»»åŠ¡ID列表 |
| feedbackQuantity | Decimal | æ˜¯ | æœ¬æ¬¡æŠ¥å·¥æ•°é‡ï¼ˆåº”用到所有任务) |
| qualifiedQuantity | Decimal | å¦ | åˆæ ¼å“æ•°é‡ï¼ˆéžè´¨æ£€å·¥åºå¿…填) |
| unqualifiedQuantity | Decimal | å¦ | ä¸è‰¯å“æ•°é‡ |
| remark | String | å¦ | å¤‡æ³¨ |
**响应字段:**
| å­—段 | ç±»åž‹ | è¯´æ˜Ž |
|------|------|------|
| successCount | Integer | æˆåŠŸæ•°é‡ |
| failCount | Integer | å¤±è´¥æ•°é‡ |
| results | Array | è¯¦ç»†ç»“果列表 |
| results[].taskId | Long | ä»»åŠ¡ID |
| results[].success | Boolean | æ˜¯å¦æˆåŠŸ |
| results[].feedbackId | Long | æŠ¥å·¥å•ID(成功时有值) |
| results[].errorMsg | String | é”™è¯¯ä¿¡æ¯ï¼ˆå¤±è´¥æ—¶æœ‰å€¼ï¼‰ |
**响应示例:**
```json
{
  "code": 0,
  "data": {
    "successCount": 2,
    "failCount": 1,
    "results": [
      { "taskId": 101, "success": true, "feedbackId": 201 },
      { "taskId": 102, "success": true, "feedbackId": 202 },
      { "taskId": 103, "success": false, "errorMsg": "任务已完成,不能报工" }
    ]
  }
}
```
---
## å­—段展示规则
### å·¥å•列表
| å­—段 | å±•示位置 | è¯´æ˜Ž |
|------|----------|------|
| å·¥å•编码 | åˆ—表、详情 | å¯ç‚¹å‡»æ‰“开详情 |
| äº§å“ç¼–码/名称 | åˆ—表、详情 | - |
| ç”Ÿäº§æ•°é‡ | åˆ—表、详情 | - |
| å·²æŽ’产数量 | åˆ—表 | è¿›åº¦æ¡å·¦ä¾§æ˜¾ç¤º |
| å·²ç”Ÿäº§æ•°é‡ | åˆ—表 | è¿›åº¦æ¡å³ä¾§æ˜¾ç¤º |
| è¿›åº¦ | åˆ—表 | è¿›åº¦æ¡å±•示百分比 |
| çŠ¶æ€ | åˆ—表、详情 | è‰ç¨¿/已确认/生产中/已完成/已取消 |
| éœ€æ±‚日期 | åˆ—表、详情 | - |
| å®¢æˆ·åç§° | åˆ—表、详情 | - |
| æ“ä½œ | åˆ—表 | æ ¹æ®çŠ¶æ€æ˜¾ç¤ºä¸åŒæŒ‰é’® |
### å·¥åºè¿›åº¦æ¡
| å­—段 | å±•示位置 | è¯´æ˜Ž |
|------|----------|------|
| å·¥åºåç§° | è¿›åº¦æ¡èŠ‚ç‚¹ | æ˜¾ç¤ºåœ¨èŠ‚ç‚¹ä¸Š |
| è¿›åº¦ç™¾åˆ†æ¯” | è¿›åº¦æ¡èŠ‚ç‚¹ | æ˜¾ç¤ºåœ¨èŠ‚ç‚¹ä¸‹æ–¹ |
| çŠ¶æ€æ ‡è¯† | è¿›åº¦æ¡èŠ‚ç‚¹ | ä¸åŒé¢œè‰²åŒºåˆ†ï¼šæœªå¼€å§‹(灰)/进行中(蓝)/已完成(绿) |
### ä»»åŠ¡åˆ—è¡¨
| å­—段 | å±•示位置 | è¯´æ˜Ž |
|------|----------|------|
| ä»»åŠ¡ç¼–ç  | åˆ—表 | å¯ç‚¹å‡»æ‰“开详情 |
| å·¥åºåç§° | åˆ—表 | - |
| å·¥ä½œç«™åç§° | åˆ—表 | - |
| æŽ’产数量 | åˆ—表 | - |
| å·²ç”Ÿäº§æ•°é‡ | åˆ—表 | - |
| è¿›åº¦ | åˆ—表 | è¿›åº¦æ¡ |
| çŠ¶æ€ | åˆ—表 | è‰ç¨¿/生产中/部分完成/已完成/已取消 |
| æ“ä½œ | åˆ—表 | æŠ¥å·¥/编辑/删除 |
---
## ä¸šåŠ¡è§„åˆ™è¯´æ˜Ž
### çŠ¶æ€ä¸Žæ“ä½œæƒé™
| å·¥å•状态 | å¯æ‰§è¡Œæ“ä½œ |
|----------|-----------|
| è‰ç¨¿ | ç¼–辑、删除、确认 |
| å·²ç¡®è®¤ | æŽ’产、取消 |
| ç”Ÿäº§ä¸­ | æŠ¥å·¥ã€å®Œæˆï¼ˆæ‰‹åŠ¨ï¼‰ |
| å·²å®Œæˆ | æŸ¥çœ‹è¯¦æƒ… |
| å·²å–消 | æŸ¥çœ‹è¯¦æƒ… |
| ä»»åŠ¡çŠ¶æ€ | å¯æ‰§è¡Œæ“ä½œ |
|----------|-----------|
| è‰ç¨¿ | ç¼–辑、删除、报工 |
| ç”Ÿäº§ä¸­ | æŠ¥å·¥ |
| éƒ¨åˆ†å®Œæˆ | æŠ¥å·¥ |
| å·²å®Œæˆ | æŸ¥çœ‹è¯¦æƒ… |
| å·²å–消 | æŸ¥çœ‹è¯¦æƒ… |
### è¿›åº¦è®¡ç®—规则
| è¿›åº¦ç±»åž‹ | è®¡ç®—方式 |
|----------|---------|
| ä»»åŠ¡è¿›åº¦ | å·²ç”Ÿäº§æ•°é‡ / æŽ’产数量 Ã— 100% |
| å·¥åºè¿›åº¦ | å·¥åºä¸‹æ‰€æœ‰ä»»åŠ¡çš„å·²ç”Ÿäº§æ•°é‡ä¹‹å’Œ / è®¡åˆ’数量 Ã— 100% |
| å·¥å•进度 | å·²ç”Ÿäº§æ•°é‡ / ç”Ÿäº§æ•°é‡ Ã— 100%(仅关键工序计入) |
### è‡ªåŠ¨å®Œæˆè§„åˆ™
| æ¡ä»¶ | è¯´æ˜Ž |
|------|------|
| ä»»åŠ¡è‡ªåŠ¨å®Œæˆ | å·²ç”Ÿäº§æ•°é‡ >= æŽ’产数量 |
| å·¥å•自动完成 | å·²ç”Ÿäº§æ•°é‡ >= ç”Ÿäº§æ•°é‡ ä¸” autoFinishFlag = true |
---
## æ³¨æ„äº‹é¡¹
1. **工单创建时工艺路线选择**
   - é€‰æ‹©äº§å“åŽè‡ªåŠ¨æŸ¥è¯¢äº§å“å…³è”çš„å·¥è‰ºè·¯çº¿
   - å¦‚果只有一个工艺路线,自动选中
   - å¦‚果有多个,下拉供用户选择
   - å¦‚果没有,提示用户先配置工艺路线
2. **一键排产**
   - å·¥å•必须为「已确认」状态
   - åŒä¸€å·¥åºå¯å¤šæ¬¡æŽ’产(拆分任务)
   - æŽ’产时校验:已排产数量 + æœ¬æ¬¡æŽ’产数量 <= å·¥å•数量
3. **快速报工**
   - ä»Žä»»åŠ¡åˆ—è¡¨è¿›å…¥æ—¶ï¼Œä»»åŠ¡ä¿¡æ¯è‡ªåŠ¨å¸¦å…¥ï¼Œä¸å¯ä¿®æ”¹
   - éžè´¨æ£€å·¥åºï¼šéœ€è¦å¡«å†™åˆæ ¼å“/不良品数量
   - è´¨æ£€å·¥åºï¼šåªéœ€å¡«å†™æŠ¥å·¥æ•°é‡ï¼Œç­‰å¾…质检结果
4. **批量报工**
   - é€‰ä¸­å¤šä¸ªä»»åŠ¡æ—¶ï¼Œå¿…é¡»æ˜¯åŒä¸€å·¥åº
   - æŠ¥å·¥æ•°é‡ç›¸åŒåº”用到所有选中任务
   - éƒ¨åˆ†æˆåŠŸéƒ¨åˆ†å¤±è´¥æ—¶ï¼Œè¿”å›žè¯¦ç»†ç»“æžœ
5. **进度实时性**
   - æŠ¥å·¥å®¡æ‰¹é€šè¿‡åŽï¼Œä»»åŠ¡è¿›åº¦ã€å·¥åºè¿›åº¦ã€å·¥å•è¿›åº¦éƒ½éœ€è¦å®žæ—¶æ›´æ–°
   - å»ºè®®ä½¿ç”¨ WebSocket æˆ–轮询机制更新进度条
---
## å‰ç«¯ç»„件建议
### è¿›åº¦æ¡ç»„ä»¶
```typescript
// ä½¿ç”¨ç¤ºä¾‹
<ProcessProgressBar
  :process-list="progressData.processList"
  :active-process-id="activeProcessId"
  @process-click="handleProcessClick"
/>
```
### å·¥å•卡片组件
```typescript
// ä½¿ç”¨ç¤ºä¾‹
<WorkOrderCard
  :work-order="row"
  :show-actions="true"
  @detail="handleDetail"
  @schedule="handleSchedule"
  @report="handleReport"
/>
```
### å¿«é€ŸæŠ¥å·¥è¡¨å•组件
```typescript
// ä½¿ç”¨ç¤ºä¾‹
<QuickFeedbackForm
  :task-id="selectedTask.id"
  :visible="showQuickFeedback"
  @success="handleFeedbackSuccess"
  @cancel="showQuickFeedback = false"
/>
```
docs/work_order_process_integration.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,229 @@
# ç”Ÿäº§å·¥å•工序 - å‰ç«¯è”调方案
## æ¶‰åŠé¡µé¢
- ç”Ÿäº§å·¥å•列表页面
- ç”Ÿäº§å·¥å•详情/编辑页面(新增工序 Tab)
## ä¸šåŠ¡æµç¨‹ä¸Žæ•°æ®å¸¦å…¥
1. **创建工单** â†’ è‡ªåŠ¨æ ¹æ®äº§å“å…³è”çš„å·¥è‰ºè·¯çº¿ç”Ÿæˆå·¥åºåˆ—è¡¨
2. **编辑工单** â†’ å¯æ‰‹åŠ¨è°ƒæ•´å·¥åºï¼ˆå¢žåˆ æ”¹ï¼‰
3. **产品变更** â†’ è‡ªåŠ¨é‡æ–°ç”Ÿæˆå·¥åºï¼ˆå…ˆåˆ åŽæ’ï¼‰
## API
| æ–¹æ³• | è·¯å¾„ | è¯´æ˜Ž |
|------|------|------|
| GET | /mes/pro/work-order-process/list-by-work-order-id | èŽ·å–å·¥å•å·¥åºåˆ—è¡¨ |
| POST | /mes/pro/work-order-process/create | æ–°å¢žå·¥åº |
| PUT | /mes/pro/work-order-process/update | æ›´æ–°å·¥åº |
| DELETE | /mes/pro/work-order-process/delete | åˆ é™¤å·¥åº |
### 1. èŽ·å–å·¥å•å·¥åºåˆ—è¡¨
**请求:**
```
GET /mes/pro/work-order-process/list-by-work-order-id?workOrderId=29
```
**响应字段:**
| å­—段 | ç±»åž‹ | è¯´æ˜Ž |
|------|------|------|
| id | Long | å·¥åºID |
| workOrderId | Long | å·¥å•ID |
| processId | Long | å·¥åºç¼–号 |
| processCode | String | å·¥åºç¼–码 |
| processName | String | å·¥åºåç§° |
| sort | Integer | åºå· |
| nextProcessId | Long | ä¸‹ä¸€é“工序编号 |
| nextProcessName | String | ä¸‹ä¸€é“工序名称 |
| linkType | Integer | ä¸Žä¸‹ä¸€é“工序关系(0=开始-开始, 1=结束-结束, 2=开始-结束, 3=结束-开始) |
| prepareTime | Integer | å‡†å¤‡æ—¶é—´ï¼ˆåˆ†é’Ÿï¼‰ |
| waitTime | Integer | ç­‰å¾…时间(分钟) |
| colorCode | String | ç”˜ç‰¹å›¾æ˜¾ç¤ºé¢œè‰² |
| keyFlag | Boolean | æ˜¯å¦å…³é”®å·¥åº |
| checkFlag | Boolean | æ˜¯å¦è´¨æ£€å·¥åº |
| backflushFlag | Boolean | æ˜¯å¦å€’冲 |
| outputItemId | Long | äº§å‡ºäº§å“ç‰©æ–™ç¼–号 |
| outputItemCode | String | äº§å‡ºäº§å“ç‰©æ–™ç¼–码 |
| outputItemName | String | äº§å‡ºäº§å“ç‰©æ–™åç§° |
| remark | String | å¤‡æ³¨ |
**响应示例:**
```json
{
  "code": 0,
  "data": [
    {
      "id": 1,
      "workOrderId": 29,
      "processId": 10,
      "processCode": "GX_001",
      "processName": "拉丝",
      "sort": 1,
      "nextProcessId": 11,
      "nextProcessName": "绞线",
      "linkType": 3,
      "prepareTime": 1,
      "waitTime": 1,
      "colorCode": "#00AEF3",
      "keyFlag": false,
      "checkFlag": false,
      "backflushFlag": true,
      "outputItemId": 42,
      "outputItemCode": "M001",
      "outputItemName": "铝单线",
      "remark": ""
    },
    {
      "id": 2,
      "workOrderId": 29,
      "processId": 11,
      "processCode": "GX_002",
      "processName": "绞线",
      "sort": 2,
      "nextProcessId": null,
      "nextProcessName": null,
      "linkType": 1,
      "prepareTime": 1,
      "waitTime": 1,
      "colorCode": "#00AEF3",
      "keyFlag": true,
      "checkFlag": false,
      "backflushFlag": true,
      "outputItemId": 43,
      "outputItemCode": "M002",
      "outputItemName": "钢芯铝绞线",
      "remark": ""
    }
  ],
  "msg": "操作成功"
}
```
### 2. æ–°å¢žå·¥åº
**请求:**
```
POST /mes/pro/work-order-process/create
```
**请求参数:**
| å‚æ•° | ç±»åž‹ | å¿…å¡« | è¯´æ˜Ž |
|------|------|------|------|
| workOrderId | Long | æ˜¯ | ç”Ÿäº§å·¥å•编号 |
| processId | Long | æ˜¯ | å·¥åºç¼–号(选择工序) |
| sort | Integer | æ˜¯ | åºå· |
| linkType | Integer | å¦ | ä¸Žä¸‹ä¸€é“工序关系 |
| prepareTime | Integer | å¦ | å‡†å¤‡æ—¶é—´ï¼ˆåˆ†é’Ÿï¼‰ |
| waitTime | Integer | å¦ | ç­‰å¾…时间(分钟) |
| colorCode | String | å¦ | ç”˜ç‰¹å›¾æ˜¾ç¤ºé¢œè‰² |
| keyFlag | Boolean | å¦ | æ˜¯å¦å…³é”®å·¥åºï¼ˆé»˜è®¤ false) |
| checkFlag | Boolean | å¦ | æ˜¯å¦è´¨æ£€å·¥åºï¼ˆé»˜è®¤ false) |
| backflushFlag | Boolean | å¦ | æ˜¯å¦å€’冲(默认 true) |
| outputItemId | Long | å¦ | äº§å‡ºäº§å“ç‰©æ–™ç¼–号 |
| remark | String | å¦ | å¤‡æ³¨ |
**响应:** `{ "code": 0, "data": 1, "msg": "操作成功" }`
### 3. æ›´æ–°å·¥åº
**请求:**
```
PUT /mes/pro/work-order-process/update
```
**请求参数:** åŒæ–°å¢žï¼Œé¢å¤–包含 `id` å­—段
**响应:** `{ "code": 0, "msg": "操作成功" }`
### 4. åˆ é™¤å·¥åº
**请求:**
```
DELETE /mes/pro/work-order-process/delete?id=1
```
**响应:** `{ "code": 0, "msg": "操作成功" }`
## å­—段展示规则
| å­—段 | å±•示位置 | è¯´æ˜Ž |
|------|----------|------|
| sort | åˆ—表、表单 | åºå·ï¼Œå¿…填,同一工单内唯一 |
| processCode/processName | åˆ—表、表单 | å·¥åºç¼–码/名称,选择工序时带入(调用 `/mes/pro/process/simple-list`) |
| keyFlag | åˆ—表、表单 | æ˜¯å¦å…³é”®å·¥åºï¼Œå•选框,同一工单只能有一个关键工序 |
| checkFlag | åˆ—表、表单 | æ˜¯å¦è´¨æ£€å·¥åºï¼Œå•选框 |
| backflushFlag | åˆ—表、表单 | æ˜¯å¦å€’冲,单选框,默认 true |
| prepareTime/waitTime | è¡¨å• | å‡†å¤‡/等待时间,数字输入,单位:分钟 |
| colorCode | è¡¨å• | ç”˜ç‰¹å›¾é¢œè‰²ï¼Œé¢œè‰²é€‰æ‹©å™¨ï¼Œé»˜è®¤ #00AEF3 |
| outputItemCode/outputItemName | è¡¨å• | äº§å‡ºç‰©æ–™ï¼Œç‰©æ–™é€‰æ‹©å™¨ï¼ˆè°ƒç”¨ `/md/item/simple-list`),为空时默认用工单的成品 |
| linkType | è¡¨å• | å·¥åºå…³ç³»ï¼Œä¸‹æ‹‰é€‰æ‹©ï¼ˆ0=开始-开始, 1=结束-结束, 2=开始-结束, 3=结束-开始) |
| remark | è¡¨å• | å¤‡æ³¨ï¼Œæ–‡æœ¬è¾“å…¥ |
## ä¸šåŠ¡è§„åˆ™è¯´æ˜Ž
| åœºæ™¯ | è§„则 |
|------|------|
| åˆ›å»ºå·¥å• | æ ¹æ®äº§å“å…³è”的工艺路线自动生成工序列表(如果产品有工艺路线) |
| æ›´æ¢äº§å“ | è‡ªåŠ¨é‡æ–°ç”Ÿæˆå·¥åºï¼ˆå…ˆåˆ é™¤æ—§å·¥åºï¼Œå†ç”Ÿæˆæ–°å·¥åºï¼‰ |
| æ–°å¢žå·¥åº | æ ¡éªŒåºå·å”¯ä¸€ã€å·¥åºå”¯ä¸€ï¼›å…³é”®å·¥åºåªèƒ½æœ‰ä¸€ä¸ª |
| åˆ é™¤å·¥åº | åˆ é™¤åŽè‡ªåŠ¨é‡å»ºå·¥åºé“¾ï¼ˆnextProcessId) |
| ç¼–辑工序 | ä¿®æ”¹åºå·åŽè‡ªåŠ¨é‡å»ºå·¥åºé“¾ |
| äº§å“æ— å·¥è‰ºè·¯çº¿ | ä¸ç”Ÿæˆå·¥åºï¼Œå·¥åºåˆ—表为空,用户可手动添加 |
## æŽ¥å£è°ƒç”¨æ—¶åº
### åˆ›å»ºå·¥å•场景
1. ç”¨æˆ·å¡«å†™å·¥å•信息,选择产品
2. æäº¤åˆ›å»ºè¯·æ±‚ â†’ `POST /mes/pro/work-order/create`
3. åŽç«¯è‡ªåŠ¨ç”Ÿæˆ BOM å’Œå·¥åº
4. ç”¨æˆ·è¿›å…¥å·¥å•详情 â†’ å¯æŸ¥çœ‹è‡ªåŠ¨ç”Ÿæˆçš„å·¥åºåˆ—è¡¨
### ç¼–辑工序场景
1. ç”¨æˆ·è¿›å…¥å·¥å•详情,切换到"工序"Tab
2. è°ƒç”¨ `GET /mes/pro/work-order-process/list-by-work-order-id` èŽ·å–å·¥åºåˆ—è¡¨
3. ç”¨æˆ·å¯è¿›è¡Œï¼š
   - æ–°å¢žå·¥åºï¼šå¼¹å‡ºè¡¨å•,选择工序,填写参数 â†’ `POST /create`
   - ç¼–辑工序:点击行,修改参数 â†’ `PUT /update`
   - åˆ é™¤å·¥åºï¼šç‚¹å‡»åˆ é™¤æŒ‰é’® â†’ `DELETE /delete`
## å…³è”数据获取接口
### å·¥åºé€‰æ‹©
```
GET /mes/pro/process/simple-list
```
返回启用状态的工序列表,用于下拉选择。
**响应示例:**
```json
{
  "code": 0,
  "data": [
    { "id": 10, "code": "GX_001", "name": "拉丝" },
    { "id": 11, "code": "GX_002", "name": "绞线" }
  ]
}
```
### ç‰©æ–™é€‰æ‹©
```
GET /md/item/simple-list
```
返回启用状态的物料列表,用于产出物料选择。
## æ³¨æ„äº‹é¡¹
- å·¥å•工序数据独立于工艺路线,创建后可灵活调整,不会影响原始工艺路线
- å·¥åºçš„ `nextProcessId` ç”±åŽç«¯è‡ªåŠ¨ç»´æŠ¤ï¼Œå‰ç«¯æ— éœ€å¤„ç†
- å…³é”®å·¥åºï¼ˆkeyFlag=true)每个工单只能有一个,新增/编辑时需校验
- äº§å“å˜æ›´ä¼šé‡æ–°ç”Ÿæˆå·¥åºï¼ŒåŽŸæœ‰æ‰‹åŠ¨è°ƒæ•´ä¼šä¸¢å¤±
- æƒé™å¤ç”¨å·¥å•权限:`mes:pro-work-order:query`(查询)、`mes:pro-work-order:update`(增删改)
- å·¥åºé€‰æ‹©ä½¿ç”¨ `/mes/pro/process/simple-list` æŽ¥å£
- ç‰©æ–™é€‰æ‹©ä½¿ç”¨ `/md/item/simple-list` æŽ¥å£
scripts/browser-test.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
const { chromium } = require('playwright');
(async () => {
  try {
    // å¯åŠ¨æµè§ˆå™¨ï¼ˆä½¿ç”¨æŒä¹…åŒ–ä¸Šä¸‹æ–‡ä»¥ä½¿ç”¨å·²ç™»å½•çš„ä¼šè¯ï¼‰
    const browser = await chromium.launch({ headless: false });
    console.log('浏览器已启动');
    const context = await browser.newContext();
    const page = await context.newPage();
    // è®¿é—®è…¾è®¯æ–‡æ¡£
    console.log('正在访问腾讯文档...');
    await page.goto('https://docs.qq.com/sheet/DWWVMTEVSa1dVb3BF?tab=ggdtuh', {
      waitUntil: 'networkidle',
      timeout: 60000
    });
    // ç­‰å¾…页面加载
    await page.waitForTimeout(5000);
    const title = await page.title();
    console.log(`页面标题: ${title}`);
    console.log(`当前URL: ${page.url()}`);
    // å°è¯•获取页面内容
    const content = await page.content();
    console.log('\n页面内容长度:', content.length);
    // æˆªå›¾ä¿å­˜
    await page.screenshot({ path: 'screenshot.png', fullPage: true });
    console.log('截图已保存到 screenshot.png');
    // ç­‰å¾…用户查看
    await page.waitForTimeout(10000);
    await browser.close();
  } catch (error) {
    console.error('错误:', error.message);
  }
})();
scripts/node_modules/.bin/playwright
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
    *CYGWIN*|*MINGW*|*MSYS*)
        if command -v cygpath > /dev/null 2>&1; then
            basedir=`cygpath -w "$basedir"`
        fi
    ;;
esac
if [ -x "$basedir/node" ]; then
  exec "$basedir/node"  "$basedir/../playwright/cli.js" "$@"
else
  exec node  "$basedir/../playwright/cli.js" "$@"
fi
scripts/node_modules/.bin/playwright-core
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
    *CYGWIN*|*MINGW*|*MSYS*)
        if command -v cygpath > /dev/null 2>&1; then
            basedir=`cygpath -w "$basedir"`
        fi
    ;;
esac
if [ -x "$basedir/node" ]; then
  exec "$basedir/node"  "$basedir/../playwright-core/cli.js" "$@"
else
  exec node  "$basedir/../playwright-core/cli.js" "$@"
fi
scripts/node_modules/.bin/playwright-core.cmd
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
  SET "_prog=%dp0%\node.exe"
) ELSE (
  SET "_prog=node"
  SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%"  "%dp0%\..\playwright-core\cli.js" %*
scripts/node_modules/.bin/playwright-core.ps1
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
  # Fix case when both the Windows and Linux builds of Node
  # are installed in the same directory
  $exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
  # Support pipeline input
  if ($MyInvocation.ExpectingInput) {
    $input | & "$basedir/node$exe"  "$basedir/../playwright-core/cli.js" $args
  } else {
    & "$basedir/node$exe"  "$basedir/../playwright-core/cli.js" $args
  }
  $ret=$LASTEXITCODE
} else {
  # Support pipeline input
  if ($MyInvocation.ExpectingInput) {
    $input | & "node$exe"  "$basedir/../playwright-core/cli.js" $args
  } else {
    & "node$exe"  "$basedir/../playwright-core/cli.js" $args
  }
  $ret=$LASTEXITCODE
}
exit $ret
scripts/node_modules/.bin/playwright.cmd
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
  SET "_prog=%dp0%\node.exe"
) ELSE (
  SET "_prog=node"
  SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%"  "%dp0%\..\playwright\cli.js" %*
scripts/node_modules/.bin/playwright.ps1
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
  # Fix case when both the Windows and Linux builds of Node
  # are installed in the same directory
  $exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
  # Support pipeline input
  if ($MyInvocation.ExpectingInput) {
    $input | & "$basedir/node$exe"  "$basedir/../playwright/cli.js" $args
  } else {
    & "$basedir/node$exe"  "$basedir/../playwright/cli.js" $args
  }
  $ret=$LASTEXITCODE
} else {
  # Support pipeline input
  if ($MyInvocation.ExpectingInput) {
    $input | & "node$exe"  "$basedir/../playwright/cli.js" $args
  } else {
    & "node$exe"  "$basedir/../playwright/cli.js" $args
  }
  $ret=$LASTEXITCODE
}
exit $ret
scripts/node_modules/.package-lock.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
{
  "name": "scripts",
  "lockfileVersion": 3,
  "requires": true,
  "packages": {
    "node_modules/playwright": {
      "version": "1.61.1",
      "resolved": "https://registry.npmmirror.com/playwright/-/playwright-1.61.1.tgz",
      "integrity": "sha512-DWnY5o3YbLWK4GovuAVwpqL+1VwGNdUGrRr++8j8PtQQzvAVZUIMjKQ90fY689sEJZJBbZVw1rXaOKSTitkzPQ==",
      "license": "Apache-2.0",
      "dependencies": {
        "playwright-core": "1.61.1"
      },
      "bin": {
        "playwright": "cli.js"
      },
      "engines": {
        "node": ">=18"
      },
      "optionalDependencies": {
        "fsevents": "2.3.2"
      }
    },
    "node_modules/playwright-core": {
      "version": "1.61.1",
      "resolved": "https://registry.npmmirror.com/playwright-core/-/playwright-core-1.61.1.tgz",
      "integrity": "sha512-h7Qlt6m4REp25qvIdvbDtVmD4LqVXfpRxhORv9L0jzETM05p4fuPJ3dKyuSXQxDSbXnmS79HAgi9589lGSpLkg==",
      "license": "Apache-2.0",
      "bin": {
        "playwright-core": "cli.js"
      },
      "engines": {
        "node": ">=18"
      }
    }
  }
}
scripts/node_modules/playwright-core/LICENSE
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,202 @@
                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
   1. Definitions.
      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.
      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.
      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.
      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.
      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.
      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.
      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).
      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.
      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."
      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.
   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.
   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.
   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:
      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and
      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and
      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and
      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.
      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.
   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.
   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.
   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.
   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.
   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.
   END OF TERMS AND CONDITIONS
   APPENDIX: How to apply the Apache License to your work.
      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "[]"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.
   Portions Copyright (c) Microsoft Corporation.
   Portions Copyright 2017 Google Inc.
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
       http://www.apache.org/licenses/LICENSE-2.0
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
scripts/node_modules/playwright-core/NOTICE
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
Playwright
Copyright (c) Microsoft Corporation
This software contains code derived from the Puppeteer project (https://github.com/puppeteer/puppeteer),
available under the Apache 2.0 license (https://github.com/puppeteer/puppeteer/blob/master/LICENSE).
scripts/node_modules/playwright-core/README.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,3 @@
# playwright-core
This package contains the no-browser flavor of [Playwright](http://github.com/microsoft/playwright).
scripts/node_modules/playwright-core/ThirdPartyNotices.txt
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
microsoft/playwright-core
THIRD-PARTY SOFTWARE NOTICES AND INFORMATION
This package bundles third-party software inside individual files under
`lib/`. Each bundled output has a sidecar `<bundle>.js.LICENSE` file next
to it listing every npm package whose source was inlined into that
bundle, together with the full license text for each.
For example:
- lib/utilsBundle.js.LICENSE
This project incorporates components from the projects listed below. The original copyright notices and the licenses under which Microsoft received such components are set forth below. Microsoft reserves all rights not expressly granted herein, whether by implication, estoppel or otherwise.
scripts/node_modules/playwright-core/bin/install_media_pack.ps1
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
$osInfo = Get-WmiObject -Class Win32_OperatingSystem
# check if running on Windows Server
if ($osInfo.ProductType -eq 3) {
  Install-WindowsFeature Server-Media-Foundation
}
scripts/node_modules/playwright-core/bin/install_webkit_wsl.ps1
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,33 @@
$ErrorActionPreference = 'Stop'
# This script sets up a WSL distribution that will be used to run WebKit.
$Distribution = "playwright"
$Username = "pwuser"
$distributions = (wsl --list --quiet) -split "\r?\n"
if ($distributions -contains $Distribution) {
    Write-Host "WSL distribution '$Distribution' already exists. Skipping installation."
} else {
    Write-Host "Installing new WSL distribution '$Distribution'..."
    $VhdSize = "10GB"
    wsl --install -d Ubuntu-24.04 --name $Distribution --no-launch --vhd-size $VhdSize
    wsl -d $Distribution -u root adduser --gecos GECOS --disabled-password $Username
}
$pwshDirname = (Resolve-Path -Path $PSScriptRoot).Path;
$playwrightCoreRoot = Resolve-Path (Join-Path $pwshDirname "..")
$initScript = @"
if [ ! -f "/home/$Username/node/bin/node" ]; then
  mkdir -p /home/$Username/node
  curl -fsSL https://nodejs.org/dist/v22.17.0/node-v22.17.0-linux-x64.tar.xz -o /home/$Username/node/node-v22.17.0-linux-x64.tar.xz
  tar -xJf /home/$Username/node/node-v22.17.0-linux-x64.tar.xz -C /home/$Username/node --strip-components=1
  sudo -u $Username echo 'export PATH=/home/$Username/node/bin:\`$PATH' >> /home/$Username/.profile
fi
/home/$Username/node/bin/node cli.js install-deps webkit
sudo -u $Username PLAYWRIGHT_SKIP_BROWSER_GC=1 /home/$Username/node/bin/node cli.js install webkit
"@ -replace "\r\n", "`n"
wsl -d $Distribution --cd $playwrightCoreRoot -u root -- bash -c "$initScript"
Write-Host "Done!"
scripts/node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
#!/usr/bin/env bash
set -e
set -x
if [[ $(arch) == "aarch64" ]]; then
  echo "ERROR: not supported on Linux Arm64"
  exit 1
fi
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
  if [[ ! -f "/etc/os-release" ]]; then
    echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
    exit 1
  fi
  ID=$(bash -c 'source /etc/os-release && echo $ID')
  if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
    echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
    exit 1
  fi
fi
# 1. make sure to remove old beta if any.
if dpkg --get-selections | grep -q "^google-chrome-beta[[:space:]]*install$" >/dev/null; then
  apt-get remove -y google-chrome-beta
fi
# 2. Update apt lists (needed to install curl and chrome dependencies)
apt-get update
# 3. Install curl to download chrome
if ! command -v curl >/dev/null; then
  apt-get install -y curl
fi
# 4. download chrome beta from dl.google.com and install it.
cd /tmp
curl -L -O https://dl.google.com/linux/direct/google-chrome-beta_current_amd64.deb
apt-get install -y ./google-chrome-beta_current_amd64.deb
rm -rf ./google-chrome-beta_current_amd64.deb
cd -
google-chrome-beta --version
scripts/node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
#!/usr/bin/env bash
set -e
set -x
rm -rf "/Applications/Google Chrome Beta.app"
cd /tmp
curl -L --retry 3 -o ./googlechromebeta.dmg https://dl.google.com/chrome/mac/universal/beta/googlechromebeta.dmg
hdiutil attach -nobrowse -quiet -noautofsck -noautoopen -mountpoint /Volumes/googlechromebeta.dmg ./googlechromebeta.dmg
cp -pR "/Volumes/googlechromebeta.dmg/Google Chrome Beta.app" /Applications
hdiutil detach /Volumes/googlechromebeta.dmg
rm -rf /tmp/googlechromebeta.dmg
/Applications/Google\ Chrome\ Beta.app/Contents/MacOS/Google\ Chrome\ Beta --version
scripts/node_modules/playwright-core/bin/reinstall_chrome_beta_win.ps1
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
$ErrorActionPreference = 'Stop'
$url = 'https://dl.google.com/tag/s/dl/chrome/install/beta/googlechromebetastandaloneenterprise64.msi'
Write-Host "Downloading Google Chrome Beta"
$wc = New-Object net.webclient
$msiInstaller = "$env:temp\google-chrome-beta.msi"
$wc.Downloadfile($url, $msiInstaller)
Write-Host "Installing Google Chrome Beta"
$arguments = "/i `"$msiInstaller`" /quiet"
Start-Process msiexec.exe -ArgumentList $arguments -Wait
Remove-Item $msiInstaller
$suffix = "\\Google\\Chrome Beta\\Application\\chrome.exe"
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
    (Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
    (Get-Item "${env:ProgramFiles}$suffix").VersionInfo
} else {
    Write-Host "ERROR: Failed to install Google Chrome Beta."
    Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
    exit 1
}
scripts/node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
#!/usr/bin/env bash
set -e
set -x
if [[ $(arch) == "aarch64" ]]; then
  echo "ERROR: not supported on Linux Arm64"
  exit 1
fi
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
  if [[ ! -f "/etc/os-release" ]]; then
    echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
    exit 1
  fi
  ID=$(bash -c 'source /etc/os-release && echo $ID')
  if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
    echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
    exit 1
  fi
fi
# 1. make sure to remove old stable if any.
if dpkg --get-selections | grep -q "^google-chrome[[:space:]]*install$" >/dev/null; then
  apt-get remove -y google-chrome
fi
# 2. Update apt lists (needed to install curl and chrome dependencies)
apt-get update
# 3. Install curl to download chrome
if ! command -v curl >/dev/null; then
  apt-get install -y curl
fi
# 4. download chrome stable from dl.google.com and install it.
cd /tmp
curl -L -O https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
apt-get install -y ./google-chrome-stable_current_amd64.deb
rm -rf ./google-chrome-stable_current_amd64.deb
cd -
google-chrome --version
scripts/node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
#!/usr/bin/env bash
set -e
set -x
rm -rf "/Applications/Google Chrome.app"
cd /tmp
curl -L --retry 3 -o ./googlechrome.dmg https://dl.google.com/chrome/mac/universal/stable/GGRO/googlechrome.dmg
hdiutil attach -nobrowse -quiet -noautofsck -noautoopen -mountpoint /Volumes/googlechrome.dmg ./googlechrome.dmg
cp -pR "/Volumes/googlechrome.dmg/Google Chrome.app" /Applications
hdiutil detach /Volumes/googlechrome.dmg
rm -rf /tmp/googlechrome.dmg
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --version
scripts/node_modules/playwright-core/bin/reinstall_chrome_stable_win.ps1
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
$ErrorActionPreference = 'Stop'
$url = 'https://dl.google.com/tag/s/dl/chrome/install/googlechromestandaloneenterprise64.msi'
$wc = New-Object net.webclient
$msiInstaller = "$env:temp\google-chrome.msi"
Write-Host "Downloading Google Chrome"
$wc.Downloadfile($url, $msiInstaller)
Write-Host "Installing Google Chrome"
$arguments = "/i `"$msiInstaller`" /quiet"
Start-Process msiexec.exe -ArgumentList $arguments -Wait
Remove-Item $msiInstaller
$suffix = "\\Google\\Chrome\\Application\\chrome.exe"
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
    (Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
    (Get-Item "${env:ProgramFiles}$suffix").VersionInfo
} else {
    Write-Host "ERROR: Failed to install Google Chrome."
    Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
    exit 1
}
scripts/node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
#!/usr/bin/env bash
set -e
set -x
if [[ $(arch) == "aarch64" ]]; then
  echo "ERROR: not supported on Linux Arm64"
  exit 1
fi
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
  if [[ ! -f "/etc/os-release" ]]; then
    echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
    exit 1
  fi
  ID=$(bash -c 'source /etc/os-release && echo $ID')
  if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
    echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
    exit 1
  fi
fi
# 1. make sure to remove old beta if any.
if dpkg --get-selections | grep -q "^microsoft-edge-beta[[:space:]]*install$" >/dev/null; then
  apt-get remove -y microsoft-edge-beta
fi
# 2. Install curl to download Microsoft gpg key
if ! command -v curl >/dev/null; then
  apt-get update
  apt-get install -y curl
fi
# GnuPG is not preinstalled in slim images
if ! command -v gpg >/dev/null; then
  apt-get update
  apt-get install -y gpg
fi
# 3. Add the GPG key, the apt repo, update the apt cache, and install the package
curl -L https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.gpg
install -o root -g root -m 644 /tmp/microsoft.gpg /etc/apt/trusted.gpg.d/
sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/edge stable main" > /etc/apt/sources.list.d/microsoft-edge-dev.list'
rm /tmp/microsoft.gpg
apt-get update && apt-get install -y microsoft-edge-beta
microsoft-edge-beta --version
scripts/node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
#!/usr/bin/env bash
set -e
set -x
cd /tmp
curl -L --retry 3 -o ./msedge_beta.pkg "$1"
# Note: there's no way to uninstall previously installed MSEdge.
# However, running PKG again seems to update installation.
sudo installer -pkg /tmp/msedge_beta.pkg -target /
rm -rf /tmp/msedge_beta.pkg
/Applications/Microsoft\ Edge\ Beta.app/Contents/MacOS/Microsoft\ Edge\ Beta --version
scripts/node_modules/playwright-core/bin/reinstall_msedge_beta_win.ps1
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
$ErrorActionPreference = 'Stop'
$url = $args[0]
Write-Host "Downloading Microsoft Edge Beta"
$wc = New-Object net.webclient
$msiInstaller = "$env:temp\microsoft-edge-beta.msi"
$wc.Downloadfile($url, $msiInstaller)
Write-Host "Installing Microsoft Edge Beta"
$arguments = "/i `"$msiInstaller`" /quiet"
Start-Process msiexec.exe -ArgumentList $arguments -Wait
Remove-Item $msiInstaller
$suffix = "\\Microsoft\\Edge Beta\\Application\\msedge.exe"
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
    (Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
    (Get-Item "${env:ProgramFiles}$suffix").VersionInfo
} else {
    Write-Host "ERROR: Failed to install Microsoft Edge Beta."
    Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
    exit 1
}
scripts/node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
#!/usr/bin/env bash
set -e
set -x
if [[ $(arch) == "aarch64" ]]; then
  echo "ERROR: not supported on Linux Arm64"
  exit 1
fi
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
  if [[ ! -f "/etc/os-release" ]]; then
    echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
    exit 1
  fi
  ID=$(bash -c 'source /etc/os-release && echo $ID')
  if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
    echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
    exit 1
  fi
fi
# 1. make sure to remove old dev if any.
if dpkg --get-selections | grep -q "^microsoft-edge-dev[[:space:]]*install$" >/dev/null; then
  apt-get remove -y microsoft-edge-dev
fi
# 2. Install curl to download Microsoft gpg key
if ! command -v curl >/dev/null; then
  apt-get update
  apt-get install -y curl
fi
# GnuPG is not preinstalled in slim images
if ! command -v gpg >/dev/null; then
  apt-get update
  apt-get install -y gpg
fi
# 3. Add the GPG key, the apt repo, update the apt cache, and install the package
curl -L https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.gpg
install -o root -g root -m 644 /tmp/microsoft.gpg /etc/apt/trusted.gpg.d/
sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/edge stable main" > /etc/apt/sources.list.d/microsoft-edge-dev.list'
rm /tmp/microsoft.gpg
apt-get update && apt-get install -y microsoft-edge-dev
microsoft-edge-dev --version
scripts/node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
#!/usr/bin/env bash
set -e
set -x
cd /tmp
curl -L --retry 3 -o ./msedge_dev.pkg "$1"
# Note: there's no way to uninstall previously installed MSEdge.
# However, running PKG again seems to update installation.
sudo installer -pkg /tmp/msedge_dev.pkg -target /
rm -rf /tmp/msedge_dev.pkg
/Applications/Microsoft\ Edge\ Dev.app/Contents/MacOS/Microsoft\ Edge\ Dev --version
scripts/node_modules/playwright-core/bin/reinstall_msedge_dev_win.ps1
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
$ErrorActionPreference = 'Stop'
$url = $args[0]
Write-Host "Downloading Microsoft Edge Dev"
$wc = New-Object net.webclient
$msiInstaller = "$env:temp\microsoft-edge-dev.msi"
$wc.Downloadfile($url, $msiInstaller)
Write-Host "Installing Microsoft Edge Dev"
$arguments = "/i `"$msiInstaller`" /quiet"
Start-Process msiexec.exe -ArgumentList $arguments -Wait
Remove-Item $msiInstaller
$suffix = "\\Microsoft\\Edge Dev\\Application\\msedge.exe"
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
    (Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
    (Get-Item "${env:ProgramFiles}$suffix").VersionInfo
} else {
    Write-Host "ERROR: Failed to install Microsoft Edge Dev."
    Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
    exit 1
}
scripts/node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
#!/usr/bin/env bash
set -e
set -x
if [[ $(arch) == "aarch64" ]]; then
  echo "ERROR: not supported on Linux Arm64"
  exit 1
fi
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
  if [[ ! -f "/etc/os-release" ]]; then
    echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
    exit 1
  fi
  ID=$(bash -c 'source /etc/os-release && echo $ID')
  if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
    echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
    exit 1
  fi
fi
# 1. make sure to remove old stable if any.
if dpkg --get-selections | grep -q "^microsoft-edge-stable[[:space:]]*install$" >/dev/null; then
  apt-get remove -y microsoft-edge-stable
fi
# 2. Install curl to download Microsoft gpg key
if ! command -v curl >/dev/null; then
  apt-get update
  apt-get install -y curl
fi
# GnuPG is not preinstalled in slim images
if ! command -v gpg >/dev/null; then
  apt-get update
  apt-get install -y gpg
fi
# 3. Add the GPG key, the apt repo, update the apt cache, and install the package
curl -L https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.gpg
install -o root -g root -m 644 /tmp/microsoft.gpg /etc/apt/trusted.gpg.d/
sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/edge stable main" > /etc/apt/sources.list.d/microsoft-edge-stable.list'
rm /tmp/microsoft.gpg
apt-get update && apt-get install -y microsoft-edge-stable
microsoft-edge-stable --version
scripts/node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
#!/usr/bin/env bash
set -e
set -x
cd /tmp
curl -L --retry 3 -o ./msedge_stable.pkg "$1"
# Note: there's no way to uninstall previously installed MSEdge.
# However, running PKG again seems to update installation.
sudo installer -pkg /tmp/msedge_stable.pkg -target /
rm -rf /tmp/msedge_stable.pkg
/Applications/Microsoft\ Edge.app/Contents/MacOS/Microsoft\ Edge --version
scripts/node_modules/playwright-core/bin/reinstall_msedge_stable_win.ps1
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
$ErrorActionPreference = 'Stop'
$url = $args[0]
Write-Host "Downloading Microsoft Edge"
$wc = New-Object net.webclient
$msiInstaller = "$env:temp\microsoft-edge-stable.msi"
$wc.Downloadfile($url, $msiInstaller)
Write-Host "Installing Microsoft Edge"
$arguments = "/i `"$msiInstaller`" /quiet"
Start-Process msiexec.exe -ArgumentList $arguments -Wait
Remove-Item $msiInstaller
$suffix = "\\Microsoft\\Edge\\Application\\msedge.exe"
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
    (Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
    (Get-Item "${env:ProgramFiles}$suffix").VersionInfo
} else {
    Write-Host "ERROR: Failed to install Microsoft Edge."
    Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
    exit 1
}
scripts/node_modules/playwright-core/browsers.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,81 @@
{
  "comment": "Do not edit this file, use utils/roll_browser.js",
  "browsers": [
    {
      "name": "chromium",
      "revision": "1228",
      "installByDefault": true,
      "browserVersion": "149.0.7827.55",
      "title": "Chrome for Testing"
    },
    {
      "name": "chromium-headless-shell",
      "revision": "1228",
      "installByDefault": true,
      "browserVersion": "149.0.7827.55",
      "title": "Chrome Headless Shell"
    },
    {
      "name": "chromium-tip-of-tree",
      "revision": "1432",
      "installByDefault": false,
      "browserVersion": "151.0.7886.0",
      "title": "Chrome Canary for Testing"
    },
    {
      "name": "chromium-tip-of-tree-headless-shell",
      "revision": "1432",
      "installByDefault": false,
      "browserVersion": "151.0.7886.0",
      "title": "Chrome Canary Headless Shell"
    },
    {
      "name": "firefox",
      "revision": "1532",
      "installByDefault": true,
      "browserVersion": "151.0",
      "title": "Firefox"
    },
    {
      "name": "firefox-beta",
      "revision": "1526",
      "installByDefault": false,
      "browserVersion": "152.0b1",
      "title": "Firefox Beta"
    },
    {
      "name": "webkit",
      "revision": "2311",
      "installByDefault": true,
      "revisionOverrides": {
        "mac14": "2251",
        "mac14-arm64": "2251",
        "debian11-x64": "2105",
        "debian11-arm64": "2105",
        "ubuntu20.04-x64": "2092",
        "ubuntu20.04-arm64": "2092"
      },
      "browserVersion": "26.5",
      "title": "WebKit"
    },
    {
      "name": "ffmpeg",
      "revision": "1011",
      "installByDefault": true,
      "revisionOverrides": {
        "mac12": "1010",
        "mac12-arm64": "1010"
      }
    },
    {
      "name": "winldd",
      "revision": "1007",
      "installByDefault": false
    },
    {
      "name": "android",
      "revision": "1001",
      "installByDefault": false
    }
  ]
}
scripts/node_modules/playwright-core/cli.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
#!/usr/bin/env node
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
const { libCli, libCliTestStub } = require('./lib/coreBundle');
const { program } = require('./lib/utilsBundle');
libCli.decorateProgram(program);
libCliTestStub.decorateProgram(program);
program.parse(process.argv);
scripts/node_modules/playwright-core/index.d.ts
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
export * from './types/types';
scripts/node_modules/playwright-core/index.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
require('./lib/bootstrap');
module.exports = require('./lib/coreBundle').inprocess.playwright;
scripts/node_modules/playwright-core/index.mjs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import playwright from './index.js';
export const chromium = playwright.chromium;
export const firefox = playwright.firefox;
export const webkit = playwright.webkit;
export const selectors = playwright.selectors;
export const devices = playwright.devices;
export const errors = playwright.errors;
export const request = playwright.request;
export const _electron = playwright._electron;
export const _android = playwright._android;
export default playwright;
scripts/node_modules/playwright-core/lib/bootstrap.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,88 @@
"use strict";
const minimumMajorNodeVersion = 18;
const currentNodeVersion = process.versions.node;
const major = +currentNodeVersion.split(".")[0];
if (major < minimumMajorNodeVersion) {
  console.error(
    "You are running Node.js " + currentNodeVersion + `.
Playwright requires Node.js ${minimumMajorNodeVersion} or higher.
Please update your version of Node.js.`
  );
  process.exit(1);
}
if (process.env.PW_INSTRUMENT_MODULES) {
  const Module = require("module");
  const originalLoad = Module._load;
  const root = { name: "<root>", selfMs: 0, totalMs: 0, childrenMs: 0, children: [] };
  let current = root;
  const stack = [];
  Module._load = function(request, _parent, _isMain) {
    const node = { name: request, selfMs: 0, totalMs: 0, childrenMs: 0, children: [] };
    current.children.push(node);
    stack.push(current);
    current = node;
    const start = performance.now();
    let result;
    try {
      result = originalLoad.apply(this, arguments);
    } catch (e) {
      current = stack.pop();
      current.children.pop();
      throw e;
    }
    const duration = performance.now() - start;
    node.totalMs = duration;
    node.selfMs = Math.max(0, duration - node.childrenMs);
    current = stack.pop();
    current.childrenMs += duration;
    return result;
  };
  process.on("exit", () => {
    function printTree(node, prefix, isLast, lines2, depth) {
      if (node.totalMs < 1 && depth > 0)
        return;
      const connector = depth === 0 ? "" : isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ";
      const time = `${node.totalMs.toFixed(1).padStart(8)}ms`;
      const self = node.children.length ? ` (self: ${node.selfMs.toFixed(1)}ms)` : "";
      lines2.push(`${time}  ${prefix}${connector}${node.name}${self}`);
      const childPrefix = prefix + (depth === 0 ? "" : isLast ? "    " : "\u2502   ");
      const sorted2 = node.children.slice().sort((a, b) => b.totalMs - a.totalMs);
      for (let i = 0; i < sorted2.length; i++)
        printTree(sorted2[i], childPrefix, i === sorted2.length - 1, lines2, depth + 1);
    }
    let totalModules = 0;
    function count(n) {
      totalModules++;
      n.children.forEach(count);
    }
    root.children.forEach(count);
    const lines = [];
    const sorted = root.children.slice().sort((a, b) => b.totalMs - a.totalMs);
    for (let i = 0; i < sorted.length; i++)
      printTree(sorted[i], "", i === sorted.length - 1, lines, 0);
    const totalMs = root.children.reduce((s, c) => s + c.totalMs, 0);
    process.stderr.write(`
--- Module load tree: ${totalModules} modules, ${totalMs.toFixed(0)}ms total ---
` + lines.join("\n") + "\n");
    const flat = /* @__PURE__ */ new Map();
    function gather(n) {
      const existing = flat.get(n.name);
      if (existing) {
        existing.selfMs += n.selfMs;
        existing.totalMs += n.totalMs;
        existing.count++;
      } else {
        flat.set(n.name, { selfMs: n.selfMs, totalMs: n.totalMs, count: 1 });
      }
      n.children.forEach(gather);
    }
    root.children.forEach(gather);
    const top50 = [...flat.entries()].sort((a, b) => b[1].selfMs - a[1].selfMs).slice(0, 50);
    const flatLines = top50.map(
      ([mod, { selfMs, totalMs: totalMs2, count: count2 }]) => `${selfMs.toFixed(1).padStart(8)}ms self ${totalMs2.toFixed(1).padStart(8)}ms total  (x${String(count2).padStart(3)})  ${mod}`
    );
    process.stderr.write(`
--- Top 50 modules by self time ---
` + flatLines.join("\n") + "\n");
  });
}
scripts/node_modules/playwright-core/lib/coreBundle.js
¶Ô±ÈÐÂÎļþ
ÎļþÌ«´ó
scripts/node_modules/playwright-core/lib/entry/cliDaemon.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
"use strict";
var import_coreBundle = require("../coreBundle");
const { program } = require("../utilsBundle");
import_coreBundle.tools.decorateCliDaemonProgram(program);
void program.parseAsync();
scripts/node_modules/playwright-core/lib/entry/dashboardApp.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,3 @@
"use strict";
var import_coreBundle = require("../coreBundle");
import_coreBundle.tools.openDashboardApp();
scripts/node_modules/playwright-core/lib/entry/mcp.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
"use strict";
var import_coreBundle = require("../coreBundle");
var import_package = require("../package");
const { program } = require("../utilsBundle");
const p = program.version("Version " + import_package.packageJSON.version).name("Playwright MCP");
import_coreBundle.tools.decorateMCPCommand(p);
program.parseAsync(process.argv).catch((e) => {
  console.error(e.message);
  import_coreBundle.utils.gracefullyProcessExitDoNotHang(1);
});
scripts/node_modules/playwright-core/lib/entry/oopBrowserDownload.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,3 @@
"use strict";
var import_coreBundle = require("../coreBundle");
import_coreBundle.registry.runOopDownloadBrowserMain();
scripts/node_modules/playwright-core/lib/package.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,50 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var package_exports = {};
__export(package_exports, {
  binPath: () => binPath,
  libPath: () => libPath,
  packageJSON: () => packageJSON,
  packageRoot: () => packageRoot
});
module.exports = __toCommonJS(package_exports);
var import_path = __toESM(require("path"));
const packageRoot = import_path.default.join(__dirname, "..");
const packageJSON = require(import_path.default.join(packageRoot, "package.json"));
const binPath = import_path.default.join(packageRoot, "bin");
function libPath(...parts) {
  return import_path.default.join(packageRoot, "lib", ...parts);
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  binPath,
  libPath,
  packageJSON,
  packageRoot
});
scripts/node_modules/playwright-core/lib/server/chromium/appIcon.png
scripts/node_modules/playwright-core/lib/server/deviceDescriptorsSource.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,2739 @@
{
  "Blackberry PlayBook": {
    "userAgent": "Mozilla/5.0 (PlayBook; U; RIM Tablet OS 2.1.0; en-US) AppleWebKit/536.2+ (KHTML like Gecko) Version/26.5 Safari/536.2+",
    "viewport": {
      "width": 600,
      "height": 1024
    },
    "deviceScaleFactor": 1,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Blackberry PlayBook landscape": {
    "userAgent": "Mozilla/5.0 (PlayBook; U; RIM Tablet OS 2.1.0; en-US) AppleWebKit/536.2+ (KHTML like Gecko) Version/26.5 Safari/536.2+",
    "viewport": {
      "width": 1024,
      "height": 600
    },
    "deviceScaleFactor": 1,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "BlackBerry Z30": {
    "userAgent": "Mozilla/5.0 (BB10; Touch) AppleWebKit/537.10+ (KHTML, like Gecko) Version/26.5 Mobile Safari/537.10+",
    "viewport": {
      "width": 360,
      "height": 640
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "BlackBerry Z30 landscape": {
    "userAgent": "Mozilla/5.0 (BB10; Touch) AppleWebKit/537.10+ (KHTML, like Gecko) Version/26.5 Mobile Safari/537.10+",
    "viewport": {
      "width": 640,
      "height": 360
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Galaxy Note 3": {
    "userAgent": "Mozilla/5.0 (Linux; U; Android 4.3; en-us; SM-N900T Build/JSS15J) AppleWebKit/534.30 (KHTML, like Gecko) Version/26.5 Mobile Safari/534.30",
    "viewport": {
      "width": 360,
      "height": 640
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Galaxy Note 3 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; U; Android 4.3; en-us; SM-N900T Build/JSS15J) AppleWebKit/534.30 (KHTML, like Gecko) Version/26.5 Mobile Safari/534.30",
    "viewport": {
      "width": 640,
      "height": 360
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Galaxy Note II": {
    "userAgent": "Mozilla/5.0 (Linux; U; Android 4.1; en-us; GT-N7100 Build/JRO03C) AppleWebKit/534.30 (KHTML, like Gecko) Version/26.5 Mobile Safari/534.30",
    "viewport": {
      "width": 360,
      "height": 640
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Galaxy Note II landscape": {
    "userAgent": "Mozilla/5.0 (Linux; U; Android 4.1; en-us; GT-N7100 Build/JRO03C) AppleWebKit/534.30 (KHTML, like Gecko) Version/26.5 Mobile Safari/534.30",
    "viewport": {
      "width": 640,
      "height": 360
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Galaxy S III": {
    "userAgent": "Mozilla/5.0 (Linux; U; Android 4.0; en-us; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/26.5 Mobile Safari/534.30",
    "viewport": {
      "width": 360,
      "height": 640
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Galaxy S III landscape": {
    "userAgent": "Mozilla/5.0 (Linux; U; Android 4.0; en-us; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/26.5 Mobile Safari/534.30",
    "viewport": {
      "width": 640,
      "height": 360
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Galaxy S5": {
    "userAgent": "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 360,
      "height": 640
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy S5 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 640,
      "height": 360
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy S8": {
    "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 360,
      "height": 740
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy S8 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 740,
      "height": 360
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy S9+": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 320,
      "height": 658
    },
    "deviceScaleFactor": 4.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy S9+ landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 658,
      "height": 320
    },
    "deviceScaleFactor": 4.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy S24": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-S921U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 360,
      "height": 780
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy S24 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-S921U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 780,
      "height": 360
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy A55": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-A556B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 480,
      "height": 1040
    },
    "deviceScaleFactor": 2.25,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy A55 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-A556B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 1040,
      "height": 480
    },
    "deviceScaleFactor": 2.25,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Tab S4": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "viewport": {
      "width": 712,
      "height": 1138
    },
    "deviceScaleFactor": 2.25,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Tab S4 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "viewport": {
      "width": 1138,
      "height": 712
    },
    "deviceScaleFactor": 2.25,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Tab S9": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-X710) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "viewport": {
      "width": 640,
      "height": 1024
    },
    "deviceScaleFactor": 2.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Tab S9 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-X710) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "viewport": {
      "width": 1024,
      "height": 640
    },
    "deviceScaleFactor": 2.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Fold 6": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F956U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 928,
      "height": 1080
    },
    "viewport": {
      "width": 928,
      "height": 1004
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Fold 6 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F956U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 1080,
      "height": 928
    },
    "viewport": {
      "width": 1028,
      "height": 876
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Fold 6 Cover": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F956U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 484,
      "height": 1188
    },
    "viewport": {
      "width": 484,
      "height": 1112
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Fold 6 Cover landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F956U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 1188,
      "height": 484
    },
    "viewport": {
      "width": 1136,
      "height": 432
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Fold 7": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F966U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 984,
      "height": 1092
    },
    "viewport": {
      "width": 984,
      "height": 1016
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Fold 7 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F966U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 1092,
      "height": 984
    },
    "viewport": {
      "width": 1040,
      "height": 932
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Fold 7 Cover": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F966U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 360,
      "height": 840
    },
    "viewport": {
      "width": 360,
      "height": 764
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Fold 7 Cover landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F966U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 840,
      "height": 360
    },
    "viewport": {
      "width": 788,
      "height": 308
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Flip 6": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F741U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 360,
      "height": 880
    },
    "viewport": {
      "width": 360,
      "height": 804
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Flip 6 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F741U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 880,
      "height": 360
    },
    "viewport": {
      "width": 828,
      "height": 308
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Flip 6 Cover": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F741U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 360,
      "height": 374
    },
    "viewport": {
      "width": 360,
      "height": 298
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Flip 6 Cover landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F741U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 374,
      "height": 360
    },
    "viewport": {
      "width": 322,
      "height": 308
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Flip 7": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F761U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 360,
      "height": 840
    },
    "viewport": {
      "width": 360,
      "height": 764
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Flip 7 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F761U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 840,
      "height": 360
    },
    "viewport": {
      "width": 788,
      "height": 308
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Flip 7 Cover": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F761U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 474,
      "height": 524
    },
    "viewport": {
      "width": 474,
      "height": 448
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Galaxy Z Flip 7 Cover landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; SM-F761U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 524,
      "height": 474
    },
    "viewport": {
      "width": 472,
      "height": 422
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "iPad (gen 5)": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 768,
      "height": 1024
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad (gen 5) landscape": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 1024,
      "height": 768
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad (gen 6)": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 768,
      "height": 1024
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad (gen 6) landscape": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 1024,
      "height": 768
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad (gen 7)": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 810,
      "height": 1080
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad (gen 7) landscape": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 1080,
      "height": 810
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad (gen 11)": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 18_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/19E241 Safari/604.1",
    "viewport": {
      "width": 656,
      "height": 944
    },
    "deviceScaleFactor": 2.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad (gen 11) landscape": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 18_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/19E241 Safari/604.1",
    "viewport": {
      "width": 944,
      "height": 656
    },
    "deviceScaleFactor": 2.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad Mini": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 768,
      "height": 1024
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad Mini landscape": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 1024,
      "height": 768
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad Pro 11": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 834,
      "height": 1194
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPad Pro 11 landscape": {
    "userAgent": "Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 1194,
      "height": 834
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 6": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 375,
      "height": 667
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 6 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 667,
      "height": 375
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 6 Plus": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 414,
      "height": 736
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 6 Plus landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 736,
      "height": 414
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 7": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 375,
      "height": 667
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 7 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 667,
      "height": 375
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 7 Plus": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 414,
      "height": 736
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 7 Plus landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 736,
      "height": 414
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 8": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 375,
      "height": 667
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 8 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 667,
      "height": 375
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 8 Plus": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 414,
      "height": 736
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 8 Plus landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 736,
      "height": 414
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone SE": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/26.5 Mobile/14E304 Safari/602.1",
    "viewport": {
      "width": 320,
      "height": 568
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone SE landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/26.5 Mobile/14E304 Safari/602.1",
    "viewport": {
      "width": 568,
      "height": 320
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone SE (3rd gen)": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_5 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/26.5 Mobile/19E241 Safari/602.1",
    "viewport": {
      "width": 375,
      "height": 667
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone SE (3rd gen) landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_5 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/26.5 Mobile/19E241 Safari/602.1",
    "viewport": {
      "width": 667,
      "height": 375
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone X": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 375,
      "height": 812
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone X landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/26.5 Mobile/15A372 Safari/604.1",
    "viewport": {
      "width": 812,
      "height": 375
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone XR": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 414,
      "height": 896
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone XR landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "viewport": {
      "width": 896,
      "height": 414
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 11": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 414,
      "height": 896
    },
    "viewport": {
      "width": 414,
      "height": 715
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 11 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 414,
      "height": 896
    },
    "viewport": {
      "width": 800,
      "height": 364
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 11 Pro": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 375,
      "height": 812
    },
    "viewport": {
      "width": 375,
      "height": 635
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 11 Pro landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 375,
      "height": 812
    },
    "viewport": {
      "width": 724,
      "height": 325
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 11 Pro Max": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 414,
      "height": 896
    },
    "viewport": {
      "width": 414,
      "height": 715
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 11 Pro Max landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 414,
      "height": 896
    },
    "viewport": {
      "width": 808,
      "height": 364
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 12": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 390,
      "height": 664
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 12 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 750,
      "height": 340
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 12 Pro": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 390,
      "height": 664
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 12 Pro landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 750,
      "height": 340
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 12 Pro Max": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 428,
      "height": 926
    },
    "viewport": {
      "width": 428,
      "height": 746
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 12 Pro Max landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 428,
      "height": 926
    },
    "viewport": {
      "width": 832,
      "height": 378
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 12 Mini": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 375,
      "height": 812
    },
    "viewport": {
      "width": 375,
      "height": 629
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 12 Mini landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 375,
      "height": 812
    },
    "viewport": {
      "width": 712,
      "height": 325
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 13": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 390,
      "height": 664
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 13 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 750,
      "height": 342
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 13 Pro": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 390,
      "height": 664
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 13 Pro landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 750,
      "height": 342
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 13 Pro Max": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 428,
      "height": 926
    },
    "viewport": {
      "width": 428,
      "height": 746
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 13 Pro Max landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 428,
      "height": 926
    },
    "viewport": {
      "width": 832,
      "height": 380
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 13 Mini": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 375,
      "height": 812
    },
    "viewport": {
      "width": 375,
      "height": 629
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 13 Mini landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 375,
      "height": 812
    },
    "viewport": {
      "width": 712,
      "height": 327
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 14": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 390,
      "height": 664
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 14 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 750,
      "height": 340
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 14 Plus": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 428,
      "height": 926
    },
    "viewport": {
      "width": 428,
      "height": 746
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 14 Plus landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 428,
      "height": 926
    },
    "viewport": {
      "width": 832,
      "height": 378
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 14 Pro": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 393,
      "height": 852
    },
    "viewport": {
      "width": 393,
      "height": 660
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 14 Pro landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 393,
      "height": 852
    },
    "viewport": {
      "width": 734,
      "height": 343
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 14 Pro Max": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 430,
      "height": 932
    },
    "viewport": {
      "width": 430,
      "height": 740
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 14 Pro Max landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 430,
      "height": 932
    },
    "viewport": {
      "width": 814,
      "height": 380
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 15": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 393,
      "height": 852
    },
    "viewport": {
      "width": 393,
      "height": 659
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 15 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 393,
      "height": 852
    },
    "viewport": {
      "width": 734,
      "height": 343
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 15 Plus": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 430,
      "height": 932
    },
    "viewport": {
      "width": 430,
      "height": 739
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 15 Plus landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 430,
      "height": 932
    },
    "viewport": {
      "width": 814,
      "height": 380
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 15 Pro": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 393,
      "height": 852
    },
    "viewport": {
      "width": 393,
      "height": 659
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 15 Pro landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 393,
      "height": 852
    },
    "viewport": {
      "width": 734,
      "height": 343
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 15 Pro Max": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 430,
      "height": 932
    },
    "viewport": {
      "width": 430,
      "height": 739
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 15 Pro Max landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 430,
      "height": 932
    },
    "viewport": {
      "width": 814,
      "height": 380
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 393,
      "height": 852
    },
    "viewport": {
      "width": 393,
      "height": 659
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 393,
      "height": 852
    },
    "viewport": {
      "width": 734,
      "height": 343
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16 Plus": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 430,
      "height": 932
    },
    "viewport": {
      "width": 430,
      "height": 739
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16 Plus landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 430,
      "height": 932
    },
    "viewport": {
      "width": 814,
      "height": 380
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16 Pro": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 402,
      "height": 874
    },
    "viewport": {
      "width": 402,
      "height": 681
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16 Pro landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 402,
      "height": 874
    },
    "viewport": {
      "width": 756,
      "height": 352
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16 Pro Max": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 440,
      "height": 956
    },
    "viewport": {
      "width": 440,
      "height": 763
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16 Pro Max landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 440,
      "height": 956
    },
    "viewport": {
      "width": 838,
      "height": 390
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16e": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 390,
      "height": 651
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 16e landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 726,
      "height": 340
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 17": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 402,
      "height": 874
    },
    "viewport": {
      "width": 402,
      "height": 681
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 17 landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 402,
      "height": 874
    },
    "viewport": {
      "width": 756,
      "height": 352
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone Air": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 420,
      "height": 912
    },
    "viewport": {
      "width": 420,
      "height": 719
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone Air landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 420,
      "height": 912
    },
    "viewport": {
      "width": 794,
      "height": 370
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 17 Pro": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 402,
      "height": 874
    },
    "viewport": {
      "width": 402,
      "height": 681
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 17 Pro landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 402,
      "height": 874
    },
    "viewport": {
      "width": 756,
      "height": 352
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 17 Pro Max": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 440,
      "height": 956
    },
    "viewport": {
      "width": 440,
      "height": 763
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 17 Pro Max landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 440,
      "height": 956
    },
    "viewport": {
      "width": 838,
      "height": 390
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 17e": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 390,
      "height": 651
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "iPhone 17e landscape": {
    "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Mobile/15E148 Safari/604.1",
    "screen": {
      "width": 390,
      "height": 844
    },
    "viewport": {
      "width": 726,
      "height": 340
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Kindle Fire HDX": {
    "userAgent": "Mozilla/5.0 (Linux; U; en-us; KFAPWI Build/JDQ39) AppleWebKit/535.19 (KHTML, like Gecko) Silk/3.13 Safari/535.19 Silk-Accelerated=true",
    "viewport": {
      "width": 800,
      "height": 1280
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Kindle Fire HDX landscape": {
    "userAgent": "Mozilla/5.0 (Linux; U; en-us; KFAPWI Build/JDQ39) AppleWebKit/535.19 (KHTML, like Gecko) Silk/3.13 Safari/535.19 Silk-Accelerated=true",
    "viewport": {
      "width": 1280,
      "height": 800
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "LG Optimus L70": {
    "userAgent": "Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGMS323 Build/KOT49I.MS32310c) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 384,
      "height": 640
    },
    "deviceScaleFactor": 1.25,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "LG Optimus L70 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGMS323 Build/KOT49I.MS32310c) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 640,
      "height": 384
    },
    "deviceScaleFactor": 1.25,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Microsoft Lumia 550": {
    "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 550) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36 Edge/14.14263",
    "viewport": {
      "width": 360,
      "height": 640
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Microsoft Lumia 550 landscape": {
    "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 550) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36 Edge/14.14263",
    "viewport": {
      "width": 640,
      "height": 360
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Microsoft Lumia 950": {
    "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36 Edge/14.14263",
    "viewport": {
      "width": 360,
      "height": 640
    },
    "deviceScaleFactor": 4,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Microsoft Lumia 950 landscape": {
    "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36 Edge/14.14263",
    "viewport": {
      "width": 640,
      "height": 360
    },
    "deviceScaleFactor": 4,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 10": {
    "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 10 Build/MOB31T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "viewport": {
      "width": 800,
      "height": 1280
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 10 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 10 Build/MOB31T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "viewport": {
      "width": 1280,
      "height": 800
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 4": {
    "userAgent": "Mozilla/5.0 (Linux; Android 4.4.2; Nexus 4 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 384,
      "height": 640
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 4 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 4.4.2; Nexus 4 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 640,
      "height": 384
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 5": {
    "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 360,
      "height": 640
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 5 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 640,
      "height": 360
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 5X": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 5X Build/OPR4.170623.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 412,
      "height": 732
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 5X landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 5X Build/OPR4.170623.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 732,
      "height": 412
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 6": {
    "userAgent": "Mozilla/5.0 (Linux; Android 7.1.1; Nexus 6 Build/N6F26U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 412,
      "height": 732
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 6 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 7.1.1; Nexus 6 Build/N6F26U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 732,
      "height": 412
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 6P": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 6P Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 412,
      "height": 732
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 6P landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 6P Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 732,
      "height": 412
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 7": {
    "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 7 Build/MOB30X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "viewport": {
      "width": 600,
      "height": 960
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nexus 7 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 7 Build/MOB30X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "viewport": {
      "width": 960,
      "height": 600
    },
    "deviceScaleFactor": 2,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nokia Lumia 520": {
    "userAgent": "Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 520)",
    "viewport": {
      "width": 320,
      "height": 533
    },
    "deviceScaleFactor": 1.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nokia Lumia 520 landscape": {
    "userAgent": "Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 520)",
    "viewport": {
      "width": 533,
      "height": 320
    },
    "deviceScaleFactor": 1.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Nokia N9": {
    "userAgent": "Mozilla/5.0 (MeeGo; NokiaN9) AppleWebKit/534.13 (KHTML, like Gecko) NokiaBrowser/8.5.0 Mobile Safari/534.13",
    "viewport": {
      "width": 480,
      "height": 854
    },
    "deviceScaleFactor": 1,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Nokia N9 landscape": {
    "userAgent": "Mozilla/5.0 (MeeGo; NokiaN9) AppleWebKit/534.13 (KHTML, like Gecko) NokiaBrowser/8.5.0 Mobile Safari/534.13",
    "viewport": {
      "width": 854,
      "height": 480
    },
    "deviceScaleFactor": 1,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "webkit"
  },
  "Pixel 2": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 411,
      "height": 731
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 2 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 731,
      "height": 411
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 2 XL": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 411,
      "height": 823
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 2 XL landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 823,
      "height": 411
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 3": {
    "userAgent": "Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 393,
      "height": 786
    },
    "deviceScaleFactor": 2.75,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 3 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 786,
      "height": 393
    },
    "deviceScaleFactor": 2.75,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 4": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 353,
      "height": 745
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 4 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 745,
      "height": 353
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 4a (5G)": {
    "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 4a (5G)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 412,
      "height": 892
    },
    "viewport": {
      "width": 412,
      "height": 765
    },
    "deviceScaleFactor": 2.63,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 4a (5G) landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 4a (5G)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "height": 892,
      "width": 412
    },
    "viewport": {
      "width": 840,
      "height": 312
    },
    "deviceScaleFactor": 2.63,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 5": {
    "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 393,
      "height": 851
    },
    "viewport": {
      "width": 393,
      "height": 727
    },
    "deviceScaleFactor": 2.75,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 5 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 851,
      "height": 393
    },
    "viewport": {
      "width": 802,
      "height": 293
    },
    "deviceScaleFactor": 2.75,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 6": {
    "userAgent": "Mozilla/5.0 (Linux; Android 12; Pixel 6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 412,
      "height": 915
    },
    "viewport": {
      "width": 412,
      "height": 839
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 6 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 12; Pixel 6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 915,
      "height": 412
    },
    "viewport": {
      "width": 863,
      "height": 360
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 6 Pro": {
    "userAgent": "Mozilla/5.0 (Linux; Android 12; Pixel 6 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 412,
      "height": 892
    },
    "viewport": {
      "width": 412,
      "height": 816
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 6 Pro landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 12; Pixel 6 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 892,
      "height": 412
    },
    "viewport": {
      "width": 840,
      "height": 360
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 6a": {
    "userAgent": "Mozilla/5.0 (Linux; Android 12; Pixel 6a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 412,
      "height": 915
    },
    "viewport": {
      "width": 412,
      "height": 839
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 6a landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 12; Pixel 6a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 915,
      "height": 412
    },
    "viewport": {
      "width": 863,
      "height": 360
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 7": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 412,
      "height": 915
    },
    "viewport": {
      "width": 412,
      "height": 839
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 7 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 915,
      "height": 412
    },
    "viewport": {
      "width": 863,
      "height": 360
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 7 Pro": {
    "userAgent": "Mozilla/5.0 (Linux; Android 13; Pixel 7 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 412,
      "height": 892
    },
    "viewport": {
      "width": 412,
      "height": 816
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 7 Pro landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 13; Pixel 7 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 892,
      "height": 412
    },
    "viewport": {
      "width": 840,
      "height": 360
    },
    "deviceScaleFactor": 3.5,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 7a": {
    "userAgent": "Mozilla/5.0 (Linux; Android 13; Pixel 7a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 412,
      "height": 915
    },
    "viewport": {
      "width": 412,
      "height": 839
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 7a landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 13; Pixel 7a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 915,
      "height": 412
    },
    "viewport": {
      "width": 863,
      "height": 360
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 8": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 8) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 412,
      "height": 915
    },
    "viewport": {
      "width": 412,
      "height": 839
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 8 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 8) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 915,
      "height": 412
    },
    "viewport": {
      "width": 863,
      "height": 360
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 8 Pro": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 8 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 448,
      "height": 997
    },
    "viewport": {
      "width": 448,
      "height": 921
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 8 Pro landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 8 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 997,
      "height": 448
    },
    "viewport": {
      "width": 945,
      "height": 396
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 8a": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 8a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 412,
      "height": 915
    },
    "viewport": {
      "width": 412,
      "height": 839
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 8a landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 8a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 915,
      "height": 412
    },
    "viewport": {
      "width": 863,
      "height": 360
    },
    "deviceScaleFactor": 2.625,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 9": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 9) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 360,
      "height": 808
    },
    "viewport": {
      "width": 360,
      "height": 732
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 9 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 9) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 808,
      "height": 360
    },
    "viewport": {
      "width": 756,
      "height": 308
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 9 Pro": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 9 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 427,
      "height": 952
    },
    "viewport": {
      "width": 427,
      "height": 876
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 9 Pro landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 9 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 952,
      "height": 427
    },
    "viewport": {
      "width": 900,
      "height": 375
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 9 Pro XL": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 9 Pro XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 448,
      "height": 997
    },
    "viewport": {
      "width": 448,
      "height": 921
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 9 Pro XL landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 9 Pro XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 997,
      "height": 448
    },
    "viewport": {
      "width": 945,
      "height": 396
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 10": {
    "userAgent": "Mozilla/5.0 (Linux; Android 16; Pixel 10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 360,
      "height": 808
    },
    "viewport": {
      "width": 360,
      "height": 732
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 10 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 16; Pixel 10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 808,
      "height": 360
    },
    "viewport": {
      "width": 756,
      "height": 308
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 10 Pro": {
    "userAgent": "Mozilla/5.0 (Linux; Android 16; Pixel 10 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 427,
      "height": 952
    },
    "viewport": {
      "width": 427,
      "height": 876
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 10 Pro landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 16; Pixel 10 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 952,
      "height": 427
    },
    "viewport": {
      "width": 900,
      "height": 375
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 10 Pro XL": {
    "userAgent": "Mozilla/5.0 (Linux; Android 16; Pixel 10 Pro XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 448,
      "height": 997
    },
    "viewport": {
      "width": 448,
      "height": 921
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Pixel 10 Pro XL landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 16; Pixel 10 Pro XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "screen": {
      "width": 997,
      "height": 448
    },
    "viewport": {
      "width": 945,
      "height": 396
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Moto G4": {
    "userAgent": "Mozilla/5.0 (Linux; Android 7.0; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 360,
      "height": 640
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Moto G4 landscape": {
    "userAgent": "Mozilla/5.0 (Linux; Android 7.0; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Mobile Safari/537.36",
    "viewport": {
      "width": 640,
      "height": 360
    },
    "deviceScaleFactor": 3,
    "isMobile": true,
    "hasTouch": true,
    "defaultBrowserType": "chromium"
  },
  "Desktop Chrome HiDPI": {
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "screen": {
      "width": 1792,
      "height": 1120
    },
    "viewport": {
      "width": 1280,
      "height": 720
    },
    "deviceScaleFactor": 2,
    "isMobile": false,
    "hasTouch": false,
    "defaultBrowserType": "chromium"
  },
  "Desktop Edge HiDPI": {
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36 Edg/149.0.7827.55",
    "screen": {
      "width": 1792,
      "height": 1120
    },
    "viewport": {
      "width": 1280,
      "height": 720
    },
    "deviceScaleFactor": 2,
    "isMobile": false,
    "hasTouch": false,
    "defaultBrowserType": "chromium"
  },
  "Desktop Firefox HiDPI": {
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:151.0) Gecko/20100101 Firefox/151.0",
    "screen": {
      "width": 1792,
      "height": 1120
    },
    "viewport": {
      "width": 1280,
      "height": 720
    },
    "deviceScaleFactor": 2,
    "isMobile": false,
    "hasTouch": false,
    "defaultBrowserType": "firefox"
  },
  "Desktop Safari": {
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Safari/605.1.15",
    "screen": {
      "width": 1792,
      "height": 1120
    },
    "viewport": {
      "width": 1280,
      "height": 720
    },
    "deviceScaleFactor": 2,
    "isMobile": false,
    "hasTouch": false,
    "defaultBrowserType": "webkit"
  },
  "Desktop Chrome": {
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36",
    "screen": {
      "width": 1920,
      "height": 1080
    },
    "viewport": {
      "width": 1280,
      "height": 720
    },
    "deviceScaleFactor": 1,
    "isMobile": false,
    "hasTouch": false,
    "defaultBrowserType": "chromium"
  },
  "Desktop Edge": {
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.7827.55 Safari/537.36 Edg/149.0.7827.55",
    "screen": {
      "width": 1920,
      "height": 1080
    },
    "viewport": {
      "width": 1280,
      "height": 720
    },
    "deviceScaleFactor": 1,
    "isMobile": false,
    "hasTouch": false,
    "defaultBrowserType": "chromium"
  },
  "Desktop Firefox": {
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:151.0) Gecko/20100101 Firefox/151.0",
    "screen": {
      "width": 1920,
      "height": 1080
    },
    "viewport": {
      "width": 1280,
      "height": 720
    },
    "deviceScaleFactor": 1,
    "isMobile": false,
    "hasTouch": false,
    "defaultBrowserType": "firefox"
  }
}
scripts/node_modules/playwright-core/lib/server/electron/loader.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,115 @@
"use strict";
// packages/playwright-core/src/server/electron/loader.ts
var import_electron = require("electron");
// packages/playwright-core/src/server/chromium/chromiumSwitches.ts
var disabledFeatures = [
  // See https://github.com/microsoft/playwright/issues/14047
  "AvoidUnnecessaryBeforeUnloadCheckSync",
  // See https://github.com/microsoft/playwright/issues/38568
  "BoundaryEventDispatchTracksNodeRemoval",
  "DestroyProfileOnBrowserClose",
  // See https://github.com/microsoft/playwright/pull/13854
  "DialMediaRouteProvider",
  "GlobalMediaControls",
  // See https://github.com/microsoft/playwright/pull/27605
  "HttpsUpgrades",
  // Hides the Lens feature in the URL address bar. Its not working in unofficial builds.
  "LensOverlay",
  // See https://github.com/microsoft/playwright/pull/8162
  "MediaRouter",
  // See https://github.com/microsoft/playwright/issues/28023
  "PaintHolding",
  // See https://github.com/microsoft/playwright/issues/32230
  "ThirdPartyStoragePartitioning",
  // See https://github.com/microsoft/playwright/issues/16126
  "Translate",
  // See https://issues.chromium.org/u/1/issues/435410220
  "AutoDeElevate",
  // See https://github.com/microsoft/playwright/issues/37714
  "RenderDocument",
  // Prevents downloading optimization hints on startup.
  "OptimizationHints",
  // Disables forced sign-in in Edge.
  "msForceBrowserSignIn",
  // Disables updating the preferred version in LaunchServices preferences on mac.
  "msEdgeUpdateLaunchServicesPreferredVersion"
].filter(Boolean);
var chromiumSwitches = (options) => [
  "--disable-field-trial-config",
  // https://source.chromium.org/chromium/chromium/src/+/main:testing/variations/README.md
  "--disable-background-networking",
  "--disable-background-timer-throttling",
  "--disable-backgrounding-occluded-windows",
  "--disable-back-forward-cache",
  // Avoids surprises like main request not being intercepted during page.goBack().
  "--disable-breakpad",
  "--disable-client-side-phishing-detection",
  "--disable-component-extensions-with-background-pages",
  "--disable-component-update",
  // Avoids unneeded network activity after startup.
  "--no-default-browser-check",
  "--disable-default-apps",
  "--disable-dev-shm-usage",
  "--disable-edgeupdater",
  // Disables Edge-specific updater on mac.
  "--disable-extensions",
  "--disable-features=" + disabledFeatures.join(","),
  process.env.PLAYWRIGHT_LEGACY_SCREENSHOT ? "" : "--enable-features=CDPScreenshotNewSurface",
  "--allow-pre-commit-input",
  "--disable-hang-monitor",
  "--disable-ipc-flooding-protection",
  "--disable-popup-blocking",
  "--disable-prompt-on-repost",
  "--disable-renderer-backgrounding",
  "--force-color-profile=srgb",
  "--metrics-recording-only",
  "--no-first-run",
  "--password-store=basic",
  "--use-mock-keychain",
  // See https://chromium-review.googlesource.com/c/chromium/src/+/2436773
  "--no-service-autorun",
  "--export-tagged-pdf",
  // https://chromium-review.googlesource.com/c/chromium/src/+/4853540
  "--disable-search-engine-choice-screen",
  // https://issues.chromium.org/41491762
  "--unsafely-disable-devtools-self-xss-warnings",
  // Edge can potentially restart on Windows (msRelaunchNoCompatLayer) which looses its file descriptors (stdout/stderr) and CDP (3/4). Disable until fixed upstream.
  "--edge-skip-compat-layer-relaunch",
  // This disables Chrome for Testing infobar that is visible in the persistent context.
  // The switch is ignored everywhere else, including Chromium/Chrome/Edge.
  "--disable-infobars",
  // Less annoying popups.
  "--disable-search-engine-choice-screen",
  // Prevents the "three dots" menu crash in IdentityManager::HasPrimaryAccount for ephemeral contexts.
  options?.android ? "" : "--disable-sync"
].filter(Boolean);
// packages/playwright-core/src/server/electron/loader.ts
process.argv.splice(1, process.argv.indexOf("--remote-debugging-port=0"));
for (const arg of chromiumSwitches()) {
  const match = arg.match(/--([^=]*)=?(.*)/);
  import_electron.app.commandLine.appendSwitch(match[1], match[2]);
}
var originalWhenReady = import_electron.app.whenReady();
var originalEmit = import_electron.app.emit.bind(import_electron.app);
var readyEventArgs;
import_electron.app.emit = (event, ...args) => {
  if (event === "ready") {
    readyEventArgs = args;
    return import_electron.app.listenerCount("ready") > 0;
  }
  return originalEmit(event, ...args);
};
var isReady = false;
var whenReadyCallback;
var whenReadyPromise = new Promise((f) => whenReadyCallback = f);
import_electron.app.isReady = () => isReady;
import_electron.app.whenReady = () => whenReadyPromise;
globalThis.__playwright_run = async () => {
  const event = await originalWhenReady;
  isReady = true;
  whenReadyCallback(event);
  originalEmit("ready", ...readyEventArgs);
};
scripts/node_modules/playwright-core/lib/serverRegistry.js
¶Ô±ÈÐÂÎļþ
ÎļþÌ«´ó
scripts/node_modules/playwright-core/lib/serverRegistry.js.LICENSE
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,354 @@
packages/playwright-core/lib/serverRegistry.js
THIRD-PARTY SOFTWARE NOTICES AND INFORMATION
The following npm packages are inlined into this bundle.
- anymatch@3.1.3 (https://github.com/micromatch/anymatch)
- binary-extensions@2.3.0 (https://github.com/sindresorhus/binary-extensions)
- braces@3.0.3 (https://github.com/micromatch/braces)
- chokidar@3.6.0 (https://github.com/paulmillr/chokidar)
- fill-range@7.1.1 (https://github.com/jonschlinkert/fill-range)
- glob-parent@5.1.2 (https://github.com/gulpjs/glob-parent)
- is-binary-path@2.1.0 (https://github.com/sindresorhus/is-binary-path)
- is-extglob@2.1.1 (https://github.com/jonschlinkert/is-extglob)
- is-glob@4.0.3 (https://github.com/micromatch/is-glob)
- is-number@7.0.0 (https://github.com/jonschlinkert/is-number)
- normalize-path@3.0.0 (https://github.com/jonschlinkert/normalize-path)
- picomatch@2.3.2 (https://github.com/micromatch/picomatch)
- readdirp@3.6.0 (https://github.com/paulmillr/readdirp)
- to-regex-range@5.0.1 (https://github.com/micromatch/to-regex-range)
%% anymatch@3.1.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) 2019 Elan Shanker, Paul Miller (https://paulmillr.com)
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF anymatch@3.1.3 NOTICES AND INFORMATION
%% binary-extensions@2.3.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
Copyright (c) Paul Miller (https://paulmillr.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF binary-extensions@2.3.0 NOTICES AND INFORMATION
%% braces@3.0.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF braces@3.0.3 NOTICES AND INFORMATION
%% chokidar@3.6.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2012-2019 Paul Miller (https://paulmillr.com), Elan Shanker
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the â€œSoftware”), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED â€œAS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF chokidar@3.6.0 NOTICES AND INFORMATION
%% fill-range@7.1.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF fill-range@7.1.1 NOTICES AND INFORMATION
%% glob-parent@5.1.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) 2015, 2019 Elan Shanker
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF glob-parent@5.1.2 NOTICES AND INFORMATION
%% is-binary-path@2.1.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2019 Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com), Paul Miller (https://paulmillr.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF is-binary-path@2.1.0 NOTICES AND INFORMATION
%% is-extglob@2.1.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-2016, Jon Schlinkert
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF is-extglob@2.1.1 NOTICES AND INFORMATION
%% is-glob@4.0.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-2017, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF is-glob@4.0.3 NOTICES AND INFORMATION
%% is-number@7.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF is-number@7.0.0 NOTICES AND INFORMATION
%% normalize-path@3.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-2018, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF normalize-path@3.0.0 NOTICES AND INFORMATION
%% picomatch@2.3.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2017-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF picomatch@2.3.2 NOTICES AND INFORMATION
%% readdirp@3.6.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2012-2019 Thorsten Lorenz, Paul Miller (https://paulmillr.com)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF readdirp@3.6.0 NOTICES AND INFORMATION
%% to-regex-range@5.0.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2015-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF to-regex-range@5.0.1 NOTICES AND INFORMATION
SUMMARY
=========================================
Total Packages: 14
=========================================
scripts/node_modules/playwright-core/lib/tools/cli-client/channelSessions.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,141 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var channelSessions_exports = {};
__export(channelSessions_exports, {
  isKnownChannel: () => isKnownChannel,
  listChannelSessions: () => listChannelSessions
});
module.exports = __toCommonJS(channelSessions_exports);
var import_fs = __toESM(require("fs"));
var import_net = __toESM(require("net"));
var import_os = __toESM(require("os"));
var import_path = __toESM(require("path"));
var import_extension = require("../utils/extension");
function isKnownChannel(name) {
  return channelToUserDataDir.has(name);
}
async function listChannelSessions() {
  if (process.env.PWTEST_CLI_CHANNEL_SCAN_DISABLED_FOR_TEST)
    return [];
  const result = [];
  for (const [channel, dirs] of channelToUserDataDir) {
    const userDataDir = dirs[process.platform];
    if (!userDataDir)
      continue;
    if (!await pathExists(userDataDir))
      continue;
    const [endpoint, extensionInstalled] = await Promise.all([
      readEndpoint(userDataDir),
      (0, import_extension.isPlaywrightExtensionInstalled)(userDataDir)
    ]);
    result.push({ channel, userDataDir, endpoint, extensionInstalled });
  }
  return result;
}
async function pathExists(p) {
  try {
    await import_fs.default.promises.access(p);
    return true;
  } catch {
    return false;
  }
}
async function readEndpoint(userDataDir) {
  let contents;
  try {
    contents = await import_fs.default.promises.readFile(import_path.default.join(userDataDir, "DevToolsActivePort"), "utf-8");
  } catch {
    return void 0;
  }
  const port = parseInt(contents.trim().split("\n")[0], 10);
  if (!Number.isFinite(port))
    return void 0;
  if (!await isPortOpen(port))
    return void 0;
  return `http://localhost:${port}`;
}
async function isPortOpen(port) {
  return new Promise((resolve) => {
    const socket = import_net.default.createConnection(port, "127.0.0.1");
    const done = (value) => {
      socket.destroy();
      resolve(value);
    };
    socket.once("connect", () => done(true));
    socket.once("error", () => done(false));
    socket.setTimeout(250, () => done(false));
  });
}
const channelToUserDataDir = /* @__PURE__ */ new Map([
  ["chrome", {
    "linux": import_path.default.join(import_os.default.homedir(), ".config", "google-chrome"),
    "darwin": import_path.default.join(import_os.default.homedir(), "Library", "Application Support", "Google", "Chrome"),
    "win32": import_path.default.join(process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"), "Google", "Chrome", "User Data")
  }],
  ["chrome-beta", {
    "linux": import_path.default.join(import_os.default.homedir(), ".config", "google-chrome-beta"),
    "darwin": import_path.default.join(import_os.default.homedir(), "Library", "Application Support", "Google", "Chrome Beta"),
    "win32": import_path.default.join(process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"), "Google", "Chrome Beta", "User Data")
  }],
  ["chrome-dev", {
    "linux": import_path.default.join(import_os.default.homedir(), ".config", "google-chrome-unstable"),
    "darwin": import_path.default.join(import_os.default.homedir(), "Library", "Application Support", "Google", "Chrome Dev"),
    "win32": import_path.default.join(process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"), "Google", "Chrome Dev", "User Data")
  }],
  ["chrome-canary", {
    "linux": import_path.default.join(import_os.default.homedir(), ".config", "google-chrome-canary"),
    "darwin": import_path.default.join(import_os.default.homedir(), "Library", "Application Support", "Google", "Chrome Canary"),
    "win32": import_path.default.join(process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"), "Google", "Chrome SxS", "User Data")
  }],
  ["msedge", {
    "linux": import_path.default.join(import_os.default.homedir(), ".config", "microsoft-edge"),
    "darwin": import_path.default.join(import_os.default.homedir(), "Library", "Application Support", "Microsoft Edge"),
    "win32": import_path.default.join(process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"), "Microsoft", "Edge", "User Data")
  }],
  ["msedge-beta", {
    "linux": import_path.default.join(import_os.default.homedir(), ".config", "microsoft-edge-beta"),
    "darwin": import_path.default.join(import_os.default.homedir(), "Library", "Application Support", "Microsoft Edge Beta"),
    "win32": import_path.default.join(process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"), "Microsoft", "Edge Beta", "User Data")
  }],
  ["msedge-dev", {
    "linux": import_path.default.join(import_os.default.homedir(), ".config", "microsoft-edge-dev"),
    "darwin": import_path.default.join(import_os.default.homedir(), "Library", "Application Support", "Microsoft Edge Dev"),
    "win32": import_path.default.join(process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"), "Microsoft", "Edge Dev", "User Data")
  }],
  ["msedge-canary", {
    "linux": import_path.default.join(import_os.default.homedir(), ".config", "microsoft-edge-canary"),
    "darwin": import_path.default.join(import_os.default.homedir(), "Library", "Application Support", "Microsoft Edge Canary"),
    "win32": import_path.default.join(process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"), "Microsoft", "Edge SxS", "User Data")
  }]
]);
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  isKnownChannel,
  listChannelSessions
});
scripts/node_modules/playwright-core/lib/tools/cli-client/cli.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
"use strict";
var import_program = require("./program");
(0, import_program.program)().catch((e) => {
  console.error(e.message);
  process.exit(1);
});
scripts/node_modules/playwright-core/lib/tools/cli-client/help.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,693 @@
{
  "global": "Usage: playwright-cli <command> [args] [options]\nUsage: playwright-cli -s=<session> <command> [args] [options]\n\nCore:\n  open [url]                  open the browser\n  attach [name]               attach to a running playwright browser\n  close                       close the browser\n  detach                      detach from an attached browser\n  goto <url>                  navigate to a url\n  type <text>                 type text into editable element\n  click <target> [button]     perform click on a web page\n  dblclick <target> [button]  perform double click on a web page\n  fill <target> <text>        fill text into editable element\n  drag <startTarget> <endTarget> perform drag and drop between two elements\n  drop <target>               drop files or data onto an element\n  hover <target>              hover over element on page\n  select <target> <val>       select an option in a dropdown\n  upload <file>               upload one or multiple files\n  check <target>              check a checkbox or radio button\n  uncheck <target>            uncheck a checkbox or radio button\n  snapshot [target]           capture page snapshot to obtain element ref\n  eval <func> [target]        evaluate javascript expression on page or element\n  dialog-accept [prompt]      accept a dialog\n  dialog-dismiss              dismiss a dialog\n  resize <w> <h>              resize the browser window\n  delete-data                 delete session data\n\nNavigation:\n  go-back                     go back to the previous page\n  go-forward                  go forward to the next page\n  reload                      reload the current page\n\nKeyboard:\n  press <key>                 press a key on the keyboard, `a`, `arrowleft`\n  keydown <key>               press a key down on the keyboard\n  keyup <key>                 press a key up on the keyboard\n\nMouse:\n  mousemove <x> <y>           move mouse to a given position\n  mousedown [button]          press mouse down\n  mouseup [button]            press mouse up\n  mousewheel <dx> <dy>        scroll mouse wheel\n\nSave as:\n  screenshot [target]         screenshot of the current page or element\n  pdf                         save page as pdf\n\nTabs:\n  tab-list                    list all tabs\n  tab-new [url]               create a new tab\n  tab-close [index]           close a browser tab\n  tab-select <index>          select a browser tab\n\nStorage:\n  state-load <filename>       loads browser storage (authentication) state from a file\n  state-save [filename]       saves the current storage (authentication) state to a file\n  cookie-list                 list all cookies (optionally filtered by domain/path)\n  cookie-get <name>           get a specific cookie by name\n  cookie-set <name> <value>   set a cookie with optional flags\n  cookie-delete <name>        delete a specific cookie\n  cookie-clear                clear all cookies\n  localstorage-list           list all localstorage key-value pairs\n  localstorage-get <key>      get a localstorage item by key\n  localstorage-set <key> <value> set a localstorage item\n  localstorage-delete <key>   delete a localstorage item\n  localstorage-clear          clear all localstorage\n  sessionstorage-list         list all sessionstorage key-value pairs\n  sessionstorage-get <key>    get a sessionstorage item by key\n  sessionstorage-set <key> <value> set a sessionstorage item\n  sessionstorage-delete <key> delete a sessionstorage item\n  sessionstorage-clear        clear all sessionstorage\n\nNetwork:\n  requests                    list all network requests since loading the page. each request is numbered for use with the `request` command.\n  request <index>             show full details (headers, body, response) of a single network request by its number from the `requests` command.\n  request-headers <index>     print only the request headers for a single network request by its number from the `requests` command.\n  request-body <index>        print only the request body for a single network request by its number from the `requests` command.\n  response-headers <index>    print only the response headers for a single network request by its number from the `requests` command.\n  response-body <index>       print the response body for a single network request by its number from the `requests` command. textual bodies are inlined; binary bodies are saved to a file and the path is printed.\n  route <pattern>             mock network requests matching a url pattern\n  route-list                  list all active network routes\n  unroute [pattern]           remove routes matching a pattern (or all routes)\n  network-state-set <state>   set the browser network state to online or offline\n\nDevTools:\n  console [min-level]         list console messages\n  run-code [code]             run playwright code snippet\n  tracing-start               start trace recording\n  tracing-stop                stop trace recording\n  video-start [filename]      start video recording\n  video-stop                  stop video recording\n  video-chapter <title>       add a chapter marker to the video recording\n  video-show-actions          annotate subsequent cli/mcp actions on the page with a callout that names the action and highlights the target element\n  video-hide-actions          stop annotating actions performed on the page\n  show                        show playwright dashboard\n  pause-at <location>         run the test up to a specific location and pause there\n  resume                      resume the test execution\n  step-over                   step over the next call in the test\n  generate-locator <target>   generate a playwright locator for the given element\n  highlight [target]          show (or with --hide, remove) a highlight overlay for an element; `--hide` without a target hides all page highlights.\n\nInstall:\n  install                     initialize workspace\n  install-browser [browser]   install browser\n\nBrowser sessions:\n  list                        list browser sessions\n  close-all                   close all browser sessions\n  kill-all                    forcefully kill all browser sessions (for stale/zombie processes)\n\nGlobal options:\n  --help [command]            print help\n  --json                      output response as JSON\n  --raw                       output only the result value, without status and code\n  --version                   print version",
  "commands": {
    "open": {
      "help": "playwright-cli open [url]\n\nOpen the browser\n\nArguments:\n  [url]                       the url to navigate to\nOptions:\n  --browser                   browser or chrome channel to use, possible values: chrome, firefox, webkit, msedge.\n  --config                    path to the configuration file, defaults to .playwright/cli.config.json\n  --headed                    run browser in headed mode\n  --persistent                use persistent browser profile\n  --profile                   path to a persistent user data directory.",
      "flags": {
        "browser": "string",
        "config": "string",
        "headed": "boolean",
        "persistent": "boolean",
        "profile": "string"
      },
      "args": [
        "url"
      ]
    },
    "attach": {
      "help": "playwright-cli attach [name]\n\nAttach to a running Playwright browser\n\nArguments:\n  [name]                      bound browser name to attach to\nOptions:\n  --cdp                       connect to an existing browser via cdp endpoint url.\n  --endpoint                  playwright browser server endpoint to attach to.\n  --extension                 connect to browser extension, optionally specify browser name (e.g. --extension=chrome)\n  --config                    path to the configuration file, defaults to .playwright/cli.config.json\n  --session                   session name (defaults to bound browser name or \"default\")",
      "flags": {
        "cdp": "string",
        "endpoint": "string",
        "extension": "string",
        "config": "string",
        "session": "string"
      },
      "args": [
        "name"
      ]
    },
    "close": {
      "help": "playwright-cli close \n\nClose the browser\n",
      "flags": {},
      "args": []
    },
    "detach": {
      "help": "playwright-cli detach \n\nDetach from an attached browser\n",
      "flags": {},
      "args": []
    },
    "goto": {
      "help": "playwright-cli goto <url>\n\nNavigate to a URL\n\nArguments:\n  <url>                       the url to navigate to",
      "flags": {},
      "args": [
        "url"
      ]
    },
    "type": {
      "help": "playwright-cli type <text>\n\nType text into editable element\n\nArguments:\n  <text>                      text to type into the element\nOptions:\n  --submit                    whether to submit entered text (press enter after)",
      "flags": {
        "submit": "boolean"
      },
      "args": [
        "text"
      ]
    },
    "click": {
      "help": "playwright-cli click <target> [button]\n\nPerform click on a web page\n\nArguments:\n  <target>                    exact target element reference from the page snapshot, or a unique element selector\n  [button]                    button to click, defaults to left\nOptions:\n  --modifiers                 modifier key to press (repeatable)",
      "flags": {
        "modifiers": "string"
      },
      "args": [
        "target",
        "button"
      ]
    },
    "dblclick": {
      "help": "playwright-cli dblclick <target> [button]\n\nPerform double click on a web page\n\nArguments:\n  <target>                    exact target element reference from the page snapshot, or a unique element selector\n  [button]                    button to click, defaults to left\nOptions:\n  --modifiers                 modifier key to press (repeatable)",
      "flags": {
        "modifiers": "string"
      },
      "args": [
        "target",
        "button"
      ]
    },
    "fill": {
      "help": "playwright-cli fill <target> <text>\n\nFill text into editable element\n\nArguments:\n  <target>                    exact target element reference from the page snapshot, or a unique element selector\n  <text>                      text to fill into the element\nOptions:\n  --submit                    whether to submit entered text (press enter after)",
      "flags": {
        "submit": "boolean"
      },
      "args": [
        "target",
        "text"
      ]
    },
    "drag": {
      "help": "playwright-cli drag <startTarget> <endTarget>\n\nPerform drag and drop between two elements\n\nArguments:\n  <startTarget>               exact source element reference from the page snapshot, or a unique element selector\n  <endTarget>                 exact target element reference from the page snapshot, or a unique element selector",
      "flags": {},
      "args": [
        "startTarget",
        "endTarget"
      ]
    },
    "drop": {
      "help": "playwright-cli drop <target>\n\nDrop files or data onto an element\n\nArguments:\n  <target>                    exact target element reference from the page snapshot, or a unique element selector\nOptions:\n  --path                      absolute path to a file to drop onto the element (repeatable)\n  --data                      data to drop in \"mime/type=value\" format, e.g. --data \"text/plain=hello\" (repeatable)",
      "flags": {
        "path": "string",
        "data": "string"
      },
      "args": [
        "target"
      ]
    },
    "hover": {
      "help": "playwright-cli hover <target>\n\nHover over element on page\n\nArguments:\n  <target>                    exact target element reference from the page snapshot, or a unique element selector",
      "flags": {},
      "args": [
        "target"
      ]
    },
    "select": {
      "help": "playwright-cli select <target> <val>\n\nSelect an option in a dropdown\n\nArguments:\n  <target>                    exact target element reference from the page snapshot, or a unique element selector\n  <val>                       value to select in the dropdown",
      "flags": {},
      "args": [
        "target",
        "val"
      ]
    },
    "upload": {
      "help": "playwright-cli upload <file>\n\nUpload one or multiple files\n\nArguments:\n  <file>                      the absolute paths to the files to upload",
      "flags": {},
      "args": [
        "file"
      ]
    },
    "check": {
      "help": "playwright-cli check <target>\n\nCheck a checkbox or radio button\n\nArguments:\n  <target>                    exact target element reference from the page snapshot, or a unique element selector",
      "flags": {},
      "args": [
        "target"
      ]
    },
    "uncheck": {
      "help": "playwright-cli uncheck <target>\n\nUncheck a checkbox or radio button\n\nArguments:\n  <target>                    exact target element reference from the page snapshot, or a unique element selector",
      "flags": {},
      "args": [
        "target"
      ]
    },
    "snapshot": {
      "help": "playwright-cli snapshot [target]\n\nCapture page snapshot to obtain element ref\n\nArguments:\n  [target]                    element reference from the previous page snapshot, or a unique element selector for the root element to capture a partial snapshot instead of the whole page\nOptions:\n  --filename                  save snapshot to markdown file instead of returning it in the response.\n  --depth                     limit snapshot depth, unlimited by default.\n  --boxes                     include each element's bounding box as [box=x,y,width,height] in the snapshot. coordinates are viewport-relative, in css pixels (element.getboundingclientrect).",
      "flags": {
        "filename": "string",
        "depth": "string",
        "boxes": "boolean"
      },
      "args": [
        "target"
      ]
    },
    "eval": {
      "help": "playwright-cli eval <func> [target]\n\nEvaluate JavaScript expression on page or element\n\nArguments:\n  <func>                      () => { /* code */ } or (element) => { /* code */ } when element is provided\n  [target]                    exact target element reference from the page snapshot, or a unique element selector\nOptions:\n  --filename                  save evaluation result to a file instead of returning it in the response.",
      "flags": {
        "filename": "string"
      },
      "args": [
        "func",
        "target"
      ]
    },
    "console": {
      "help": "playwright-cli console [min-level]\n\nList console messages\n\nArguments:\n  [min-level]                 level of the console messages to return. each level includes the messages of more severe levels. defaults to \"info\".\nOptions:\n  --clear                     whether to clear the console list",
      "flags": {
        "clear": "boolean"
      },
      "args": [
        "min-level"
      ]
    },
    "dialog-accept": {
      "help": "playwright-cli dialog-accept [prompt]\n\nAccept a dialog\n\nArguments:\n  [prompt]                    the text of the prompt in case of a prompt dialog.",
      "flags": {},
      "args": [
        "prompt"
      ]
    },
    "dialog-dismiss": {
      "help": "playwright-cli dialog-dismiss \n\nDismiss a dialog\n",
      "flags": {},
      "args": []
    },
    "resize": {
      "help": "playwright-cli resize <w> <h>\n\nResize the browser window\n\nArguments:\n  <w>                         width of the browser window\n  <h>                         height of the browser window",
      "flags": {},
      "args": [
        "w",
        "h"
      ]
    },
    "run-code": {
      "help": "playwright-cli run-code [code]\n\nRun Playwright code snippet\n\nArguments:\n  [code]                      a javascript function containing playwright code to execute. it will be invoked with a single argument, page, which you can use for any page interaction.\nOptions:\n  --filename                  load code from the specified file.",
      "flags": {
        "filename": "string"
      },
      "args": [
        "code"
      ]
    },
    "delete-data": {
      "help": "playwright-cli delete-data \n\nDelete session data\n",
      "flags": {},
      "args": []
    },
    "go-back": {
      "help": "playwright-cli go-back \n\nGo back to the previous page\n",
      "flags": {},
      "args": []
    },
    "go-forward": {
      "help": "playwright-cli go-forward \n\nGo forward to the next page\n",
      "flags": {},
      "args": []
    },
    "reload": {
      "help": "playwright-cli reload \n\nReload the current page\n",
      "flags": {},
      "args": []
    },
    "press": {
      "help": "playwright-cli press <key>\n\nPress a key on the keyboard, `a`, `ArrowLeft`\n\nArguments:\n  <key>                       name of the key to press or a character to generate, such as `arrowleft` or `a`",
      "flags": {},
      "args": [
        "key"
      ]
    },
    "keydown": {
      "help": "playwright-cli keydown <key>\n\nPress a key down on the keyboard\n\nArguments:\n  <key>                       name of the key to press or a character to generate, such as `arrowleft` or `a`",
      "flags": {},
      "args": [
        "key"
      ]
    },
    "keyup": {
      "help": "playwright-cli keyup <key>\n\nPress a key up on the keyboard\n\nArguments:\n  <key>                       name of the key to press or a character to generate, such as `arrowleft` or `a`",
      "flags": {},
      "args": [
        "key"
      ]
    },
    "mousemove": {
      "help": "playwright-cli mousemove <x> <y>\n\nMove mouse to a given position\n\nArguments:\n  <x>                         x coordinate\n  <y>                         y coordinate",
      "flags": {},
      "args": [
        "x",
        "y"
      ]
    },
    "mousedown": {
      "help": "playwright-cli mousedown [button]\n\nPress mouse down\n\nArguments:\n  [button]                    button to press, defaults to left",
      "flags": {},
      "args": [
        "button"
      ]
    },
    "mouseup": {
      "help": "playwright-cli mouseup [button]\n\nPress mouse up\n\nArguments:\n  [button]                    button to press, defaults to left",
      "flags": {},
      "args": [
        "button"
      ]
    },
    "mousewheel": {
      "help": "playwright-cli mousewheel <dx> <dy>\n\nScroll mouse wheel\n\nArguments:\n  <dx>                        x delta\n  <dy>                        y delta",
      "flags": {},
      "args": [
        "dx",
        "dy"
      ]
    },
    "screenshot": {
      "help": "playwright-cli screenshot [target]\n\nscreenshot of the current page or element\n\nArguments:\n  [target]                    exact target element reference from the page snapshot, or a unique element selector\nOptions:\n  --filename                  file name to save the screenshot to. defaults to `page-{timestamp}.{png|jpeg}` if not specified.\n  --full-page                 when true, takes a screenshot of the full scrollable page, instead of the currently visible viewport.",
      "flags": {
        "filename": "string",
        "full-page": "boolean"
      },
      "args": [
        "target"
      ]
    },
    "pdf": {
      "help": "playwright-cli pdf \n\nSave page as PDF\n\nOptions:\n  --filename                  file name to save the pdf to. defaults to `page-{timestamp}.pdf` if not specified.",
      "flags": {
        "filename": "string"
      },
      "args": []
    },
    "tab-list": {
      "help": "playwright-cli tab-list \n\nList all tabs\n",
      "flags": {},
      "args": []
    },
    "tab-new": {
      "help": "playwright-cli tab-new [url]\n\nCreate a new tab\n\nArguments:\n  [url]                       the url to navigate to in the new tab. if omitted, the new tab will be blank.",
      "flags": {},
      "args": [
        "url"
      ]
    },
    "tab-close": {
      "help": "playwright-cli tab-close [index]\n\nClose a browser tab\n\nArguments:\n  [index]                     tab index. if omitted, current tab is closed.",
      "flags": {},
      "args": [
        "index"
      ]
    },
    "tab-select": {
      "help": "playwright-cli tab-select <index>\n\nSelect a browser tab\n\nArguments:\n  <index>                     tab index",
      "flags": {},
      "args": [
        "index"
      ]
    },
    "state-load": {
      "help": "playwright-cli state-load <filename>\n\nLoads browser storage (authentication) state from a file\n\nArguments:\n  <filename>                  file name to load the storage state from.",
      "flags": {},
      "args": [
        "filename"
      ]
    },
    "state-save": {
      "help": "playwright-cli state-save [filename]\n\nSaves the current storage (authentication) state to a file\n\nArguments:\n  [filename]                  file name to save the storage state to.",
      "flags": {},
      "args": [
        "filename"
      ]
    },
    "cookie-list": {
      "help": "playwright-cli cookie-list \n\nList all cookies (optionally filtered by domain/path)\n\nOptions:\n  --domain                    filter cookies by domain\n  --path                      filter cookies by path",
      "flags": {
        "domain": "string",
        "path": "string"
      },
      "args": [],
      "raw": true
    },
    "cookie-get": {
      "help": "playwright-cli cookie-get <name>\n\nGet a specific cookie by name\n\nArguments:\n  <name>                      cookie name",
      "flags": {},
      "args": [
        "name"
      ],
      "raw": true
    },
    "cookie-set": {
      "help": "playwright-cli cookie-set <name> <value>\n\nSet a cookie with optional flags\n\nArguments:\n  <name>                      cookie name\n  <value>                     cookie value\nOptions:\n  --domain                    cookie domain\n  --path                      cookie path\n  --expires                   cookie expiration as unix timestamp\n  --httpOnly                  whether the cookie is http only\n  --secure                    whether the cookie is secure\n  --sameSite                  cookie samesite attribute",
      "flags": {
        "domain": "string",
        "path": "string",
        "expires": "string",
        "httpOnly": "boolean",
        "secure": "boolean",
        "sameSite": "string"
      },
      "args": [
        "name",
        "value"
      ]
    },
    "cookie-delete": {
      "help": "playwright-cli cookie-delete <name>\n\nDelete a specific cookie\n\nArguments:\n  <name>                      cookie name",
      "flags": {},
      "args": [
        "name"
      ]
    },
    "cookie-clear": {
      "help": "playwright-cli cookie-clear \n\nClear all cookies\n",
      "flags": {},
      "args": []
    },
    "localstorage-list": {
      "help": "playwright-cli localstorage-list \n\nList all localStorage key-value pairs\n",
      "flags": {},
      "args": [],
      "raw": true
    },
    "localstorage-get": {
      "help": "playwright-cli localstorage-get <key>\n\nGet a localStorage item by key\n\nArguments:\n  <key>                       key to get",
      "flags": {},
      "args": [
        "key"
      ],
      "raw": true
    },
    "localstorage-set": {
      "help": "playwright-cli localstorage-set <key> <value>\n\nSet a localStorage item\n\nArguments:\n  <key>                       key to set\n  <value>                     value to set",
      "flags": {},
      "args": [
        "key",
        "value"
      ]
    },
    "localstorage-delete": {
      "help": "playwright-cli localstorage-delete <key>\n\nDelete a localStorage item\n\nArguments:\n  <key>                       key to delete",
      "flags": {},
      "args": [
        "key"
      ]
    },
    "localstorage-clear": {
      "help": "playwright-cli localstorage-clear \n\nClear all localStorage\n",
      "flags": {},
      "args": []
    },
    "sessionstorage-list": {
      "help": "playwright-cli sessionstorage-list \n\nList all sessionStorage key-value pairs\n",
      "flags": {},
      "args": [],
      "raw": true
    },
    "sessionstorage-get": {
      "help": "playwright-cli sessionstorage-get <key>\n\nGet a sessionStorage item by key\n\nArguments:\n  <key>                       key to get",
      "flags": {},
      "args": [
        "key"
      ],
      "raw": true
    },
    "sessionstorage-set": {
      "help": "playwright-cli sessionstorage-set <key> <value>\n\nSet a sessionStorage item\n\nArguments:\n  <key>                       key to set\n  <value>                     value to set",
      "flags": {},
      "args": [
        "key",
        "value"
      ]
    },
    "sessionstorage-delete": {
      "help": "playwright-cli sessionstorage-delete <key>\n\nDelete a sessionStorage item\n\nArguments:\n  <key>                       key to delete",
      "flags": {},
      "args": [
        "key"
      ]
    },
    "sessionstorage-clear": {
      "help": "playwright-cli sessionstorage-clear \n\nClear all sessionStorage\n",
      "flags": {},
      "args": []
    },
    "requests": {
      "help": "playwright-cli requests \n\nList all network requests since loading the page. Each request is numbered for use with the `request` command.\n\nOptions:\n  --static                    whether to include successful static resources like images, fonts, scripts, etc. defaults to false.\n  --filter                    only return requests whose url matches this regexp (e.g. \"/api/.*user\").\n  --clear                     whether to clear the network list",
      "flags": {
        "static": "boolean",
        "filter": "string",
        "clear": "boolean"
      },
      "args": []
    },
    "request": {
      "help": "playwright-cli request <index>\n\nShow full details (headers, body, response) of a single network request by its number from the `requests` command.\n\nArguments:\n  <index>                     1-based number of the request as listed by `requests`\nOptions:\n  --filename                  filename to save the result to. if not provided, output is returned as text.",
      "flags": {
        "filename": "string"
      },
      "args": [
        "index"
      ]
    },
    "request-headers": {
      "help": "playwright-cli request-headers <index>\n\nPrint only the request headers for a single network request by its number from the `requests` command.\n\nArguments:\n  <index>                     1-based number of the request as listed by `requests`\nOptions:\n  --filename                  filename to save the result to. if not provided, output is returned as text.",
      "flags": {
        "filename": "string"
      },
      "args": [
        "index"
      ],
      "raw": true
    },
    "request-body": {
      "help": "playwright-cli request-body <index>\n\nPrint only the request body for a single network request by its number from the `requests` command.\n\nArguments:\n  <index>                     1-based number of the request as listed by `requests`\nOptions:\n  --filename                  filename to save the result to. if not provided, output is returned as text.",
      "flags": {
        "filename": "string"
      },
      "args": [
        "index"
      ],
      "raw": true
    },
    "response-headers": {
      "help": "playwright-cli response-headers <index>\n\nPrint only the response headers for a single network request by its number from the `requests` command.\n\nArguments:\n  <index>                     1-based number of the request as listed by `requests`\nOptions:\n  --filename                  filename to save the result to. if not provided, output is returned as text.",
      "flags": {
        "filename": "string"
      },
      "args": [
        "index"
      ],
      "raw": true
    },
    "response-body": {
      "help": "playwright-cli response-body <index>\n\nPrint the response body for a single network request by its number from the `requests` command. Textual bodies are inlined; binary bodies are saved to a file and the path is printed.\n\nArguments:\n  <index>                     1-based number of the request as listed by `requests`\nOptions:\n  --filename                  filename to save the result to. if not provided, output is returned as text.",
      "flags": {
        "filename": "string"
      },
      "args": [
        "index"
      ],
      "raw": true
    },
    "route": {
      "help": "playwright-cli route <pattern>\n\nMock network requests matching a URL pattern\n\nArguments:\n  <pattern>                   url pattern to match (e.g., \"**/api/users\")\nOptions:\n  --status                    http status code (default: 200)\n  --body                      response body (text or json string)\n  --content-type              content-type header\n  --header                    header to add in \"name: value\" format (repeatable)\n  --remove-header             comma-separated header names to remove",
      "flags": {
        "status": "string",
        "body": "string",
        "content-type": "string",
        "header": "string",
        "remove-header": "string"
      },
      "args": [
        "pattern"
      ]
    },
    "route-list": {
      "help": "playwright-cli route-list \n\nList all active network routes\n",
      "flags": {},
      "args": [],
      "raw": true
    },
    "unroute": {
      "help": "playwright-cli unroute [pattern]\n\nRemove routes matching a pattern (or all routes)\n\nArguments:\n  [pattern]                   url pattern to unroute (omit to remove all)",
      "flags": {},
      "args": [
        "pattern"
      ]
    },
    "network-state-set": {
      "help": "playwright-cli network-state-set <state>\n\nSet the browser network state to online or offline\n\nArguments:\n  <state>                     set to \"offline\" to simulate offline mode, \"online\" to restore network connectivity",
      "flags": {},
      "args": [
        "state"
      ]
    },
    "config-print": {
      "help": "playwright-cli config-print \n\nPrint the final resolved config after merging CLI options, environment variables and config file.\n",
      "flags": {},
      "args": []
    },
    "install": {
      "help": "playwright-cli install \n\nInitialize workspace\n\nOptions:\n  --skills                    install skills, possible values: claude (default), agents.",
      "flags": {
        "skills": "string"
      },
      "args": []
    },
    "install-browser": {
      "help": "playwright-cli install-browser [browser]\n\nInstall browser\n\nArguments:\n  [browser]                   browser to install\nOptions:\n  --with-deps                 install system dependencies for browsers\n  --dry-run                   do not execute installation, only print information\n  --list                      prints list of browsers from all playwright installations\n  --force                     force reinstall of already installed browsers\n  --only-shell                only install headless shell when installing chromium\n  --no-shell                  do not install chromium headless shell",
      "flags": {
        "with-deps": "boolean",
        "dry-run": "boolean",
        "list": "boolean",
        "force": "boolean",
        "only-shell": "boolean",
        "no-shell": "boolean"
      },
      "args": [
        "browser"
      ]
    },
    "tracing-start": {
      "help": "playwright-cli tracing-start \n\nStart trace recording\n",
      "flags": {},
      "args": []
    },
    "tracing-stop": {
      "help": "playwright-cli tracing-stop \n\nStop trace recording\n",
      "flags": {},
      "args": []
    },
    "video-start": {
      "help": "playwright-cli video-start [filename]\n\nStart video recording\n\nArguments:\n  [filename]                  filename to save the video.\nOptions:\n  --size                      video frame size, e.g. \"800x600\". if not specified, the size of the recorded video will fit 800x800.",
      "flags": {
        "size": "string"
      },
      "args": [
        "filename"
      ]
    },
    "video-stop": {
      "help": "playwright-cli video-stop \n\nStop video recording\n",
      "flags": {},
      "args": []
    },
    "video-chapter": {
      "help": "playwright-cli video-chapter <title>\n\nAdd a chapter marker to the video recording\n\nArguments:\n  <title>                     chapter title.\nOptions:\n  --description               chapter description.\n  --duration                  duration in milliseconds to show the chapter card.",
      "flags": {
        "description": "string",
        "duration": "string"
      },
      "args": [
        "title"
      ]
    },
    "video-show-actions": {
      "help": "playwright-cli video-show-actions \n\nAnnotate subsequent CLI/MCP actions on the page with a callout that names the action and highlights the target element\n\nOptions:\n  --duration                  how long each action annotation stays on screen, in milliseconds. defaults to 500.\n  --position                  where to place the action title: top-left, top, top-right, bottom-left, bottom, bottom-right. defaults to top-right.\n  --cursor                    cursor decoration: \"pointer\" (default) animates a mouse pointer between action points; \"none\" disables it.",
      "flags": {
        "duration": "string",
        "position": "string",
        "cursor": "string"
      },
      "args": []
    },
    "video-hide-actions": {
      "help": "playwright-cli video-hide-actions \n\nStop annotating actions performed on the page\n",
      "flags": {},
      "args": []
    },
    "show": {
      "help": "playwright-cli show \n\nShow Playwright Dashboard\n\nOptions:\n  --port                      start as a blocking http server on this port (use 0 for a random port)\n  --host                      host to bind to when using --port (defaults to localhost)\n  --annotate                  switch the dashboard into annotation mode.\n  --kill                      kill the dashboard daemon.",
      "flags": {
        "port": "string",
        "host": "string",
        "annotate": "boolean",
        "kill": "boolean"
      },
      "args": [],
      "raw": true
    },
    "pause-at": {
      "help": "playwright-cli pause-at <location>\n\nRun the test up to a specific location and pause there\n\nArguments:\n  <location>                  location to pause at. format is <file>:<line>, e.g. \"example.spec.ts:42\".",
      "flags": {},
      "args": [
        "location"
      ]
    },
    "resume": {
      "help": "playwright-cli resume \n\nResume the test execution\n",
      "flags": {},
      "args": []
    },
    "step-over": {
      "help": "playwright-cli step-over \n\nStep over the next call in the test\n",
      "flags": {},
      "args": []
    },
    "generate-locator": {
      "help": "playwright-cli generate-locator <target>\n\nGenerate a Playwright locator for the given element\n\nArguments:\n  <target>                    exact target element reference from the page snapshot, or a unique element selector",
      "flags": {},
      "args": [
        "target"
      ]
    },
    "highlight": {
      "help": "playwright-cli highlight [target]\n\nShow (or with --hide, remove) a highlight overlay for an element; `--hide` without a target hides all page highlights.\n\nArguments:\n  [target]                    exact target element reference from the page snapshot, or a unique element selector\nOptions:\n  --hide                      hide a previously added highlight for this element, or all page highlights when no element is given\n  --style                     additional inline css applied to the highlight overlay, e.g. \"outline: 2px dashed red\"",
      "flags": {
        "hide": "boolean",
        "style": "string"
      },
      "args": [
        "target"
      ]
    },
    "list": {
      "help": "playwright-cli list \n\nList browser sessions\n\nOptions:\n  --all                       list all browser sessions across all workspaces",
      "flags": {
        "all": "boolean"
      },
      "args": []
    },
    "close-all": {
      "help": "playwright-cli close-all \n\nClose all browser sessions\n",
      "flags": {},
      "args": []
    },
    "kill-all": {
      "help": "playwright-cli kill-all \n\nForcefully kill all browser sessions (for stale/zombie processes)\n",
      "flags": {},
      "args": []
    },
    "tray": {
      "help": "playwright-cli tray \n\nRun tray\n",
      "flags": {},
      "args": []
    }
  },
  "booleanOptions": [
    "headed",
    "persistent",
    "submit",
    "boxes",
    "clear",
    "full-page",
    "httpOnly",
    "secure",
    "static",
    "with-deps",
    "dry-run",
    "list",
    "force",
    "only-shell",
    "no-shell",
    "annotate",
    "kill",
    "hide",
    "all"
  ]
}
scripts/node_modules/playwright-core/lib/tools/cli-client/minimist.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,128 @@
"use strict";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var minimist_exports = {};
__export(minimist_exports, {
  minimist: () => minimist
});
module.exports = __toCommonJS(minimist_exports);
function minimist(args, opts) {
  if (!opts)
    opts = {};
  const bools = {};
  const strings = {};
  for (const key of toArray(opts.boolean))
    bools[key] = true;
  for (const key of toArray(opts.string))
    strings[key] = true;
  const argv = { _: [] };
  function setArg(key, val) {
    if (argv[key] === void 0 || bools[key] || typeof argv[key] === "boolean")
      argv[key] = val;
    else if (Array.isArray(argv[key]))
      argv[key].push(val);
    else
      argv[key] = [argv[key], val];
  }
  let notFlags = [];
  const doubleDashIndex = args.indexOf("--");
  if (doubleDashIndex !== -1) {
    notFlags = args.slice(doubleDashIndex + 1);
    args = args.slice(0, doubleDashIndex);
  }
  for (let i = 0; i < args.length; i++) {
    const arg = args[i];
    let key;
    let next;
    if (/^--.+=/.test(arg)) {
      const m = arg.match(/^--([^=]+)=([\s\S]*)$/);
      key = m[1];
      if (bools[key])
        throw new Error(`boolean option '--${key}' should not be passed with '=value', use '--${key}' or '--no-${key}' instead`);
      setArg(key, m[2]);
    } else if (/^--no-.+/.test(arg)) {
      key = arg.match(/^--no-(.+)/)[1];
      setArg(key, false);
    } else if (/^--.+/.test(arg)) {
      key = arg.match(/^--(.+)/)[1];
      next = args[i + 1];
      if (next !== void 0 && !/^(-|--)[^-]/.test(next) && !bools[key]) {
        setArg(key, next);
        i += 1;
      } else if (/^(true|false)$/.test(next)) {
        setArg(key, next === "true");
        i += 1;
      } else {
        setArg(key, strings[key] ? "" : true);
      }
    } else if (/^-[^-]+/.test(arg)) {
      const letters = arg.slice(1, -1).split("");
      let broken = false;
      for (let j = 0; j < letters.length; j++) {
        next = arg.slice(j + 2);
        if (next === "-") {
          setArg(letters[j], next);
          continue;
        }
        if (/[A-Za-z]/.test(letters[j]) && next[0] === "=") {
          setArg(letters[j], next.slice(1));
          broken = true;
          break;
        }
        if (/[A-Za-z]/.test(letters[j]) && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
          setArg(letters[j], next);
          broken = true;
          break;
        }
        if (letters[j + 1] && letters[j + 1].match(/\W/)) {
          setArg(letters[j], arg.slice(j + 2));
          broken = true;
          break;
        } else {
          setArg(letters[j], strings[letters[j]] ? "" : true);
        }
      }
      key = arg.slice(-1)[0];
      if (!broken && key !== "-") {
        if (args[i + 1] && !/^(-|--)[^-]/.test(args[i + 1]) && !bools[key]) {
          setArg(key, args[i + 1]);
          i += 1;
        } else if (args[i + 1] && /^(true|false)$/.test(args[i + 1])) {
          setArg(key, args[i + 1] === "true");
          i += 1;
        } else {
          setArg(key, strings[key] ? "" : true);
        }
      }
    } else {
      argv._.push(arg);
    }
  }
  for (const k of notFlags)
    argv._.push(k);
  return argv;
}
function toArray(value) {
  if (!value)
    return [];
  return Array.isArray(value) ? value : [value];
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  minimist
});
scripts/node_modules/playwright-core/lib/tools/cli-client/output.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,343 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var output_exports = {};
__export(output_exports, {
  JsonOutput: () => JsonOutput,
  TextOutput: () => TextOutput
});
module.exports = __toCommonJS(output_exports);
var import_path = __toESM(require("path"));
var import_extension = require("../utils/extension");
class TextOutput {
  constructor() {
    this.json = false;
  }
  version(v) {
    console.log(v);
  }
  help(text) {
    console.log(text);
  }
  errorUnknownCommand(name, globalHelp) {
    console.error(`Unknown command: ${name}
`);
    console.log(globalHelp);
    return process.exit(1);
  }
  errorUnknownOption(opts, commandHelp) {
    console.error(`Unknown option${opts.length > 1 ? "s" : ""}: ${opts.map((f) => `--${f}`).join(", ")}`);
    console.log("");
    console.log(commandHelp);
    return process.exit(1);
  }
  errorTooManyArguments(expected, received, commandHelp) {
    console.error(`error: too many arguments: expected ${expected}, received ${received}`);
    console.log("");
    console.log(commandHelp);
    return process.exit(1);
  }
  errorAttachConflict() {
    console.error(`Error: only one of [name], --cdp, --endpoint, or --extension can be specified`);
    return process.exit(1);
  }
  errorDetachNotAttached(session) {
    console.error(`Error: session '${session}' was not attached; use \`playwright-cli${session !== "default" ? ` -s=${session}` : ""} close\` to stop it.`);
    return process.exit(1);
  }
  errorBrowserNotOpenForTool(session) {
    console.log(`The browser '${session}' is not open, please run open first`);
    console.log("");
    console.log(`  playwright-cli${session !== "default" ? ` -s=${session}` : ""} open [params]`);
    return process.exit(1);
  }
  errorAttachNoTarget() {
    console.error(`Error: no target specified for attach command; use one of [name], --cdp, --endpoint, or --extension to specify the target to attach to.`);
    return process.exit(1);
  }
  list({ all, browsers, servers, channelSessions }) {
    const byWorkspace = /* @__PURE__ */ new Map();
    for (const browser of browsers) {
      let list = byWorkspace.get(browser.workspace);
      if (!list) {
        list = [];
        byWorkspace.set(browser.workspace, list);
      }
      list.push(browser);
    }
    let count = 0;
    for (const [workspaceKey, list] of byWorkspace) {
      if (count === 0)
        console.log("### Browsers");
      if (all)
        console.log(`${import_path.default.relative(process.cwd(), workspaceKey) || "/"}:`);
      for (const browser of list)
        console.log(renderBrowser(browser));
      count += list.length;
    }
    if (!all) {
      if (!count)
        console.log("  (no browsers)");
      return;
    }
    if (servers?.length) {
      if (count)
        console.log("");
      console.log("### Browser servers available for attach");
      const serversByWorkspace = /* @__PURE__ */ new Map();
      for (const server of servers) {
        let list = serversByWorkspace.get(server.workspaceDir ?? "");
        if (!list) {
          list = [];
          serversByWorkspace.set(server.workspaceDir ?? "", list);
        }
        list.push(server);
      }
      for (const [workspaceKey, list] of serversByWorkspace) {
        if (workspaceKey)
          console.log(`${import_path.default.relative(process.cwd(), workspaceKey) || "/"}:`);
        for (const server of list)
          console.log(renderServer(server));
      }
      count += servers.length;
    }
    if (!count)
      console.log("  (no browsers)");
    if (channelSessions?.length) {
      console.log("");
      console.log("### Browsers available to attach via CDP");
      for (const session of channelSessions)
        console.log(renderChannelSession(session));
    }
  }
  closeAll(_sessions) {
  }
  deleteData(session, result) {
    if (!result.existed) {
      console.log(`No user data found for browser '${session}'.`);
      return;
    }
    if (result.deletedUserDataDir)
      console.log(`Deleted user data for browser '${session}'.`);
  }
  killAll(pids) {
    for (const pid of pids)
      console.log(`Killed daemon process ${pid}`);
    if (pids.length === 0)
      console.log("No daemon processes found.");
    else
      console.log(`Killed ${pids.length} daemon process${pids.length === 1 ? "" : "es"}.`);
  }
  open(session, pid, toolResult) {
    console.log(`### Browser \`${session}\` opened with pid ${pid}.`);
    if (toolResult)
      console.log(toolResult);
  }
  attach(session, pid, endpoint, toolResult) {
    if (endpoint) {
      console.log(`### Session \`${session}\` created, attached to \`${endpoint}\`.`);
      console.log(`Run commands with: playwright-cli --s=${session} <command>`);
      console.log("");
    } else {
      console.log(`### Browser \`${session}\` opened with pid ${pid}.`);
    }
    if (toolResult)
      console.log(toolResult);
  }
  close(session, wasOpen) {
    if (!wasOpen) {
      console.log(`Browser '${session}' is not open.`);
      return;
    }
    console.log(`Browser '${session}' closed
`);
  }
  detach(session, wasAttached) {
    if (!wasAttached) {
      console.log(`Browser '${session}' is not attached.`);
      return;
    }
    console.log(`Browser '${session}' detached
`);
  }
  installed() {
  }
  show(_session, pid) {
    if (process.env.PWTEST_PRINT_DASHBOARD_PID_FOR_TEST)
      console.log(`### Dashboard opened with pid ${pid}.`);
  }
  toolResult(text) {
    console.log(text);
  }
  installStdio() {
    return "inherit";
  }
}
class JsonOutput {
  constructor() {
    this.json = true;
  }
  version(v) {
    this._emit({ version: v });
  }
  help(text) {
    this._emit({ help: text });
  }
  errorUnknownCommand(name, _globalHelp) {
    this._emit({ isError: true, error: `Unknown command: ${name}` });
    return process.exit(1);
  }
  errorUnknownOption(opts, _commandHelp) {
    this._emit({ isError: true, error: `Unknown option${opts.length > 1 ? "s" : ""}: ${opts.map((f) => `--${f}`).join(", ")}` });
    return process.exit(1);
  }
  errorTooManyArguments(expected, received, _commandHelp) {
    this._emit({ isError: true, error: `error: too many arguments: expected ${expected}, received ${received}` });
    return process.exit(1);
  }
  errorAttachConflict() {
    this._emit({ isError: true, error: `only one of [name], --cdp, --endpoint, or --extension can be specified` });
    return process.exit(1);
  }
  errorDetachNotAttached(session) {
    this._emit({ isError: true, error: `session '${session}' was not attached; use close to stop it.` });
    return process.exit(1);
  }
  errorBrowserNotOpenForTool(session) {
    this._emit({ isError: true, error: `The browser '${session}' is not open, please run open first` });
    return process.exit(1);
  }
  errorAttachNoTarget() {
    this._emit({ isError: true, error: `no target specified for attach command; use one of [name], --cdp, --endpoint, or --extension to specify the target to attach to.` });
    return process.exit(1);
  }
  list({ all, browsers, servers, channelSessions }) {
    const payload = { browsers };
    if (all) {
      payload.servers = servers ?? [];
      payload.channelSessions = channelSessions ?? [];
    }
    this._emit(payload);
  }
  closeAll(sessions) {
    this._emit({ closed: sessions });
  }
  deleteData(session, result) {
    this._emit({ session, deleted: result.existed });
  }
  killAll(pids) {
    this._emit({ killed: pids.length, pids });
  }
  open(session, pid, toolResult) {
    this._emit({ session, pid, result: parseJsonText(toolResult) });
  }
  attach(session, pid, endpoint, toolResult) {
    this._emit({
      session,
      pid,
      ...endpoint ? { endpoint } : {},
      result: parseJsonText(toolResult)
    });
  }
  close(session, wasOpen) {
    this._emit({ session, status: wasOpen ? "closed" : "not-open" });
  }
  detach(session, wasAttached) {
    this._emit({ session, status: wasAttached ? "detached" : "not-attached" });
  }
  installed() {
    this._emit({ installed: true });
  }
  show(session, pid) {
    this._emit({ session, pid });
  }
  toolResult(text) {
    console.log(text);
  }
  installStdio() {
    return "ignore";
  }
  _emit(value) {
    console.log(JSON.stringify(value, null, 2));
  }
}
function parseJsonText(text) {
  try {
    return JSON.parse(text);
  } catch {
    return text;
  }
}
function renderBrowser(browser) {
  const lines = [`- ${browser.name}:`];
  lines.push(`  - status: ${browser.status}`);
  if (browser.status === "open" && !browser.compatible)
    lines.push(`  - version: v${browser.version} [incompatible please re-open]`);
  if (browser.browserType)
    lines.push(`  - browser-type: ${browser.browserType}${browser.attached ? " (attached)" : ""}`);
  if (!browser.attached) {
    if (browser.userDataDir === null)
      lines.push(`  - user-data-dir: <in-memory>`);
    else
      lines.push(`  - user-data-dir: ${browser.userDataDir}`);
    if (browser.headed !== void 0)
      lines.push(`  - headed: ${browser.headed}`);
  }
  return lines.join("\n");
}
function renderServer(server) {
  const lines = [`- browser "${server.title}":`];
  lines.push(`  - browser: ${server.browser.browserName}`);
  lines.push(`  - version: v${server.playwrightVersion}`);
  if (server.browser.userDataDir)
    lines.push(`  - data-dir: ${server.browser.userDataDir}`);
  else
    lines.push(`  - data-dir: <in-memory>`);
  lines.push(`  - run \`playwright-cli attach "${server.title}"\` to attach`);
  return lines.join("\n");
}
function renderChannelSession(session) {
  const lines = [`- ${session.channel}:`];
  lines.push(`  - data-dir: ${session.userDataDir}`);
  if (session.extensionInstalled)
    lines.push(`  - attach (extension): \`playwright-cli attach --extension=${session.channel}\``);
  else
    lines.push(`  - attach (extension): install at ${import_extension.playwrightExtensionInstallUrl}`);
  if (session.endpoint) {
    lines.push(`  - attach (remote debugging): \`playwright-cli attach --cdp=${session.channel}\``);
  } else {
    const inspectScheme = session.channel.startsWith("msedge") ? "edge" : "chrome";
    lines.push(`  - attach (remote debugging): enable at ${inspectScheme}://inspect/#remote-debugging`);
  }
  return lines.join("\n");
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  JsonOutput,
  TextOutput
});
scripts/node_modules/playwright-core/lib/tools/cli-client/program.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,404 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var program_exports = {};
__export(program_exports, {
  calculateSha1: () => calculateSha1,
  program: () => program
});
module.exports = __toCommonJS(program_exports);
var import_child_process = require("child_process");
var import_crypto = __toESM(require("crypto"));
var import_os = __toESM(require("os"));
var import_path = __toESM(require("path"));
var import_channelSessions = require("./channelSessions");
var import_output = require("./output");
var import_registry = require("./registry");
var import_session = require("./session");
var import_package = require("../../package");
var import_serverRegistry = require("../../serverRegistry");
var import_minimist = require("./minimist");
const globalOptions = [
  "json",
  "raw",
  "session"
];
const booleanOptions = [
  "all",
  "help",
  "json",
  "raw",
  "version"
];
async function program(options) {
  const clientInfo = (0, import_registry.createClientInfo)();
  const help = require((0, import_package.libPath)("tools", "cli-client", "help.json"));
  const argv = process.argv.slice(2);
  const boolean = [...help.booleanOptions, ...booleanOptions];
  const args = (0, import_minimist.minimist)(argv, { boolean, string: ["_"] });
  if (args.s) {
    args.session = args.s;
    delete args.s;
  }
  const output = args.json ? new import_output.JsonOutput() : new import_output.TextOutput();
  const commandName = args._?.[0];
  if (args.version || args.v) {
    output.version(options?.embedderVersion ?? clientInfo.version);
    process.exit(0);
  }
  const command = commandName && help.commands[commandName];
  if (args.help || args.h || !commandName) {
    if (command) {
      output.help(command.help);
    } else {
      const lines = ["playwright-cli - run playwright mcp commands from terminal"];
      if (process.env.CLAUDECODE || process.env.COPILOT_CLI)
        lines.push(`Agent skill: ${import_path.default.relative(process.cwd(), (0, import_package.libPath)("tools", "cli-client", "skill", "SKILL.md"))}`);
      lines.push(help.global);
      output.help(lines.join("\n\n"));
    }
    process.exit(0);
  }
  if (!command)
    output.errorUnknownCommand(commandName, help.global);
  validateFlags(args, command, output);
  validateArgs(args, command, output);
  const registry = await import_registry.Registry.load();
  const sessionName = (0, import_registry.resolveSessionName)(args.session);
  switch (commandName) {
    case "list": {
      const data = await collectList(registry, clientInfo, !!args.all);
      output.list(data);
      return;
    }
    case "close-all": {
      const entries = registry.entries(clientInfo);
      const closed = [];
      for (const entry of entries) {
        await new import_session.Session(entry).stop();
        closed.push(entry.config.name);
      }
      output.closeAll(closed);
      return;
    }
    case "delete-data": {
      const entry = registry.entry(clientInfo, sessionName);
      if (!entry) {
        output.deleteData(sessionName, { existed: false, deletedUserDataDir: false });
        return;
      }
      const result = await new import_session.Session(entry).deleteData();
      output.deleteData(sessionName, result);
      return;
    }
    case "kill-all": {
      const pids = await killAllDaemons();
      output.killAll(pids);
      return;
    }
    case "open": {
      const { pid } = await startSession(sessionName, registry, clientInfo, args, "open");
      const newEntry = await registry.loadEntry(clientInfo, sessionName);
      const params = args._.slice(1);
      const toolText = await runInSessionOrStop(newEntry, clientInfo, { _: ["goto", ...params.length ? params : ["about:blank"]] }, output);
      output.open(sessionName, pid, toolText);
      return;
    }
    case "attach": {
      const attachTarget = args._[1];
      const targetCount = (attachTarget ? 1 : 0) + (args.cdp ? 1 : 0) + (args.endpoint ? 1 : 0) + (args.extension ? 1 : 0);
      if (targetCount > 1)
        output.errorAttachConflict();
      if (attachTarget)
        args.endpoint = attachTarget;
      const extensionChannel = typeof args.extension === "string" ? args.extension : void 0;
      if (extensionChannel) {
        args.browser = extensionChannel;
        args.extension = true;
      }
      const cdpChannel = typeof args.cdp === "string" && (0, import_channelSessions.isKnownChannel)(args.cdp) ? args.cdp : void 0;
      const targetName = attachTarget ?? cdpChannel ?? extensionChannel ?? args.endpoint ?? args.cdp;
      if (!targetName)
        output.errorAttachNoTarget();
      const attachSessionName = (0, import_registry.explicitSessionName)(args.session) ?? attachTarget ?? cdpChannel ?? extensionChannel ?? sessionName;
      args.session = attachSessionName;
      const { pid } = await startSession(attachSessionName, registry, clientInfo, args, "attach");
      const newEntry = await registry.loadEntry(clientInfo, attachSessionName);
      const toolText = await runInSessionOrStop(newEntry, clientInfo, { _: ["snapshot"], filename: "<auto>" }, output);
      output.attach(attachSessionName, pid, targetName, toolText);
      return;
    }
    case "close": {
      const closeEntry = registry.entry(clientInfo, sessionName);
      const { wasOpen } = closeEntry ? await new import_session.Session(closeEntry).stop() : { wasOpen: false };
      output.close(sessionName, wasOpen);
      return;
    }
    case "detach": {
      const detachEntry = registry.entry(clientInfo, sessionName);
      if (detachEntry && !detachEntry.config.attached)
        output.errorDetachNotAttached(sessionName);
      const { wasOpen } = detachEntry ? await new import_session.Session(detachEntry).stop() : { wasOpen: false };
      output.detach(sessionName, wasOpen);
      return;
    }
    case "install":
      await runInitWorkspace(args, output);
      output.installed();
      return;
    case "install-browser":
      await installBrowser();
      output.installed();
      return;
    case "show": {
      const daemonScript = (0, import_package.libPath)("entry", "dashboardApp.js");
      const daemonArgs = [
        daemonScript,
        `--workspaceDir=${clientInfo.workspaceDir ?? ""}`
      ];
      const explicit = (0, import_registry.explicitSessionName)(args.session);
      if (explicit)
        daemonArgs.push(`--sessionName=${explicit}`);
      if (args.port !== void 0)
        daemonArgs.push(`--port=${args.port}`);
      if (args.host !== void 0)
        daemonArgs.push(`--host=${args.host}`);
      if (args.kill) {
        daemonArgs.push(`--kill`);
        const child2 = (0, import_child_process.spawn)(process.execPath, daemonArgs, { stdio: "ignore" });
        await new Promise((resolve) => child2.on("exit", () => resolve()));
        return;
      }
      if (args.annotate) {
        const entry = registry.entry(clientInfo, sessionName);
        if (!entry)
          output.errorBrowserNotOpenForTool(sessionName);
        args.raw = true;
        const text = await runInSession(entry, clientInfo, args, output);
        output.toolResult(text);
        return;
      }
      const foreground = args.port !== void 0;
      const child = (0, import_child_process.spawn)(process.execPath, daemonArgs, {
        detached: !foreground,
        stdio: foreground ? "inherit" : ["pipe", "pipe", "ignore"]
      });
      if (foreground) {
        await new Promise((resolve) => child.on("exit", () => resolve()));
        return;
      }
      const timer = setTimeout(() => child.stdin.destroy(), 6e4);
      child.unref();
      let daemonPid;
      try {
        await new Promise((resolve, reject) => {
          let outLog = "";
          child.stdout.on("data", (data) => {
            outLog += data.toString();
            const match = outLog.match(/Dashboard is running pid=(\d+)/);
            if (match) {
              daemonPid = Number(match[1]);
              resolve();
            }
          });
          child.once("exit", (code, signal) => reject(new Error(`Dashboard daemon exited (code=${code}, signal=${signal}) before signaling READY${outLog ? "\n" + outLog : ""}`)));
        });
      } finally {
        clearTimeout(timer);
        child.removeAllListeners("exit");
        child.stdin.destroy();
        child.stdout.destroy();
      }
      output.show(sessionName, daemonPid);
      return;
    }
    default: {
      const entry = registry.entry(clientInfo, sessionName);
      if (!entry)
        output.errorBrowserNotOpenForTool(sessionName);
      if (command.raw)
        args.raw = true;
      const text = await runInSession(entry, clientInfo, args, output);
      output.toolResult(text);
    }
  }
}
async function startSession(sessionName, registry, clientInfo, args, mode) {
  const entry = registry.entry(clientInfo, sessionName);
  if (entry)
    await new import_session.Session(entry).stop();
  return await import_session.Session.startDaemon(clientInfo, args, mode);
}
async function runInSession(entry, clientInfo, args, output) {
  const raw = !!args.raw;
  for (const globalOption of globalOptions)
    delete args[globalOption];
  const session = new import_session.Session(entry);
  const result = await session.run(clientInfo, args, { raw, json: output.json });
  return result.text;
}
async function runInSessionOrStop(entry, clientInfo, args, output) {
  try {
    return await runInSession(entry, clientInfo, args, output);
  } catch (e) {
    await new import_session.Session(entry).stop().catch(() => {
    });
    throw e;
  }
}
async function runInitWorkspace(args, output) {
  const cliPath = (0, import_package.libPath)("entry", "cliDaemon.js");
  const daemonArgs = [cliPath, "--init-workspace", ...args.skills ? ["--init-skills", String(args.skills)] : []];
  await new Promise((resolve, reject) => {
    const child = (0, import_child_process.spawn)(process.execPath, daemonArgs, {
      stdio: output.installStdio(),
      cwd: process.cwd()
    });
    child.on("close", (code) => {
      if (code === 0)
        resolve();
      else
        reject(new Error(`Workspace initialization failed with exit code ${code}`));
    });
  });
}
async function installBrowser() {
  const argv = process.argv.map((arg) => arg === "install-browser" ? "install" : arg);
  const { libCli } = require("../../coreBundle.js");
  const { program: program2 } = require("../../utilsBundle.js");
  if (!program2.version())
    libCli.decorateProgram(program2);
  program2.parse(argv);
}
const daemonProcessPatterns = ["run-mcp-server", "run-cli-server", "cli-daemon", "cliDaemon.js", "dashboardApp.js"];
async function killAllDaemons() {
  const platform = import_os.default.platform();
  const pidFilterEnv = process.env.PWTEST_KILL_ALL_PID_FILTER_FOR_TEST;
  const pidFilter = pidFilterEnv ? new Set(pidFilterEnv.split(",").map((p) => parseInt(p, 10)).filter((n) => !isNaN(n))) : void 0;
  const killed = [];
  try {
    if (platform === "win32") {
      const clauses = [`(${daemonProcessPatterns.map((p) => `$_.CommandLine -like '*${p}*'`).join(" -or ")})`];
      if (pidFilter)
        clauses.push(`(${[...pidFilter].map((p) => `$_.ProcessId -eq ${p}`).join(" -or ")})`);
      const whereClause = clauses.join(" -and ");
      const result = (0, import_child_process.execSync)(
        `powershell -NoProfile -NonInteractive -Command "Get-CimInstance Win32_Process | Where-Object { ${whereClause} } | ForEach-Object { Stop-Process -Id $_.ProcessId -Force -ErrorAction SilentlyContinue; $_.ProcessId }"`,
        { encoding: "utf-8" }
      );
      const pids = result.split("\n").map((line) => line.trim()).filter((line) => /^\d+$/.test(line));
      for (const pid of pids)
        killed.push(parseInt(pid, 10));
    } else {
      const result = (0, import_child_process.execSync)("ps auxww", { encoding: "utf-8" });
      const lines = result.split("\n");
      for (const line of lines) {
        if (daemonProcessPatterns.some((p) => line.includes(p))) {
          const parts = line.trim().split(/\s+/);
          const pid = parts[1];
          if (pid && /^\d+$/.test(pid)) {
            const numericPid = parseInt(pid, 10);
            if (pidFilter && !pidFilter.has(numericPid))
              continue;
            try {
              process.kill(numericPid, "SIGKILL");
              killed.push(numericPid);
            } catch {
            }
          }
        }
      }
    }
  } catch (e) {
  }
  return killed;
}
async function collectList(registry, clientInfo, all) {
  const browsers = [];
  const entries = registry.entryMap();
  const serverEntries = await import_serverRegistry.serverRegistry.list();
  const key = (0, import_registry.clientKey)(clientInfo);
  for (const [workspaceKey, list] of entries) {
    if (!all && workspaceKey !== key)
      continue;
    for (const entry of list) {
      const session = new import_session.Session(entry);
      const canConnect = await session.canConnect();
      if (!canConnect) {
        await session.deleteSessionConfig();
        continue;
      }
      const config = session.config;
      const channel = config.browser?.launchOptions.channel ?? config.browser?.browserName;
      browsers.push({
        name: session.name,
        workspace: workspaceKey,
        status: canConnect ? "open" : "closed",
        browserType: channel,
        userDataDir: config.browser?.userDataDir ?? null,
        headed: config.browser ? !config.browser.launchOptions.headless : void 0,
        persistent: !!config.cli.persistent,
        attached: !!config.attached,
        compatible: session.isCompatible(clientInfo),
        version: config.version
      });
    }
  }
  if (!all)
    return { all, browsers };
  const servers = [...serverEntries.values()].flat();
  return { all, browsers, servers, channelSessions: await (0, import_channelSessions.listChannelSessions)() };
}
function validateFlags(args, command, output) {
  const unknownFlags = [];
  for (const key of Object.keys(args)) {
    if (key === "_")
      continue;
    if (globalOptions.includes(key))
      continue;
    if (!(key in command.flags))
      unknownFlags.push(key);
  }
  if (unknownFlags.length)
    output.errorUnknownOption(unknownFlags, command.help);
}
function validateArgs(args, command, output) {
  const positional = args._.slice(1);
  if (positional.length > command.args.length)
    output.errorTooManyArguments(command.args.length, positional.length, command.help);
}
function calculateSha1(buffer) {
  const hash = import_crypto.default.createHash("sha1");
  hash.update(buffer);
  return hash.digest("hex");
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  calculateSha1,
  program
});
scripts/node_modules/playwright-core/lib/tools/cli-client/registry.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,176 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var registry_exports = {};
__export(registry_exports, {
  Registry: () => Registry,
  baseDaemonDir: () => baseDaemonDir,
  clientKey: () => clientKey,
  createClientInfo: () => createClientInfo,
  explicitSessionName: () => explicitSessionName,
  resolveSessionName: () => resolveSessionName
});
module.exports = __toCommonJS(registry_exports);
var import_crypto = __toESM(require("crypto"));
var import_fs = __toESM(require("fs"));
var import_os = __toESM(require("os"));
var import_path = __toESM(require("path"));
var import_package = require("../../package");
function clientKey(clientInfo) {
  return clientInfo.workspaceDir || clientInfo.workspaceDirHash;
}
class Registry {
  constructor(files) {
    this._files = files;
  }
  entry(clientInfo, sessionName) {
    const key = clientKey(clientInfo);
    const entries = this._files.get(key) || [];
    return entries.find((entry) => entry.config.name === sessionName);
  }
  entries(clientInfo) {
    return this._files.get(clientKey(clientInfo)) || [];
  }
  entryMap() {
    return this._files;
  }
  async loadEntry(clientInfo, sessionName) {
    const entry = await Registry._loadSessionEntry(clientInfo.daemonProfilesDir, sessionName + ".session");
    if (!entry)
      throw new Error(`Could not start the session "${sessionName}"`);
    const key = clientKey(clientInfo);
    let list = this._files.get(key);
    if (!list) {
      list = [];
      this._files.set(key, list);
    }
    const oldIndex = list.findIndex((e) => e.config.name === sessionName);
    if (oldIndex !== -1)
      list.splice(oldIndex, 1);
    list.push(entry);
    return entry;
  }
  static async _loadSessionEntry(daemonDir, file) {
    try {
      const fileName = import_path.default.join(daemonDir, file);
      const data = await import_fs.default.promises.readFile(fileName, "utf-8");
      const config = JSON.parse(data);
      if (!config.name)
        config.name = import_path.default.basename(file, ".session");
      if (!config.timestamp)
        config.timestamp = 0;
      return { file: fileName, config, daemonDir };
    } catch {
      return void 0;
    }
  }
  static async load() {
    const sessions = /* @__PURE__ */ new Map();
    const hashDirs = await import_fs.default.promises.readdir(baseDaemonDir).catch(() => []);
    for (const workspaceDirHash of hashDirs) {
      const daemonDir = import_path.default.join(baseDaemonDir, workspaceDirHash);
      const stat = await import_fs.default.promises.stat(daemonDir);
      if (!stat.isDirectory())
        continue;
      const files = await import_fs.default.promises.readdir(daemonDir).catch(() => []);
      for (const file of files) {
        if (!file.endsWith(".session"))
          continue;
        const entry = await Registry._loadSessionEntry(daemonDir, file);
        if (!entry)
          continue;
        const key = entry.config.workspaceDir || workspaceDirHash;
        let list = sessions.get(key);
        if (!list) {
          list = [];
          sessions.set(key, list);
        }
        list.push(entry);
      }
    }
    return new Registry(sessions);
  }
}
const baseDaemonDir = (() => {
  if (process.env.PWTEST_DAEMON_SESSION_DIR)
    return process.env.PWTEST_DAEMON_SESSION_DIR;
  let localCacheDir;
  if (process.platform === "linux")
    localCacheDir = process.env.XDG_CACHE_HOME || import_path.default.join(import_os.default.homedir(), ".cache");
  if (process.platform === "darwin")
    localCacheDir = import_path.default.join(import_os.default.homedir(), "Library", "Caches");
  if (process.platform === "win32")
    localCacheDir = process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local");
  if (!localCacheDir)
    throw new Error("Unsupported platform: " + process.platform);
  return import_path.default.join(localCacheDir, "ms-playwright", "daemon");
})();
function createClientInfo() {
  const workspaceDir = findWorkspaceDir(process.cwd());
  const version = process.env.PLAYWRIGHT_CLI_VERSION_FOR_TEST || import_package.packageJSON.version;
  const hash = import_crypto.default.createHash("sha1");
  hash.update(workspaceDir || import_package.packageRoot);
  const workspaceDirHash = hash.digest("hex").substring(0, 16);
  return {
    version,
    workspaceDir,
    workspaceDirHash,
    daemonProfilesDir: daemonProfilesDir(workspaceDirHash),
    homeDir: import_os.default.homedir()
  };
}
function findWorkspaceDir(startDir) {
  let dir = startDir;
  for (let i = 0; i < 10; i++) {
    if (import_fs.default.existsSync(import_path.default.join(dir, ".playwright")))
      return dir;
    const parentDir = import_path.default.dirname(dir);
    if (parentDir === dir)
      break;
    dir = parentDir;
  }
  return void 0;
}
const daemonProfilesDir = (workspaceDirHash) => {
  return import_path.default.join(baseDaemonDir, workspaceDirHash);
};
function explicitSessionName(sessionName) {
  return sessionName || process.env.PLAYWRIGHT_CLI_SESSION;
}
function resolveSessionName(sessionName) {
  return explicitSessionName(sessionName) || "default";
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  Registry,
  baseDaemonDir,
  clientKey,
  createClientInfo,
  explicitSessionName,
  resolveSessionName
});
scripts/node_modules/playwright-core/lib/tools/cli-client/session.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,254 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var session_exports = {};
__export(session_exports, {
  Session: () => Session
});
module.exports = __toCommonJS(session_exports);
var import_child_process = require("child_process");
var import_fs = __toESM(require("fs"));
var import_net = __toESM(require("net"));
var import_os = __toESM(require("os"));
var import_path = __toESM(require("path"));
var import_package = require("../../package");
var import_socketConnection = require("../utils/socketConnection");
var import_registry = require("./registry");
class Session {
  constructor(sessionFile) {
    this.config = sessionFile.config;
    this.name = this.config.name;
    this._sessionFile = sessionFile;
  }
  isCompatible(clientInfo) {
    return (0, import_socketConnection.compareSemver)(clientInfo.version, this.config.version) >= 0;
  }
  async run(clientInfo, args, options) {
    if (!this.isCompatible(clientInfo))
      throw new Error(`Client is v${clientInfo.version}, session '${this.name}' is v${this.config.version}. Run
  playwright-cli${this.name !== "default" ? ` -s=${this.name}` : ""} open
to restart the browser session.`);
    const { socket } = await this._connect();
    if (!socket)
      throw new Error(`Browser '${this.name}' is not open. Run
  playwright-cli${this.name !== "default" ? ` -s=${this.name}` : ""} open
to start the browser session.`);
    return await SocketConnectionClient.sendAndClose(socket, "run", { args, cwd: process.cwd(), raw: options?.raw, json: options?.json });
  }
  async stop() {
    if (!await this.canConnect())
      return { wasOpen: false };
    await this._stopDaemon();
    return { wasOpen: true };
  }
  async deleteData() {
    await this.stop();
    const dataDirs = await import_fs.default.promises.readdir(this._sessionFile.daemonDir).catch(() => []);
    const matchingEntries = dataDirs.filter((file) => file === `${this.name}.session` || file.startsWith(`ud-${this.name}-`));
    if (matchingEntries.length === 0)
      return { existed: false, deletedUserDataDir: false };
    let deletedUserDataDir = false;
    for (const entry of matchingEntries) {
      const userDataDir = import_path.default.resolve(this._sessionFile.daemonDir, entry);
      for (let i = 0; i < 5; i++) {
        try {
          await import_fs.default.promises.rm(userDataDir, { recursive: true });
          if (entry.startsWith("ud-"))
            deletedUserDataDir = true;
          break;
        } catch (e) {
          if (e.code === "ENOENT")
            break;
          await new Promise((resolve) => setTimeout(resolve, 1e3));
          if (i === 4)
            throw e;
        }
      }
    }
    return { existed: true, deletedUserDataDir };
  }
  async _connect() {
    return await new Promise((resolve) => {
      const socket = import_net.default.createConnection(this.config.socketPath, () => {
        resolve({ socket });
      });
      socket.on("error", (error) => {
        if (import_os.default.platform() !== "win32")
          void import_fs.default.promises.unlink(this.config.socketPath).catch(() => {
          }).then(() => resolve({ error }));
        else
          resolve({ error });
      });
    });
  }
  async canConnect() {
    const { socket } = await this._connect();
    if (socket) {
      socket.destroy();
      return true;
    }
    return false;
  }
  static async startDaemon(clientInfo, cliArgs, mode) {
    await import_fs.default.promises.mkdir(clientInfo.daemonProfilesDir, { recursive: true });
    const cliPath = (0, import_package.libPath)("entry", "cliDaemon.js");
    const sessionName = (0, import_registry.resolveSessionName)(cliArgs.session);
    const errLog = import_path.default.join(clientInfo.daemonProfilesDir, sessionName + ".err");
    const err = import_fs.default.openSync(errLog, "w");
    const args = [
      cliPath,
      sessionName
    ];
    if (cliArgs.headed)
      args.push("--headed");
    if (cliArgs.browser)
      args.push(`--browser=${cliArgs.browser}`);
    if (cliArgs.persistent)
      args.push("--persistent");
    if (cliArgs.profile)
      args.push(`--profile=${cliArgs.profile}`);
    if (cliArgs.config)
      args.push(`--config=${cliArgs.config}`);
    if (cliArgs.extension)
      args.push("--extension");
    else if (cliArgs.cdp)
      args.push(`--cdp=${cliArgs.cdp}`);
    else if (cliArgs.endpoint)
      args.push(`--endpoint=${cliArgs.endpoint}`);
    const child = (0, import_child_process.spawn)(process.execPath, args, {
      detached: true,
      stdio: ["ignore", "pipe", err],
      cwd: process.cwd()
      // Will be used as root.
    });
    let signalled = false;
    const sigintHandler = () => {
      signalled = true;
      child.kill("SIGINT");
    };
    const sigtermHandler = () => {
      signalled = true;
      child.kill("SIGTERM");
    };
    process.on("SIGINT", sigintHandler);
    process.on("SIGTERM", sigtermHandler);
    let outLog = "";
    const rejectWithPid = (reject, message) => reject(Object.assign(new Error(`Daemon pid=${child.pid}: ${message}`), { daemonPid: child.pid }));
    await new Promise((resolve, reject) => {
      child.stdout.on("data", (data) => {
        outLog += data.toString();
        if (outLog.includes("Daemon listening on"))
          resolve();
      });
      child.on("close", (code) => {
        if (!signalled) {
          const errLogContent = import_fs.default.readFileSync(errLog, "utf-8");
          rejectWithPid(reject, `Daemon process exited with code ${code}` + (outLog ? "\n" + outLog : "") + (errLogContent ? "\n" + errLogContent : ""));
        }
      });
    });
    process.off("SIGINT", sigintHandler);
    process.off("SIGTERM", sigtermHandler);
    child.stdout.destroy();
    child.unref();
    return { pid: child.pid, sessionName, endpoint: cliArgs.endpoint };
  }
  async _stopDaemon() {
    const { socket } = await this._connect();
    if (!socket)
      return;
    let error;
    await SocketConnectionClient.sendAndClose(socket, "stop", {}).catch((e) => error = e);
    if (error && !error?.message?.includes("Session closed"))
      throw error;
  }
  async deleteSessionConfig() {
    await import_fs.default.promises.rm(this._sessionFile.file).catch(() => {
    });
  }
}
class SocketConnectionClient {
  constructor(socket) {
    this._nextMessageId = 1;
    this._callbacks = /* @__PURE__ */ new Map();
    this._connection = new import_socketConnection.SocketConnection(socket);
    this._connection.onmessage = (message) => this._onMessage(message);
    this._connection.onclose = () => this._rejectCallbacks();
  }
  async send(method, params = {}) {
    const messageId = this._nextMessageId++;
    const message = {
      id: messageId,
      method,
      params
    };
    const responsePromise = new Promise((resolve, reject) => {
      this._callbacks.set(messageId, { resolve, reject, method, params });
    });
    const [result] = await Promise.all([responsePromise, this._connection.send(message)]);
    return result;
  }
  static async sendAndClose(socket, method, params = {}) {
    const connection = new SocketConnectionClient(socket);
    try {
      return await connection.send(method, params);
    } finally {
      connection.close();
    }
  }
  close() {
    this._connection.close();
  }
  _onMessage(object) {
    if (object.id && this._callbacks.has(object.id)) {
      const callback = this._callbacks.get(object.id);
      this._callbacks.delete(object.id);
      if (object.error)
        callback.reject(new Error(object.error));
      else
        callback.resolve(object.result);
    } else if (object.id) {
      throw new Error(`Unexpected message id: ${object.id}`);
    } else {
      throw new Error(`Unexpected message without id: ${JSON.stringify(object)}`);
    }
  }
  _rejectCallbacks() {
    for (const callback of this._callbacks.values())
      callback.reject(new Error("Session closed"));
    this._callbacks.clear();
  }
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  Session
});
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/SKILL.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,404 @@
---
name: playwright-cli
description: Automate browser interactions, test web pages and work with Playwright tests.
allowed-tools: Bash(playwright-cli:*) Bash(npx:*) Bash(npm:*)
---
# Browser Automation with playwright-cli
## Quick start
```bash
# open new browser
playwright-cli open
# navigate to a page
playwright-cli goto https://playwright.dev
# interact with the page using refs from the snapshot
playwright-cli click e15
playwright-cli type "page.click"
playwright-cli press Enter
# take a screenshot (rarely used, as snapshot is more common)
playwright-cli screenshot
# close the browser
playwright-cli close
```
## Commands
### Core
```bash
playwright-cli open
# open and navigate right away
playwright-cli open https://example.com/
playwright-cli goto https://playwright.dev
playwright-cli type "search query"
playwright-cli click e3
playwright-cli dblclick e7
# --submit presses Enter after filling the element
playwright-cli fill e5 "user@example.com"  --submit
playwright-cli drag e2 e8
# drop files or data onto an element (from outside the page)
playwright-cli drop e4 --path=./image.png
playwright-cli drop e4 --data="text/plain=hello world"
playwright-cli hover e4
playwright-cli select e9 "option-value"
playwright-cli upload ./document.pdf
playwright-cli check e12
playwright-cli uncheck e12
playwright-cli snapshot
playwright-cli eval "document.title"
playwright-cli eval "el => el.textContent" e5
# get element id, class, or any attribute not visible in the snapshot
playwright-cli eval "el => el.id" e5
playwright-cli eval "el => el.getAttribute('data-testid')" e5
playwright-cli dialog-accept
playwright-cli dialog-accept "confirmation text"
playwright-cli dialog-dismiss
playwright-cli resize 1920 1080
playwright-cli close
```
### Navigation
```bash
playwright-cli go-back
playwright-cli go-forward
playwright-cli reload
```
### Keyboard
```bash
playwright-cli press Enter
playwright-cli press ArrowDown
playwright-cli keydown Shift
playwright-cli keyup Shift
```
### Mouse
```bash
playwright-cli mousemove 150 300
playwright-cli mousedown
playwright-cli mousedown right
playwright-cli mouseup
playwright-cli mouseup right
playwright-cli mousewheel 0 100
```
### Save as
```bash
playwright-cli screenshot
playwright-cli screenshot e5
playwright-cli screenshot --filename=page.png
playwright-cli pdf --filename=page.pdf
```
### Tabs
```bash
playwright-cli tab-list
playwright-cli tab-new
playwright-cli tab-new https://example.com/page
playwright-cli tab-close
playwright-cli tab-close 2
playwright-cli tab-select 0
```
### Storage
```bash
playwright-cli state-save
playwright-cli state-save auth.json
playwright-cli state-load auth.json
# Cookies
playwright-cli cookie-list
playwright-cli cookie-list --domain=example.com
playwright-cli cookie-get session_id
playwright-cli cookie-set session_id abc123
playwright-cli cookie-set session_id abc123 --domain=example.com --httpOnly --secure
playwright-cli cookie-delete session_id
playwright-cli cookie-clear
# LocalStorage
playwright-cli localstorage-list
playwright-cli localstorage-get theme
playwright-cli localstorage-set theme dark
playwright-cli localstorage-delete theme
playwright-cli localstorage-clear
# SessionStorage
playwright-cli sessionstorage-list
playwright-cli sessionstorage-get step
playwright-cli sessionstorage-set step 3
playwright-cli sessionstorage-delete step
playwright-cli sessionstorage-clear
```
### Network
```bash
playwright-cli route "**/*.jpg" --status=404
playwright-cli route "https://api.example.com/**" --body='{"mock": true}'
playwright-cli route-list
playwright-cli unroute "**/*.jpg"
playwright-cli unroute
```
### DevTools
```bash
playwright-cli console
playwright-cli console warning
playwright-cli requests
playwright-cli request 5
playwright-cli run-code "async page => await page.context().grantPermissions(['geolocation'])"
playwright-cli run-code --filename=script.js
playwright-cli tracing-start
playwright-cli tracing-stop
playwright-cli video-start video.webm
playwright-cli video-chapter "Chapter Title" --description="Details" --duration=2000
playwright-cli video-stop
# annotate each subsequent action (click, type, ...) with a callout naming the action and highlighting the target
playwright-cli video-show-actions --duration=600 --position=top-right
playwright-cli video-hide-actions
# launch the dashboard for UI review / design feedback â€” user annotates the page, you receive the annotated screenshot, snapshot, and notes
playwright-cli show --annotate
# generate a Playwright locator for an element from its ref or selector
playwright-cli generate-locator e5 --raw
# show a persistent highlight overlay for an element, optionally with a custom style
playwright-cli highlight e5
playwright-cli highlight e5 --style="outline: 3px dashed red"
# hide a single element highlight, or all page highlights when no target is given
playwright-cli highlight e5 --hide
playwright-cli highlight --hide
```
## Raw output
The global `--raw` option strips page status, generated code, and snapshot sections from the output, returning only the result value. Use it to pipe command output into other tools. Commands that don't produce output return nothing.
```bash
playwright-cli --raw eval "JSON.stringify(performance.timing)" | jq '.loadEventEnd - .navigationStart'
playwright-cli --raw eval "JSON.stringify([...document.querySelectorAll('a')].map(a => a.href))" > links.json
playwright-cli --raw snapshot > before.yml
playwright-cli click e5
playwright-cli --raw snapshot > after.yml
diff before.yml after.yml
TOKEN=$(playwright-cli --raw cookie-get session_id)
playwright-cli --raw localstorage-get theme
```
For structured output wrapping every reply as JSON, pass --json
```bash
playwright-cli list --json
```
## Open parameters
```bash
# Use specific browser when creating session
playwright-cli open --browser=chrome
playwright-cli open --browser=firefox
playwright-cli open --browser=webkit
playwright-cli open --browser=msedge
# Use persistent profile (by default profile is in-memory)
playwright-cli open --persistent
# Use persistent profile with custom directory
playwright-cli open --profile=/path/to/profile
# Connect to browser via Playwright Extension
playwright-cli attach --extension=chrome
# Connect to a running Chrome or Edge by channel name
playwright-cli attach --cdp=chrome
playwright-cli attach --cdp=msedge
# Connect to a running browser via CDP endpoint
playwright-cli attach --cdp=http://localhost:9222
# Start with config file
playwright-cli open --config=my-config.json
# Close the browser
playwright-cli close
# Detach from an attached browser (leaves the external browser running)
playwright-cli -s=msedge detach
# Delete user data for the default session
playwright-cli delete-data
```
## URLs with `&` on Windows
On Windows, `cmd.exe` and PowerShell treat `&` as a command separator, so URLs with multiple query parameters get truncated before `playwright-cli` runs. Escape `&` with `^&` in `cmd.exe`, or use `--%` in PowerShell:
```batch
playwright-cli goto "https://example.com/?a=1^&b=2"
```
```powershell
playwright-cli --% goto "https://example.com/?a=1&b=2"
```
## Snapshots
After each command, playwright-cli provides a snapshot of the current browser state.
```bash
> playwright-cli goto https://example.com
### Page
- Page URL: https://example.com/
- Page Title: Example Domain
### Snapshot
[Snapshot](.playwright-cli/page-2026-02-14T19-22-42-679Z.yml)
```
You can also take a snapshot on demand using `playwright-cli snapshot` command. All the options below can be combined as needed.
```bash
# default - save to a file with timestamp-based name
playwright-cli snapshot
# save to file, use when snapshot is a part of the workflow result
playwright-cli snapshot --filename=after-click.yaml
# snapshot an element instead of the whole page
playwright-cli snapshot "#main"
# limit snapshot depth for efficiency, take a partial snapshot afterwards
playwright-cli snapshot --depth=4
playwright-cli snapshot e34
# include each element's bounding box as [box=x,y,width,height]
playwright-cli snapshot --boxes
```
## Targeting elements
By default, use refs from the snapshot to interact with page elements.
```bash
# get snapshot with refs
playwright-cli snapshot
# interact using a ref
playwright-cli click e15
```
You can also use css selectors or Playwright locators.
```bash
# css selector
playwright-cli click "#main > button.submit"
# role locator
playwright-cli click "getByRole('button', { name: 'Submit' })"
# test id
playwright-cli click "getByTestId('submit-button')"
```
## Browser Sessions
```bash
# create new browser session named "mysession" with persistent profile
playwright-cli -s=mysession open example.com --persistent
# same with manually specified profile directory (use when requested explicitly)
playwright-cli -s=mysession open example.com --profile=/path/to/profile
playwright-cli -s=mysession click e6
playwright-cli -s=mysession close  # stop a named browser
playwright-cli -s=mysession delete-data  # delete user data for persistent session
playwright-cli list
# Close all browsers
playwright-cli close-all
# Forcefully kill all browser processes
playwright-cli kill-all
```
## Installation
If global `playwright-cli` command is not available, try a local version via `npx playwright-cli`:
```bash
npx --no-install playwright-cli --version
```
When local version is available, use `npx playwright-cli` in all commands. Otherwise, install `playwright-cli` as a global command:
```bash
npm install -g @playwright/cli@latest
```
## Example: Form submission
```bash
playwright-cli open https://example.com/form
playwright-cli snapshot
playwright-cli fill e1 "user@example.com"
playwright-cli fill e2 "password123"
playwright-cli click e3
playwright-cli snapshot
playwright-cli close
```
## Example: Multi-tab workflow
```bash
playwright-cli open https://example.com
playwright-cli tab-new https://example.com/other
playwright-cli tab-list
playwright-cli tab-select 0
playwright-cli snapshot
playwright-cli close
```
## Example: Debugging with DevTools
```bash
playwright-cli open https://example.com
playwright-cli click e4
playwright-cli fill e7 "test"
playwright-cli console
playwright-cli requests
playwright-cli close
```
```bash
playwright-cli open https://example.com
playwright-cli tracing-start
playwright-cli click e4
playwright-cli fill e7 "test"
playwright-cli tracing-stop
playwright-cli close
```
## Example: Interactive session
Ask the user for UI review or design feedback. The user draws boxes on the live page and types comments; you receive the annotated screenshot, the snapshot of the marked region, and the user's notes. Use this whenever the user asks for "UI review", "design feedback", or to "ask the user what they think / want / mean":
```bash
playwright-cli open https://example.com
playwright-cli show --annotate
```
## Specific tasks
* **Running and Debugging Playwright tests** [references/playwright-tests.md](references/playwright-tests.md)
* **Request mocking** [references/request-mocking.md](references/request-mocking.md)
* **Running Playwright code** [references/running-code.md](references/running-code.md)
* **Browser session management** [references/session-management.md](references/session-management.md)
* **Spec-driven testing (plan / generate / heal)** [references/spec-driven-testing.md](references/spec-driven-testing.md)
* **Storage state (cookies, localStorage)** [references/storage-state.md](references/storage-state.md)
* **Test generation** [references/test-generation.md](references/test-generation.md)
* **Tracing** [references/tracing.md](references/tracing.md)
* **Video recording** [references/video-recording.md](references/video-recording.md)
* **Inspecting element attributes** [references/element-attributes.md](references/element-attributes.md)
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/element-attributes.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
# Inspecting Element Attributes
When the snapshot doesn't show an element's `id`, `class`, `data-*` attributes, or other DOM properties, use `eval` to inspect them.
## Examples
```bash
playwright-cli snapshot
# snapshot shows a button as e7 but doesn't reveal its id or data attributes
# get the element's id
playwright-cli eval "el => el.id" e7
# get all CSS classes
playwright-cli eval "el => el.className" e7
# get a specific attribute
playwright-cli eval "el => el.getAttribute('data-testid')" e7
playwright-cli eval "el => el.getAttribute('aria-label')" e7
# get a computed style property
playwright-cli eval "el => getComputedStyle(el).display" e7
```
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/playwright-tests.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,39 @@
# Running Playwright Tests
To run Playwright tests, use the `npx playwright test` command, or a package manager script. To avoid opening the interactive html report, use `PLAYWRIGHT_HTML_OPEN=never` environment variable.
```bash
# Run all tests
PLAYWRIGHT_HTML_OPEN=never npx playwright test
# Run all tests through a custom npm script
PLAYWRIGHT_HTML_OPEN=never npm run special-test-command
```
# Debugging Playwright Tests
To debug a failing Playwright test, run it with `--debug=cli` option. This command will pause the test at the start and print the debugging instructions.
**IMPORTANT**: run the command in the background and check the output until "Debugging Instructions" is printed. Make sure to stop the command after you have finished.
Once instructions containing a session name are printed, use `playwright-cli` to attach the session and explore the page.
```bash
# Run the test
PLAYWRIGHT_HTML_OPEN=never npx playwright test --debug=cli
# ...
# ... debugging instructions for "tw-abcdef" session ...
# ...
# Attach to the test
playwright-cli attach tw-abcdef
```
Keep the test running in the background while you explore and look for a fix.
The test is paused at the start, so you should step over or pause at a particular location
where the problem is most likely to be.
Every action you perform with `playwright-cli` generates corresponding Playwright TypeScript code.
This code appears in the output and can be copied directly into the test. Most of the time, a specific locator or an expectation should be updated, but it could also be a bug in the app. Use your judgement.
After fixing the test, stop the background test run. Rerun to check that test passes.
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/request-mocking.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,87 @@
# Request Mocking
Intercept, mock, modify, and block network requests.
## CLI Route Commands
```bash
# Mock with custom status
playwright-cli route "**/*.jpg" --status=404
# Mock with JSON body
playwright-cli route "**/api/users" --body='[{"id":1,"name":"Alice"}]' --content-type=application/json
# Mock with custom headers
playwright-cli route "**/api/data" --body='{"ok":true}' --header="X-Custom: value"
# Remove headers from requests
playwright-cli route "**/*" --remove-header=cookie,authorization
# List active routes
playwright-cli route-list
# Remove a route or all routes
playwright-cli unroute "**/*.jpg"
playwright-cli unroute
```
## URL Patterns
```
**/api/users           - Exact path match
**/api/*/details       - Wildcard in path
**/*.{png,jpg,jpeg}    - Match file extensions
**/search?q=*          - Match query parameters
```
## Advanced Mocking with run-code
For conditional responses, request body inspection, response modification, or delays:
### Conditional Response Based on Request
```bash
playwright-cli run-code "async page => {
  await page.route('**/api/login', route => {
    const body = route.request().postDataJSON();
    if (body.username === 'admin') {
      route.fulfill({ body: JSON.stringify({ token: 'mock-token' }) });
    } else {
      route.fulfill({ status: 401, body: JSON.stringify({ error: 'Invalid' }) });
    }
  });
}"
```
### Modify Real Response
```bash
playwright-cli run-code "async page => {
  await page.route('**/api/user', async route => {
    const response = await route.fetch();
    const json = await response.json();
    json.isPremium = true;
    await route.fulfill({ response, json });
  });
}"
```
### Simulate Network Failures
```bash
playwright-cli run-code "async page => {
  await page.route('**/api/offline', route => route.abort('internetdisconnected'));
}"
# Options: connectionrefused, timedout, connectionreset, internetdisconnected
```
### Delayed Response
```bash
playwright-cli run-code "async page => {
  await page.route('**/api/slow', async route => {
    await new Promise(r => setTimeout(r, 3000));
    route.fulfill({ body: JSON.stringify({ data: 'loaded' }) });
  });
}"
```
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/running-code.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,241 @@
# Running Custom Playwright Code
Use `run-code` to execute arbitrary Playwright code for advanced scenarios not covered by CLI commands.
## Syntax
```bash
playwright-cli run-code "async page => {
  // Your Playwright code here
  // Access page.context() for browser context operations
}"
```
You can also load the function from a file:
```bash
playwright-cli run-code --filename=./my-script.js
```
The code must be a single function expression, it is wrapped in `(...)` and evaluated.
import/export/require syntax is not supported.
## Geolocation
```bash
# Grant geolocation permission and set location
playwright-cli run-code "async page => {
  await page.context().grantPermissions(['geolocation']);
  await page.context().setGeolocation({ latitude: 37.7749, longitude: -122.4194 });
}"
# Set location to London
playwright-cli run-code "async page => {
  await page.context().grantPermissions(['geolocation']);
  await page.context().setGeolocation({ latitude: 51.5074, longitude: -0.1278 });
}"
# Clear geolocation override
playwright-cli run-code "async page => {
  await page.context().clearPermissions();
}"
```
## Permissions
```bash
# Grant multiple permissions
playwright-cli run-code "async page => {
  await page.context().grantPermissions([
    'geolocation',
    'notifications',
    'camera',
    'microphone'
  ]);
}"
# Grant permissions for specific origin
playwright-cli run-code "async page => {
  await page.context().grantPermissions(['clipboard-read'], {
    origin: 'https://example.com'
  });
}"
```
## Media Emulation
```bash
# Emulate dark color scheme
playwright-cli run-code "async page => {
  await page.emulateMedia({ colorScheme: 'dark' });
}"
# Emulate light color scheme
playwright-cli run-code "async page => {
  await page.emulateMedia({ colorScheme: 'light' });
}"
# Emulate reduced motion
playwright-cli run-code "async page => {
  await page.emulateMedia({ reducedMotion: 'reduce' });
}"
# Emulate print media
playwright-cli run-code "async page => {
  await page.emulateMedia({ media: 'print' });
}"
```
## Wait Strategies
```bash
# Wait for network idle
playwright-cli run-code "async page => {
  await page.waitForLoadState('networkidle');
}"
# Wait for specific element
playwright-cli run-code "async page => {
  await page.locator('.loading').waitFor({ state: 'hidden' });
}"
# Wait for function to return true
playwright-cli run-code "async page => {
  await page.waitForFunction(() => window.appReady === true);
}"
# Wait with timeout
playwright-cli run-code "async page => {
  await page.locator('.result').waitFor({ timeout: 10000 });
}"
```
## Frames and Iframes
```bash
# Work with iframe
playwright-cli run-code "async page => {
  const frame = page.locator('iframe#my-iframe').contentFrame();
  await frame.locator('button').click();
}"
# Get all frames
playwright-cli run-code "async page => {
  const frames = page.frames();
  return frames.map(f => f.url());
}"
```
## File Downloads
```bash
# Handle file download
playwright-cli run-code "async page => {
  const downloadPromise = page.waitForEvent('download');
  await page.getByRole('link', { name: 'Download' }).click();
  const download = await downloadPromise;
  await download.saveAs('./downloaded-file.pdf');
  return download.suggestedFilename();
}"
```
## Clipboard
```bash
# Read clipboard (requires permission)
playwright-cli run-code "async page => {
  await page.context().grantPermissions(['clipboard-read']);
  return await page.evaluate(() => navigator.clipboard.readText());
}"
# Write to clipboard
playwright-cli run-code "async page => {
  await page.evaluate(text => navigator.clipboard.writeText(text), 'Hello clipboard!');
}"
```
## Page Information
```bash
# Get page title
playwright-cli run-code "async page => {
  return await page.title();
}"
# Get current URL
playwright-cli run-code "async page => {
  return page.url();
}"
# Get page content
playwright-cli run-code "async page => {
  return await page.content();
}"
# Get viewport size
playwright-cli run-code "async page => {
  return page.viewportSize();
}"
```
## JavaScript Execution
```bash
# Execute JavaScript and return result
playwright-cli run-code "async page => {
  return await page.evaluate(() => {
    return {
      userAgent: navigator.userAgent,
      language: navigator.language,
      cookiesEnabled: navigator.cookieEnabled
    };
  });
}"
# Pass arguments to evaluate
playwright-cli run-code "async page => {
  const multiplier = 5;
  return await page.evaluate(m => document.querySelectorAll('li').length * m, multiplier);
}"
```
## Error Handling
```bash
# Try-catch in run-code
playwright-cli run-code "async page => {
  try {
    await page.getByRole('button', { name: 'Submit' }).click({ timeout: 1000 });
    return 'clicked';
  } catch (e) {
    return 'element not found';
  }
}"
```
## Complex Workflows
```bash
# Login and save state
playwright-cli run-code "async page => {
  await page.goto('https://example.com/login');
  await page.getByRole('textbox', { name: 'Email' }).fill('user@example.com');
  await page.getByRole('textbox', { name: 'Password' }).fill('secret');
  await page.getByRole('button', { name: 'Sign in' }).click();
  await page.waitForURL('**/dashboard');
  await page.context().storageState({ path: 'auth.json' });
  return 'Login successful';
}"
# Scrape data from multiple pages
playwright-cli run-code "async page => {
  const results = [];
  for (let i = 1; i <= 3; i++) {
    await page.goto(\`https://example.com/page/\${i}\`);
    const items = await page.locator('.item').allTextContents();
    results.push(...items);
  }
  return results;
}"
```
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/session-management.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,225 @@
# Browser Session Management
Run multiple isolated browser sessions concurrently with state persistence.
## Named Browser Sessions
Use `-s` flag to isolate browser contexts:
```bash
# Browser 1: Authentication flow
playwright-cli -s=auth open https://app.example.com/login
# Browser 2: Public browsing (separate cookies, storage)
playwright-cli -s=public open https://example.com
# Commands are isolated by browser session
playwright-cli -s=auth fill e1 "user@example.com"
playwright-cli -s=public snapshot
```
## Browser Session Isolation Properties
Each browser session has independent:
- Cookies
- LocalStorage / SessionStorage
- IndexedDB
- Cache
- Browsing history
- Open tabs
## Browser Session Commands
```bash
# List all browser sessions
playwright-cli list
# Stop a browser session (close the browser)
playwright-cli close                # stop the default browser
playwright-cli -s=mysession close   # stop a named browser
# Stop all browser sessions
playwright-cli close-all
# Forcefully kill all daemon processes (for stale/zombie processes)
playwright-cli kill-all
# Delete browser session user data (profile directory)
playwright-cli delete-data                # delete default browser data
playwright-cli -s=mysession delete-data   # delete named browser data
```
## Environment Variable
Set a default browser session name via environment variable:
```bash
export PLAYWRIGHT_CLI_SESSION="mysession"
playwright-cli open example.com  # Uses "mysession" automatically
```
## Common Patterns
### Concurrent Scraping
```bash
#!/bin/bash
# Scrape multiple sites concurrently
# Start all browsers
playwright-cli -s=site1 open https://site1.com &
playwright-cli -s=site2 open https://site2.com &
playwright-cli -s=site3 open https://site3.com &
wait
# Take snapshots from each
playwright-cli -s=site1 snapshot
playwright-cli -s=site2 snapshot
playwright-cli -s=site3 snapshot
# Cleanup
playwright-cli close-all
```
### A/B Testing Sessions
```bash
# Test different user experiences
playwright-cli -s=variant-a open "https://app.com?variant=a"
playwright-cli -s=variant-b open "https://app.com?variant=b"
# Compare
playwright-cli -s=variant-a screenshot
playwright-cli -s=variant-b screenshot
```
### Persistent Profile
By default, browser profile is kept in memory only. Use `--persistent` flag on `open` to persist the browser profile to disk:
```bash
# Use persistent profile (auto-generated location)
playwright-cli open https://example.com --persistent
# Use persistent profile with custom directory
playwright-cli open https://example.com --profile=/path/to/profile
```
## Attaching to a Running Browser
Use `attach` to connect to a browser that is already running, instead of launching a new one.
### Attach by channel name
Connect to a running Chrome or Edge instance by its channel name. The browser must have remote debugging enabled â€” navigate to `chrome://inspect/#remote-debugging` in the target browser and check "Allow remote debugging for this browser instance".
```bash
# Attach to Chrome
playwright-cli attach --cdp=chrome
# Attach to Chrome Canary
playwright-cli attach --cdp=chrome-canary
# Attach to Microsoft Edge
playwright-cli attach --cdp=msedge
# Attach to Edge Dev
playwright-cli attach --cdp=msedge-dev
```
Supported channels: `chrome`, `chrome-beta`, `chrome-dev`, `chrome-canary`, `msedge`, `msedge-beta`, `msedge-dev`, `msedge-canary`.
When `--session` is not provided, the session is named after the channel (e.g. `--cdp=msedge` creates a session called `msedge`), so parallel attaches to Chrome and Edge don't collide on `default`. Pass `--session=<name>` to override.
### Attach via CDP endpoint
Connect to a browser that exposes a Chrome DevTools Protocol endpoint:
```bash
playwright-cli attach --cdp=http://localhost:9222
```
### Attach via browser extension
Connect to a browser with the Playwright extension installed:
```bash
playwright-cli attach --extension
```
### Detach
Tear down an attached session without affecting the external browser:
```bash
# Detach the default attached session
playwright-cli detach
# Detach a specific attached session
playwright-cli -s=msedge detach
```
`detach` only works on sessions created via `attach`. For sessions created via `open`, use `close`.
## Default Browser Session
When `-s` is omitted, commands use the default browser session:
```bash
# These use the same default browser session
playwright-cli open https://example.com
playwright-cli snapshot
playwright-cli close  # Stops default browser
```
## Browser Session Configuration
Configure a browser session with specific settings when opening:
```bash
# Open with config file
playwright-cli open https://example.com --config=.playwright/my-cli.json
# Open with specific browser
playwright-cli open https://example.com --browser=firefox
# Open in headed mode
playwright-cli open https://example.com --headed
# Open with persistent profile
playwright-cli open https://example.com --persistent
```
## Best Practices
### 1. Name Browser Sessions Semantically
```bash
# GOOD: Clear purpose
playwright-cli -s=github-auth open https://github.com
playwright-cli -s=docs-scrape open https://docs.example.com
# AVOID: Generic names
playwright-cli -s=s1 open https://github.com
```
### 2. Always Clean Up
```bash
# Stop browsers when done
playwright-cli -s=auth close
playwright-cli -s=scrape close
# Or stop all at once
playwright-cli close-all
# If browsers become unresponsive or zombie processes remain
playwright-cli kill-all
```
### 3. Delete Stale Browser Data
```bash
# Remove old browser data to free disk space
playwright-cli -s=oldsession delete-data
```
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/spec-driven-testing.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,305 @@
# Spec-driven testing (plan â†’ generate â†’ heal)
End-to-end workflow for authoring and maintaining Playwright tests using `playwright-cli`. The three sections below can be used independently:
- **Planning** â€” explore the app, produce a spec file describing what to test.
- **Generate** â€” turn a spec into Playwright test files. Update the spec if it's vague or stale.
- **Heal** â€” diagnose failing tests, fix the code, reconcile the spec with reality.
All three lean on the same mechanic: run `npx playwright test --debug=cli` in the background, then `playwright-cli attach tw-XXXX` to drive the paused page interactively. See [playwright-tests.md](playwright-tests.md) for the debug/attach mechanics and [test-generation.md](test-generation.md) for how every `playwright-cli` action emits Playwright TypeScript.
---
## 1. Planning
Goal: produce a spec file (e.g. `specs/<feature>.plan.md`) that enumerates the scenarios to test. **Always** write the spec to a file.
### 1.1 Prerequisite: workspace
Check the workspace has Playwright installed before anything else:
```bash
# Either of these confirms a workspace:
test -f playwright.config.ts || test -f playwright.config.js
npx --no-install playwright --version
```
If there is no Playwright install, bootstrap one and let the user pick the defaults:
```bash
npm init playwright@latest
```
### 1.2 Prerequisite: seed test
A **seed test** is a minimal test that lands the page in the state every scenario starts from: navigation to the app, any required login, feature flags, etc. Scenarios assume a fresh start *after* the seed. `--debug=cli` pauses *inside* this test, so the seed is where every planning and generation session begins.
Minimum viable seed:
```ts
// tests/seed.spec.ts
import { test } from '@playwright/test';
test('seed', async ({ page }) => {
  await page.goto('https://example.com/');
});
```
Preferred â€” push navigation into a fixture so scenario tests reuse it:
```ts
// tests/fixtures.ts
import { test as baseTest } from '@playwright/test';
export { expect } from '@playwright/test';
export const test = baseTest.extend({
  page: async ({ page }, use) => {
    await page.goto('https://example.com/');
    await use(page);
  },
});
```
```ts
// tests/seed.spec.ts
import { test } from './fixtures';
test('seed', async ({ page }) => {
  // Fixture already navigates. This empty body tells agents where to start.
});
```
If no seed exists, create one that at least navigates to the app.
### 1.3 Explore the app
Launch the app via the seed in the background and attach:
```bash
PLAYWRIGHT_HTML_OPEN=never npx playwright test tests/seed.spec.ts --debug=cli
# wait for "Debugging Instructions" and the session name tw-XXXX
playwright-cli attach tw-XXXX
```
Resume so the seed runs, then probe the app:
```bash
playwright-cli resume                   # resume so that seed test runs fully
playwright-cli snapshot                 # inventory of interactive elements
playwright-cli click e5                 # follow a flow
playwright-cli eval "location.href"     # read URL / state
playwright-cli show --annotate          # ask the user to point at something
```
Map out:
- Interactive surfaces (forms, buttons, lists, filters, modals).
- Primary user journeys end-to-end.
- Edge cases: empty states, validation errors, very long input, boundary values.
- Persistence: reload, local/session storage, URL fragments.
- Navigation: which controls change the URL, back/forward behaviour.
**Important**: Do not just open the app url with playwright-cli, always go through the test to capture any custom setup done there.
**Important**: Stop the background test when done exploring.
### 1.4 Write the spec file
Save under `specs/<feature>.plan.md`. Use this structure:
```markdown
# <Feature> Test Plan
## Application Overview
<One paragraph describing what the feature does and why it matters.>
## Test Scenarios
### 1. <Group Name>
**Seed:** `tests/seed.spec.ts`
#### 1.1. <kebab-case-scenario-name>
**File:** `tests/<group>/<kebab-case-scenario-name>.spec.ts`
**Steps:**
  1. <Concrete user step>
    - expect: <observable outcome>
    - expect: <another observable outcome>
  2. <Next step>
    - expect: <outcome>
#### 1.2. <next-scenario>
...
### 2. <Next Group>
**Seed:** `tests/seed.spec.ts`
...
```
Guidelines:
- Each scenario is independent and starts from the seed's fresh state â€” never chain scenarios.
- Scenario names are kebab-case and match the test file name (`should-add-single-todo` â†’ `should-add-single-todo.spec.ts`).
- Cover happy path, edge cases, validation, negative flows, persistence.
- Write steps at the user level ("Type 'Buy milk' into the input"), not the API level ("call `fill`").
- Put observable outcomes in `- expect:` bullets; each becomes an assertion during generation.
---
## 2. Generate
Goal: take a spec file and produce Playwright test files. Optionally update the spec if it has drifted.
### 2.1 Inputs
- **Spec file**, e.g. `specs/basic-operations.plan.md`.
- **Target**: either a single scenario (e.g. `1.2`), a whole group (`1`), or all.
- **Seed file**, read from the `**Seed:**` line of the scenario's group.
### 2.2 Generate one scenario
For each target scenario, in sequence (never in parallel â€” scenarios share the seed session):
```bash
PLAYWRIGHT_HTML_OPEN=never npx playwright test <seed-file> --debug=cli   # background
playwright-cli attach tw-XXXX
# resume
```
**Do not** just open the app url with playwright-cli, always go through the test to capture any custom setup done there.
Walk the scenario's `Steps:` one by one with `playwright-cli`, treating the spec as the plan and the live app as the source of truth. If a step is vague ("click the button" â€” which button?), references an element that no longer exists, or contradicts the app's actual behaviour, use your judgement: update the spec to match what the app really does, then keep going. Editing the spec mid-generation is expected.
Every action prints the equivalent Playwright TypeScript (see [test-generation.md](test-generation.md)):
```bash
playwright-cli snapshot                         # find refs
playwright-cli fill e3 "John Doe"               # -> page.getByRole('textbox', {...}).fill(...)
playwright-cli press Enter
playwright-cli click e7
```
For each `- expect:` bullet, add an explicit assertion. See [test-generation.md](test-generation.md) for details.
Collect the generated code and write the test file at the path given in the spec:
```ts
// spec: specs/basic-operations.plan.md
// seed: tests/seed.spec.ts
import { test, expect } from './fixtures';   // or '@playwright/test' if no fixtures file
test.describe('Signing in and out', () => {
  test('should sign in', async ({ page }) => {
    // 1. Navigate to the application
    // (handled by the seed fixture)
    // 2. Type 'John Doe' into the username field
    await page.getByRole('textbox', { name: 'username' }).fill('John Doe');
    // 3. Type password
    await page.getByRole('textbox', { name: 'password' }).fill('TestPassword');
    // 4. Press Enter to submit
    await page.getByRole('textbox', { name: 'password' }).press('Enter');
    await expect(page.getByRole('heading')).toContainText('Welcome, John Doe!');
  });
});
```
Rules:
- **One test per file.** File path, describe name, and test name come verbatim from the spec (minus the ordinal).
- Prefix each numbered step with a `// N. <step text>` comment before its actions.
- Use the describe group name verbatim from the spec (no `1.` ordinal).
- Import from `./fixtures` if the project has one; otherwise `@playwright/test`.
- **Important**: close the CLI session and stop the background test before moving to the next scenario.
### 2.3 Generate multiple scenarios
Loop 2.2 over the targeted scenarios one at a time, restarting the seed between each so every test starts from a clean page. This is safe to parallelise due to unique generated session names - just make sure each test run is stopped.
### 2.4 Run generated tests
After generation, run the new tests once:
```bash
PLAYWRIGHT_HTML_OPEN=never npx playwright test tests/<group>/<scenario>.spec.ts
```
Any failure goes to Section 3.
---
## 3. Heal
Goal: fix failing tests, and update the spec if the app's intended behaviour changed.
### 3.1 Find failing tests
```bash
PLAYWRIGHT_HTML_OPEN=never npx playwright test
```
Record the list of failing `<file>:<line>` entries and process them one at a time. Do not attempt parallel fixes â€” shared state and the single CLI session make that fragile.
### 3.2 Debug one failure
Run the single failing test in debug mode in the background, then attach:
```bash
PLAYWRIGHT_HTML_OPEN=never npx playwright test tests/<group>/<scenario>.spec.ts:<line> --debug=cli
# wait for "Debugging Instructions" and the tw-XXXX session name
playwright-cli attach tw-XXXX
```
The test is paused at the start. Step forward or run to until just before the failing action or assertion, then diagnose:
```bash
playwright-cli snapshot                # did the element change / move / rename?
playwright-cli console                 # app-side errors?
playwright-cli requests                # failed request? wrong payload?
playwright-cli show --annotate         # ask the user to point somewhere
```
Common causes: selector drift, new wrapper element, label/ARIA rename, timing (transition, async load), assertion text updated in the app, test data leaking between runs.
Rehearse the corrected interaction with `playwright-cli` â€” the generated code in the output is what you paste back into the test.
### 3.3 Apply the fix
Edit the test file: update the locator, assertion, step order, or inputs to match the corrected behaviour. Stop the background debug run. Rerun the single test to confirm green.
Never skip hooks or add sleeps as a fix. Never use `networkidle`.
### 3.4 Reconcile with the spec
Open the spec referenced by the `// spec:` header in the test file and locate the scenario that matches the test.
- **Fix was purely technical** (locator drift, better assertion shape) and the spec's user-level behaviour still matches the app â†’ leave the spec alone.
- **Fix changed user-visible steps, inputs, order, or expected outcomes** that the spec describes â†’ update the spec to match reality. Keep the scenario id and file path stable; only the step / expect lines change.
- **Unclear whether the app change is intentional** (spec is stale) **or a regression** (test was right, app is wrong) â†’ **stop and ask the user**. Provide:
  - the scenario id (e.g. `2.3`),
  - the spec lines that no longer match,
  - the observed app behaviour (quote a snapshot excerpt or a concrete outcome).
Only after the user answers, either update the spec (intentional change) or file/flag the test as covering a bug (regression).
### 3.5 Iteration and giving up
- Fix failures one at a time; rerun after each.
- If after thorough investigation you are confident the test is correct but the app is wrong *and* the user has confirmed it's a bug: mark the test `test.fixme(...)` with a comment pointing at the user's decision or issue link. Never silently skip.
---
## Cross-references
| For... | See |
|---|---|
| `--debug=cli` / attach mechanics | [playwright-tests.md](playwright-tests.md) |
| How `playwright-cli` actions become TS | [test-generation.md](test-generation.md) |
| Mocking requests during exploration/generation | [request-mocking.md](request-mocking.md) |
| Managing the CLI browser session | [session-management.md](session-management.md) |
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/storage-state.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,275 @@
# Storage Management
Manage cookies, localStorage, sessionStorage, and browser storage state.
## Storage State
Save and restore complete browser state including cookies and storage.
### Save Storage State
```bash
# Save to auto-generated filename (storage-state-{timestamp}.json)
playwright-cli state-save
# Save to specific filename
playwright-cli state-save my-auth-state.json
```
### Restore Storage State
```bash
# Load storage state from file
playwright-cli state-load my-auth-state.json
# Reload page to apply cookies
playwright-cli open https://example.com
```
### Storage State File Format
The saved file contains:
```json
{
  "cookies": [
    {
      "name": "session_id",
      "value": "abc123",
      "domain": "example.com",
      "path": "/",
      "expires": 1893456000,
      "httpOnly": true,
      "secure": true,
      "sameSite": "Lax"
    }
  ],
  "origins": [
    {
      "origin": "https://example.com",
      "localStorage": [
        { "name": "theme", "value": "dark" },
        { "name": "user_id", "value": "12345" }
      ]
    }
  ]
}
```
## Cookies
### List All Cookies
```bash
playwright-cli cookie-list
```
### Filter Cookies by Domain
```bash
playwright-cli cookie-list --domain=example.com
```
### Filter Cookies by Path
```bash
playwright-cli cookie-list --path=/api
```
### Get Specific Cookie
```bash
playwright-cli cookie-get session_id
```
### Set a Cookie
```bash
# Basic cookie
playwright-cli cookie-set session abc123
# Cookie with options
playwright-cli cookie-set session abc123 --domain=example.com --path=/ --httpOnly --secure --sameSite=Lax
# Cookie with expiration (Unix timestamp)
playwright-cli cookie-set remember_me token123 --expires=1893456000
```
### Delete a Cookie
```bash
playwright-cli cookie-delete session_id
```
### Clear All Cookies
```bash
playwright-cli cookie-clear
```
### Advanced: Multiple Cookies or Custom Options
For complex scenarios like adding multiple cookies at once, use `run-code`:
```bash
playwright-cli run-code "async page => {
  await page.context().addCookies([
    { name: 'session_id', value: 'sess_abc123', domain: 'example.com', path: '/', httpOnly: true },
    { name: 'preferences', value: JSON.stringify({ theme: 'dark' }), domain: 'example.com', path: '/' }
  ]);
}"
```
## Local Storage
### List All localStorage Items
```bash
playwright-cli localstorage-list
```
### Get Single Value
```bash
playwright-cli localstorage-get token
```
### Set Value
```bash
playwright-cli localstorage-set theme dark
```
### Set JSON Value
```bash
playwright-cli localstorage-set user_settings '{"theme":"dark","language":"en"}'
```
### Delete Single Item
```bash
playwright-cli localstorage-delete token
```
### Clear All localStorage
```bash
playwright-cli localstorage-clear
```
### Advanced: Multiple Operations
For complex scenarios like setting multiple values at once, use `run-code`:
```bash
playwright-cli run-code "async page => {
  await page.evaluate(() => {
    localStorage.setItem('token', 'jwt_abc123');
    localStorage.setItem('user_id', '12345');
    localStorage.setItem('expires_at', Date.now() + 3600000);
  });
}"
```
## Session Storage
### List All sessionStorage Items
```bash
playwright-cli sessionstorage-list
```
### Get Single Value
```bash
playwright-cli sessionstorage-get form_data
```
### Set Value
```bash
playwright-cli sessionstorage-set step 3
```
### Delete Single Item
```bash
playwright-cli sessionstorage-delete step
```
### Clear sessionStorage
```bash
playwright-cli sessionstorage-clear
```
## IndexedDB
### List Databases
```bash
playwright-cli run-code "async page => {
  return await page.evaluate(async () => {
    const databases = await indexedDB.databases();
    return databases;
  });
}"
```
### Delete Database
```bash
playwright-cli run-code "async page => {
  await page.evaluate(() => {
    indexedDB.deleteDatabase('myDatabase');
  });
}"
```
## Common Patterns
### Authentication State Reuse
```bash
# Step 1: Login and save state
playwright-cli open https://app.example.com/login
playwright-cli snapshot
playwright-cli fill e1 "user@example.com"
playwright-cli fill e2 "password123"
playwright-cli click e3
# Save the authenticated state
playwright-cli state-save auth.json
# Step 2: Later, restore state and skip login
playwright-cli state-load auth.json
playwright-cli open https://app.example.com/dashboard
# Already logged in!
```
### Save and Restore Roundtrip
```bash
# Set up authentication state
playwright-cli open https://example.com
playwright-cli eval "() => { document.cookie = 'session=abc123'; localStorage.setItem('user', 'john'); }"
# Save state to file
playwright-cli state-save my-session.json
# ... later, in a new session ...
# Restore state
playwright-cli state-load my-session.json
playwright-cli open https://example.com
# Cookies and localStorage are restored!
```
## Security Notes
- Never commit storage state files containing auth tokens
- Add `*.auth-state.json` to `.gitignore`
- Delete state files after automation completes
- Use environment variables for sensitive data
- By default, sessions run in-memory mode which is safer for sensitive operations
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/test-generation.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,134 @@
# Test Generation
Generate Playwright test code automatically as you interact with the browser.
## How It Works
Every action you perform with `playwright-cli` generates corresponding Playwright TypeScript code.
This code appears in the output and can be copied directly into your test files.
## Example Workflow
```bash
# Start a session
playwright-cli open https://example.com/login
# Take a snapshot to see elements
playwright-cli snapshot
# Output shows: e1 [textbox "Email"], e2 [textbox "Password"], e3 [button "Sign In"]
# Fill form fields - generates code automatically
playwright-cli fill e1 "user@example.com"
# Ran Playwright code:
# await page.getByRole('textbox', { name: 'Email' }).fill('user@example.com');
playwright-cli fill e2 "password123"
# Ran Playwright code:
# await page.getByRole('textbox', { name: 'Password' }).fill('password123');
playwright-cli click e3
# Ran Playwright code:
# await page.getByRole('button', { name: 'Sign In' }).click();
```
## Building a Test File
Collect the generated code into a Playwright test:
```typescript
import { test, expect } from '@playwright/test';
test('login flow', async ({ page }) => {
  // Generated code from playwright-cli session:
  await page.goto('https://example.com/login');
  await page.getByRole('textbox', { name: 'Email' }).fill('user@example.com');
  await page.getByRole('textbox', { name: 'Password' }).fill('password123');
  await page.getByRole('button', { name: 'Sign In' }).click();
  // Add assertions
  await expect(page).toHaveURL(/.*dashboard/);
});
```
## Best Practices
### 1. Use Semantic Locators
The generated code uses role-based locators when possible, which are more resilient:
```typescript
// Generated (good - semantic)
await page.getByRole('button', { name: 'Submit' }).click();
// Avoid (fragile - CSS selectors)
await page.locator('#submit-btn').click();
```
### 2. Explore Before Recording
Take snapshots to understand the page structure before recording actions:
```bash
playwright-cli open https://example.com
playwright-cli snapshot
# Review the element structure
playwright-cli click e5
```
### 3. Add Assertions Manually
Generated code captures actions but not assertions. Add expectations in your test using one of the recommended matchers:
- `toBeVisible()` â€” element is rendered and visible
- `toHaveText(text)` â€” element text content matches
- `toHaveValue(value) / toBeEmpty()` â€” input/select value matches
- `toBeChecked() / toBeUnchecked()` â€” checkbox state matches
- `toMatchAriaSnapshot(snapshot)` â€” page (or locator) matches a partial accessibility snapshot
Use `playwright-cli generate-locator <target>` to produce the locator expression for the assertion, and the snapshot/eval commands to capture the expected value.
When asserting text content, make sure that generated locator does not contain text from the element itself. `getByTestId()` or `getByLabel()` usually work well with asserting text. When locator is text-based, prefer `toBeVisible()` instead.
Snapshot to be matched does not have to contain all the information - only capture what's necessary for the assertion. You can use regular expressions for unstable values.
```bash
# Get a stable locator for an element ref to use in the assertion
playwright-cli --raw generate-locator e5
# getByRole('button', { name: 'Submit' })
# Capture expected text content for toHaveText
playwright-cli --raw eval "el => el.textContent" e5
# Capture expected input value for toHaveValue/toBeEmpty
playwright-cli --raw eval "el => el.value" e5
# Capture expected aria snapshot for toMatchAriaSnapshot/toBeChecked
# (whole page, or use a ref to scope to a region)
playwright-cli --raw snapshot
playwright-cli --raw snapshot e5
```
```typescript
// Generated action
await page.getByRole('button', { name: 'Submit' }).click();
// Manual assertions using the outputs above:
await expect(page.getByRole('alert', { name: 'Success' })).toBeVisible();
await expect(page.getByTestId('main-header')).toHaveText('Welcome, user');
await expect(page.getByRole('textbox', { name: 'Email' })).toHaveValue('user@example.com');
await expect(page.getByRole('checkbox', { name: 'Enable notifications' })).toBeChecked();
// toMatchAriaSnapshot on the whole page, finds a matching region
await expect(page).toMatchAriaSnapshot(`
  - heading "Welcome, user"
  - link /\\d+ new messages?/
  - button "Sign out"
`);
// toMatchAriaSnapshot scoped to a region
await expect(page.getByRole('navigation')).toMatchAriaSnapshot(`
  - link "Home"
  - link /\\d+ new messages?/
  - link "Profile"
`);
```
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/tracing.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,139 @@
# Tracing
Capture detailed execution traces for debugging and analysis. Traces include DOM snapshots, screenshots, network activity, and console logs.
## Basic Usage
```bash
# Start trace recording
playwright-cli tracing-start
# Perform actions
playwright-cli open https://example.com
playwright-cli click e1
playwright-cli fill e2 "test"
# Stop trace recording
playwright-cli tracing-stop
```
## Trace Output Files
When you start tracing, Playwright creates a `traces/` directory with several files:
### `trace-{timestamp}.trace`
**Action log** - The main trace file containing:
- Every action performed (clicks, fills, navigations)
- DOM snapshots before and after each action
- Screenshots at each step
- Timing information
- Console messages
- Source locations
### `trace-{timestamp}.network`
**Network log** - Complete network activity:
- All HTTP requests and responses
- Request headers and bodies
- Response headers and bodies
- Timing (DNS, connect, TLS, TTFB, download)
- Resource sizes
- Failed requests and errors
### `resources/`
**Resources directory** - Cached resources:
- Images, fonts, stylesheets, scripts
- Response bodies for replay
- Assets needed to reconstruct page state
## What Traces Capture
| Category | Details |
|----------|---------|
| **Actions** | Clicks, fills, hovers, keyboard input, navigations |
| **DOM** | Full DOM snapshot before/after each action |
| **Screenshots** | Visual state at each step |
| **Network** | All requests, responses, headers, bodies, timing |
| **Console** | All console.log, warn, error messages |
| **Timing** | Precise timing for each operation |
## Use Cases
### Debugging Failed Actions
```bash
playwright-cli tracing-start
playwright-cli open https://app.example.com
# This click fails - why?
playwright-cli click e5
playwright-cli tracing-stop
# Open trace to see DOM state when click was attempted
```
### Analyzing Performance
```bash
playwright-cli tracing-start
playwright-cli open https://slow-site.com
playwright-cli tracing-stop
# View network waterfall to identify slow resources
```
### Capturing Evidence
```bash
# Record a complete user flow for documentation
playwright-cli tracing-start
playwright-cli open https://app.example.com/checkout
playwright-cli fill e1 "4111111111111111"
playwright-cli fill e2 "12/25"
playwright-cli fill e3 "123"
playwright-cli click e4
playwright-cli tracing-stop
# Trace shows exact sequence of events
```
## Trace vs Video vs Screenshot
| Feature | Trace | Video | Screenshot |
|---------|-------|-------|------------|
| **Format** | .trace file | .webm video | .png/.jpeg image |
| **DOM inspection** | Yes | No | No |
| **Network details** | Yes | No | No |
| **Step-by-step replay** | Yes | Continuous | Single frame |
| **File size** | Medium | Large | Small |
| **Best for** | Debugging | Demos | Quick capture |
## Best Practices
### 1. Start Tracing Before the Problem
```bash
# Trace the entire flow, not just the failing step
playwright-cli tracing-start
playwright-cli open https://example.com
# ... all steps leading to the issue ...
playwright-cli tracing-stop
```
### 2. Clean Up Old Traces
Traces can consume significant disk space:
```bash
# Remove traces older than 7 days
find .playwright-cli/traces -mtime +7 -delete
```
## Limitations
- Traces add overhead to automation
- Large traces can consume significant disk space
- Some dynamic content may not replay perfectly
scripts/node_modules/playwright-core/lib/tools/cli-client/skill/references/video-recording.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,143 @@
# Video Recording
Capture browser automation sessions as video for debugging, documentation, or verification. Produces WebM (VP8/VP9 codec).
## Basic Recording
```bash
# Open browser first
playwright-cli open
# Start recording
playwright-cli video-start demo.webm
# Add a chapter marker for section transitions
playwright-cli video-chapter "Getting Started" --description="Opening the homepage" --duration=2000
# Navigate and perform actions
playwright-cli goto https://example.com
playwright-cli snapshot
playwright-cli click e1
# Add another chapter
playwright-cli video-chapter "Filling Form" --description="Entering test data" --duration=2000
playwright-cli fill e2 "test input"
# Stop and save
playwright-cli video-stop
```
## Best Practices
### 1. Use Descriptive Filenames
```bash
# Include context in filename
playwright-cli video-start recordings/login-flow-2024-01-15.webm
playwright-cli video-start recordings/checkout-test-run-42.webm
```
### 2. Record entire hero scripts.
When recording a video for the user or as a proof of work, it is best to create a code snippet and execute it with run-code.
It allows inserting appropriate pauses between the actions and annotating the video. There are new Playwright APIs for that.
1) Perform scenario using CLI and take note of all locators and actions. You'll need those locators to request their bounding boxes for highlight.
2) Create a file with the intended script for video (below). Use pressSequentially w/ delay for nice typing, make reasonable pauses.
3) Use playwright-cli run-code --filename your-script.js
**Important**: Overlays are `pointer-events: none` â€” they do not interfere with page interactions. You can safely keep sticky overlays visible while clicking, filling, or performing any actions on the page.
```js
async page => {
  await page.screencast.start({ path: 'video.webm', size: { width: 1280, height: 800 } });
  await page.goto('https://demo.playwright.dev/todomvc');
  // Show a chapter card â€” blurs the page and shows a dialog.
  // Blocks until duration expires, then auto-removes.
  // Use this for simple use cases, but always feel free to hand-craft your own beautiful
  // overlay via await page.screencast.showOverlay().
  await page.screencast.showChapter('Adding Todo Items', {
    description: 'We will add several items to the todo list.',
    duration: 2000,
  });
  // Perform action
  await page.getByRole('textbox', { name: 'What needs to be done?' }).pressSequentially('Walk the dog', { delay: 60 });
  await page.getByRole('textbox', { name: 'What needs to be done?' }).press('Enter');
  await page.waitForTimeout(1000);
  // Show next chapter
  await page.screencast.showChapter('Verifying Results', {
    description: 'Checking the item appeared in the list.',
    duration: 2000,
  });
  // Add a sticky annotation that stays while you perform actions.
  // Overlays are pointer-events: none, so they won't block clicks.
  const annotation = await page.screencast.showOverlay(`
    <div style="position: absolute; top: 8px; right: 8px;
      padding: 6px 12px; background: rgba(0,0,0,0.7);
      border-radius: 8px; font-size: 13px; color: white;">
      âœ“ Item added successfully
    </div>
  `);
  // Perform more actions while the annotation is visible
  await page.getByRole('textbox', { name: 'What needs to be done?' }).pressSequentially('Buy groceries', { delay: 60 });
  await page.getByRole('textbox', { name: 'What needs to be done?' }).press('Enter');
  await page.waitForTimeout(1500);
  // Remove the annotation when done
  await annotation.dispose();
  // You can also highlight relevant locators and provide contextual annotations.
  const bounds = await page.getByText('Walk the dog').boundingBox();
  await page.screencast.showOverlay(`
    <div style="position: absolute;
      top: ${bounds.y}px;
      left: ${bounds.x}px;
      width: ${bounds.width}px;
      height: ${bounds.height}px;
      border: 1px solid red;">
    </div>
    <div style="position: absolute;
      top: ${bounds.y + bounds.height + 5}px;
      left: ${bounds.x + bounds.width / 2}px;
      transform: translateX(-50%);
      padding: 6px;
      background: #808080;
      border-radius: 10px;
      font-size: 14px;
      color: white;">Check it out, it is right above this text
    </div>
  `, { duration: 2000 });
  await page.screencast.stop();
}
```
Embrace creativity, overlays are powerful.
### Overlay API Summary
| Method | Use Case |
|--------|----------|
| `page.screencast.showChapter(title, { description?, duration?, styleSheet? })` | Full-screen chapter card with blurred backdrop â€” ideal for section transitions |
| `page.screencast.showOverlay(html, { duration? })` | Custom HTML overlay â€” use for callouts, labels, highlights |
| `disposable.dispose()` | Remove a sticky overlay added without duration |
| `page.screencast.hideOverlays()` / `page.screencast.showOverlays()` | Temporarily hide/show all overlays |
## Tracing vs Video
| Feature | Video | Tracing |
|---------|-------|---------|
| Output | WebM file | Trace file (viewable in Trace Viewer) |
| Shows | Visual recording | DOM snapshots, network, console, actions |
| Use case | Demos, documentation | Debugging, analysis |
| Size | Larger | Smaller |
## Limitations
- Recording adds slight overhead to automation
- Large recordings can consume significant disk space
scripts/node_modules/playwright-core/lib/tools/dashboard/appIcon.png
scripts/node_modules/playwright-core/lib/tools/trace/SKILL.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,171 @@
---
name: playwright-trace
description: Inspect Playwright trace files from the command line â€” list actions, view requests, console, errors, snapshots and screenshots.
allowed-tools: Bash(npx:*)
---
# Playwright Trace CLI
Inspect `.zip` trace files produced by Playwright tests without opening a browser.
## Workflow
1. Start with `trace open <trace.zip>` to extract the trace and see its metadata.
2. Use `trace actions` to see all actions with their action IDs.
3. Use `trace action <action-id>` to drill into a specific action â€” see parameters, logs, source location, and available snapshots.
4. Use `trace requests`, `trace console`, or `trace errors` for cross-cutting views.
5. Use `trace snapshot <action-id>` to get the DOM snapshot, or run a browser command against it.
6. Use `trace close` to remove the extracted trace data when done.
All commands after `open` operate on the currently opened trace â€” no need to pass the trace file again. Opening a new trace replaces the previous one.
## Commands
### Open a trace
```bash
# Extract trace and show metadata: browser, viewport, duration, action/error counts
npx playwright trace open <trace.zip>
```
### Close a trace
```bash
# Remove extracted trace data
npx playwright trace close
```
### Actions
```bash
# List all actions as a tree with action IDs and timing
npx playwright trace actions
# Filter by action title (regex, case-insensitive)
npx playwright trace actions --grep "click"
# Only failed actions
npx playwright trace actions --errors-only
```
### Action details
```bash
# Show full details for one action: params, result, logs, source, snapshots
npx playwright trace action <action-id>
```
The `action` command displays available snapshot phases (before, input, after) and the exact command to extract them.
### Requests
```bash
# All network requests: method, status, URL, duration, size
npx playwright trace requests
# Filter by URL pattern
npx playwright trace requests --grep "api"
# Filter by HTTP method
npx playwright trace requests --method POST
# Only failed requests (status >= 400)
npx playwright trace requests --failed
```
### Request details
```bash
# Show full details for one request: headers, body, security
npx playwright trace request <request-id>
```
### Console
```bash
# All console messages and stdout/stderr
npx playwright trace console
# Only errors
npx playwright trace console --errors-only
# Only browser console (no stdout/stderr)
npx playwright trace console --browser
# Only stdout/stderr (no browser console)
npx playwright trace console --stdio
```
### Errors
```bash
# All errors with stack traces and associated actions
npx playwright trace errors
```
### Snapshots
The `snapshot` command loads the DOM snapshot for an action into a headless browser and runs a single browser command against it. Without a browser command, it returns the accessibility snapshot.
```bash
# Get the accessibility snapshot (default)
npx playwright trace snapshot <action-id>
# Use a specific phase
npx playwright trace snapshot <action-id> --name before
# Run eval to query the DOM
npx playwright trace snapshot <action-id> -- eval "document.title"
npx playwright trace snapshot <action-id> -- eval "document.querySelector('#error').textContent"
# Eval on a specific element ref (from the snapshot)
npx playwright trace snapshot <action-id> -- eval "el => el.getAttribute('data-testid')" e5
# Take a screenshot of the snapshot
npx playwright trace snapshot <action-id> -- screenshot
# Redirect output to a file
npx playwright trace snapshot <action-id> -- eval "document.body.outerHTML" --filename=page.html
npx playwright trace snapshot <action-id> -- screenshot --filename=screenshot.png
```
Only three browser commands are useful on a frozen snapshot: `snapshot`, `eval`, and `screenshot`.
### Attachments
```bash
# List all trace attachments
npx playwright trace attachments
# Extract an attachment by its number
npx playwright trace attachment 1
npx playwright trace attachment 1 -o out.png
```
## Typical investigation
```bash
# 1. Open the trace and see what's inside
npx playwright trace open test-results/my-test/trace.zip
# 2. What actions ran?
npx playwright trace actions
# 3. Which action failed?
npx playwright trace actions --errors-only
# 4. What went wrong?
npx playwright trace action 12
# 5. What did the page look like at that moment?
npx playwright trace snapshot 12
# 6. Query the DOM for more detail
npx playwright trace snapshot 12 -- eval "document.querySelector('.error-message').textContent"
# 7. Any relevant network failures?
npx playwright trace requests --failed
# 8. Any console errors?
npx playwright trace console --errors-only
```
scripts/node_modules/playwright-core/lib/tools/utils/extension.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,78 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var extension_exports = {};
__export(extension_exports, {
  isPlaywrightExtensionInstalled: () => isPlaywrightExtensionInstalled,
  playwrightExtensionId: () => playwrightExtensionId,
  playwrightExtensionInstallUrl: () => playwrightExtensionInstallUrl
});
module.exports = __toCommonJS(extension_exports);
var import_fs = __toESM(require("fs"));
var import_path = __toESM(require("path"));
const playwrightExtensionId = "mmlmfjhmonkocbjadbfplnigmagldckm";
const playwrightExtensionInstallUrl = `https://chromewebstore.google.com/detail/playwright-extension/${playwrightExtensionId}`;
async function isPlaywrightExtensionInstalled(userDataDir) {
  let entries;
  try {
    entries = await import_fs.default.promises.readdir(userDataDir);
  } catch {
    return false;
  }
  for (const entry of entries) {
    if (entry !== "Default" && !entry.startsWith("Profile "))
      continue;
    if (await isExtensionInstalledInProfile(import_path.default.join(userDataDir, entry)))
      return true;
  }
  return false;
}
async function isExtensionInstalledInProfile(profileDir) {
  if (await pathExists(import_path.default.join(profileDir, "Extensions", playwrightExtensionId)))
    return true;
  try {
    const prefs = await import_fs.default.promises.readFile(import_path.default.join(profileDir, "Preferences"), "utf-8");
    return prefs.includes(`"${playwrightExtensionId}"`);
  } catch {
    return false;
  }
}
async function pathExists(p) {
  try {
    await import_fs.default.promises.access(p);
    return true;
  } catch {
    return false;
  }
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  isPlaywrightExtensionInstalled,
  playwrightExtensionId,
  playwrightExtensionInstallUrl
});
scripts/node_modules/playwright-core/lib/tools/utils/socketConnection.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,108 @@
"use strict";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var socketConnection_exports = {};
__export(socketConnection_exports, {
  SocketConnection: () => SocketConnection,
  compareSemver: () => compareSemver
});
module.exports = __toCommonJS(socketConnection_exports);
class SocketConnection {
  constructor(socket) {
    this._pendingBuffers = [];
    this._socket = socket;
    socket.on("data", (buffer) => this._onData(buffer));
    socket.on("close", () => {
      this.onclose?.();
    });
    socket.on("error", (e) => console.error(`error: ${e.message}`));
  }
  async send(message) {
    await new Promise((resolve, reject) => {
      this._socket.write(`${JSON.stringify(message)}
`, (error) => {
        if (error)
          reject(error);
        else
          resolve(void 0);
      });
    });
  }
  close() {
    this._socket.destroy();
  }
  _onData(buffer) {
    let end = buffer.indexOf("\n");
    if (end === -1) {
      this._pendingBuffers.push(buffer);
      return;
    }
    this._pendingBuffers.push(buffer.slice(0, end));
    const message = Buffer.concat(this._pendingBuffers).toString();
    this._dispatchMessage(message);
    let start = end + 1;
    end = buffer.indexOf("\n", start);
    while (end !== -1) {
      const message2 = buffer.toString(void 0, start, end);
      this._dispatchMessage(message2);
      start = end + 1;
      end = buffer.indexOf("\n", start);
    }
    this._pendingBuffers = [buffer.slice(start)];
  }
  _dispatchMessage(message) {
    try {
      this.onmessage?.(JSON.parse(message));
    } catch (e) {
      console.error("failed to dispatch message", e);
    }
  }
}
function compareSemver(a, b) {
  const aBase = a.replace(/-.*$/, "");
  const bBase = b.replace(/-.*$/, "");
  const aParts = aBase.split(".").map(Number);
  const bParts = bBase.split(".").map(Number);
  for (let i = 0; i < 3; i++) {
    if (aParts[i] > bParts[i])
      return 1;
    if (aParts[i] < bParts[i])
      return -1;
  }
  const aTimestamp = parseSuffixTimestamp(a);
  const bTimestamp = parseSuffixTimestamp(b);
  if (aTimestamp > bTimestamp)
    return 1;
  if (aTimestamp < bTimestamp)
    return -1;
  return 0;
}
function parseSuffixTimestamp(version) {
  const match = version.match(/^\d+\.\d+\.\d+-(?:alpha|beta)-(.+)$/);
  if (!match)
    return Infinity;
  const suffix = match[1];
  if (/^\d{4}-\d{2}-\d{2}$/.test(suffix))
    return new Date(suffix).getTime();
  return Number(suffix);
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  SocketConnection,
  compareSemver
});
scripts/node_modules/playwright-core/lib/utilsBundle.js
¶Ô±ÈÐÂÎļþ
ÎļþÌ«´ó
scripts/node_modules/playwright-core/lib/utilsBundle.js.LICENSE
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,2056 @@
packages/playwright-core/lib/utilsBundle.js
THIRD-PARTY SOFTWARE NOTICES AND INFORMATION
The following npm packages are inlined into this bundle.
- @hono/node-server@1.19.11 (https://github.com/honojs/node-server)
- @modelcontextprotocol/sdk@1.29.0 (https://github.com/modelcontextprotocol/typescript-sdk)
- agent-base@7.1.4 (https://github.com/TooTallNate/proxy-agents)
- ajv-formats@3.0.1 (https://github.com/ajv-validator/ajv-formats)
- ajv@8.18.0 (https://github.com/ajv-validator/ajv)
- ansi-colors@4.1.3 (https://github.com/doowb/ansi-colors)
- anymatch@3.1.3 (https://github.com/micromatch/anymatch)
- balanced-match@1.0.2 (https://github.com/juliangruber/balanced-match)
- binary-extensions@2.3.0 (https://github.com/sindresorhus/binary-extensions)
- brace-expansion@1.1.12 (https://github.com/juliangruber/brace-expansion)
- braces@3.0.3 (https://github.com/micromatch/braces)
- buffer-crc32@0.2.13 (https://github.com/brianloveswords/buffer-crc32)
- buffer-from@1.1.2 (https://github.com/LinusU/buffer-from)
- bytes@3.1.2 (https://github.com/visionmedia/bytes.js)
- chokidar@3.6.0 (https://github.com/paulmillr/chokidar)
- colors@1.4.0 (https://github.com/Marak/colors.js)
- commander@13.1.0 (https://github.com/tj/commander.js)
- concat-map@0.0.1 (https://github.com/substack/node-concat-map)
- content-type@1.0.5 (https://github.com/jshttp/content-type)
- cross-spawn@7.0.6 (https://github.com/moxystudio/node-cross-spawn)
- debug@4.4.3 (https://github.com/debug-js/debug)
- define-lazy-prop@2.0.0 (https://github.com/sindresorhus/define-lazy-prop)
- diff@8.0.4 (https://github.com/kpdecker/jsdiff)
- dotenv@16.6.1 (https://github.com/motdotla/dotenv)
- end-of-stream@1.4.5 (https://github.com/mafintosh/end-of-stream)
- enquirer@2.3.6 (https://github.com/enquirer/enquirer)
- eventsource-parser@3.0.6 (https://github.com/rexxars/eventsource-parser)
- eventsource@3.0.7 (git://git@github.com/EventSource/eventsource)
- fast-deep-equal@3.1.3 (https://github.com/epoberezkin/fast-deep-equal)
- fast-uri@3.1.2 (https://github.com/fastify/fast-uri)
- fill-range@7.1.1 (https://github.com/jonschlinkert/fill-range)
- get-east-asian-width@1.3.0 (https://github.com/sindresorhus/get-east-asian-width)
- get-stream@5.2.0 (https://github.com/sindresorhus/get-stream)
- glob-parent@5.1.2 (https://github.com/gulpjs/glob-parent)
- graceful-fs@4.2.10 (https://github.com/isaacs/node-graceful-fs)
- has-flag@4.0.0 (https://github.com/sindresorhus/has-flag)
- https-proxy-agent@7.0.6 (https://github.com/TooTallNate/proxy-agents)
- ini@6.0.0 (https://github.com/npm/ini)
- ip-address@10.2.0 (https://github.com/beaugunderson/ip-address)
- is-binary-path@2.1.0 (https://github.com/sindresorhus/is-binary-path)
- is-docker@2.2.1 (https://github.com/sindresorhus/is-docker)
- is-extglob@2.1.1 (https://github.com/jonschlinkert/is-extglob)
- is-glob@4.0.3 (https://github.com/micromatch/is-glob)
- is-number@7.0.0 (https://github.com/jonschlinkert/is-number)
- is-wsl@2.2.0 (https://github.com/sindresorhus/is-wsl)
- isexe@2.0.0 (https://github.com/isaacs/isexe)
- jpeg-js@0.4.4 (https://github.com/eugeneware/jpeg-js)
- json-schema-traverse@1.0.0 (https://github.com/epoberezkin/json-schema-traverse)
- json5@2.2.3 (https://github.com/json5/json5)
- mime@3.0.0 (https://github.com/broofa/mime)
- minimatch@3.1.5 (https://github.com/isaacs/minimatch)
- ms@2.1.3 (https://github.com/vercel/ms)
- normalize-path@3.0.0 (https://github.com/jonschlinkert/normalize-path)
- once@1.4.0 (https://github.com/isaacs/once)
- open@8.4.0 (https://github.com/sindresorhus/open)
- path-key@3.1.1 (https://github.com/sindresorhus/path-key)
- pend@1.2.0 (https://github.com/andrewrk/node-pend)
- picomatch@2.3.2 (https://github.com/micromatch/picomatch)
- pkce-challenge@5.0.0 (https://github.com/crouchcd/pkce-challenge)
- pngjs@6.0.0 (https://github.com/lukeapage/pngjs)
- progress@2.0.3 (https://github.com/visionmedia/node-progress)
- proxy-from-env@2.0.0 (https://github.com/Rob--W/proxy-from-env)
- pump@3.0.3 (https://github.com/mafintosh/pump)
- readdirp@3.6.0 (https://github.com/paulmillr/readdirp)
- retry@0.12.0 (https://github.com/tim-kos/node-retry)
- shebang-command@2.0.0 (https://github.com/kevva/shebang-command)
- shebang-regex@3.0.0 (https://github.com/sindresorhus/shebang-regex)
- signal-exit@3.0.7 (https://github.com/tapjs/signal-exit)
- smart-buffer@4.2.0 (https://github.com/JoshGlazebrook/smart-buffer)
- socks-proxy-agent@8.0.5 (https://github.com/TooTallNate/proxy-agents)
- socks@2.8.7 (https://github.com/JoshGlazebrook/socks)
- source-map-support@0.5.21 (https://github.com/evanw/node-source-map-support)
- source-map@0.6.1 (https://github.com/mozilla/source-map)
- supports-color@8.1.1 (https://github.com/chalk/supports-color)
- to-regex-range@5.0.1 (https://github.com/micromatch/to-regex-range)
- which@2.0.2 (https://github.com/isaacs/node-which)
- wrappy@1.0.2 (https://github.com/npm/wrappy)
- ws@8.17.1 (https://github.com/websockets/ws)
- yaml@2.8.3 (https://github.com/eemeli/yaml)
- yauzl@3.3.2 (https://github.com/thejoshwolfe/yauzl)
- yazl@2.5.1 (https://github.com/thejoshwolfe/yazl)
- zod-to-json-schema@3.25.1 (https://github.com/StefanTerdell/zod-to-json-schema)
- zod@4.3.6 (https://github.com/colinhacks/zod)
%% @hono/node-server@1.19.11 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2022 - present, Yusuke Wada and Hono contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF @hono/node-server@1.19.11 NOTICES AND INFORMATION
%% @modelcontextprotocol/sdk@1.29.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2024 Anthropic, PBC
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF @modelcontextprotocol/sdk@1.29.0 NOTICES AND INFORMATION
%% agent-base@7.1.4 NOTICES AND INFORMATION BEGIN HERE
=========================================
(The MIT License)
Copyright (c) 2013 Nathan Rajlich <nathan@tootallnate.net>
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF agent-base@7.1.4 NOTICES AND INFORMATION
%% ajv-formats@3.0.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2020 Evgeny Poberezkin
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF ajv-formats@3.0.1 NOTICES AND INFORMATION
%% ajv@8.18.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2015-2021 Evgeny Poberezkin
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF ajv@8.18.0 NOTICES AND INFORMATION
%% ansi-colors@4.1.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2015-present, Brian Woodward.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF ansi-colors@4.1.3 NOTICES AND INFORMATION
%% anymatch@3.1.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) 2019 Elan Shanker, Paul Miller (https://paulmillr.com)
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF anymatch@3.1.3 NOTICES AND INFORMATION
%% balanced-match@1.0.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
(MIT)
Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF balanced-match@1.0.2 NOTICES AND INFORMATION
%% binary-extensions@2.3.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
Copyright (c) Paul Miller (https://paulmillr.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF binary-extensions@2.3.0 NOTICES AND INFORMATION
%% brace-expansion@1.1.12 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2013 Julian Gruber <julian@juliangruber.com>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF brace-expansion@1.1.12 NOTICES AND INFORMATION
%% braces@3.0.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF braces@3.0.3 NOTICES AND INFORMATION
%% buffer-crc32@0.2.13 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License
Copyright (c) 2013 Brian J. Brennan
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF buffer-crc32@0.2.13 NOTICES AND INFORMATION
%% buffer-from@1.1.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2016, 2018 Linus Unnebäck
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF buffer-from@1.1.2 NOTICES AND INFORMATION
%% bytes@3.1.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
(The MIT License)
Copyright (c) 2012-2014 TJ Holowaychuk <tj@vision-media.ca>
Copyright (c) 2015 Jed Watson <jed.watson@me.com>
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF bytes@3.1.2 NOTICES AND INFORMATION
%% chokidar@3.6.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2012-2019 Paul Miller (https://paulmillr.com), Elan Shanker
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the â€œSoftware”), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED â€œAS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF chokidar@3.6.0 NOTICES AND INFORMATION
%% colors@1.4.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Original Library
  - Copyright (c) Marak Squires
Additional Functionality
 - Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF colors@1.4.0 NOTICES AND INFORMATION
%% commander@13.1.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
(The MIT License)
Copyright (c) 2011 TJ Holowaychuk <tj@vision-media.ca>
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF commander@13.1.0 NOTICES AND INFORMATION
%% concat-map@0.0.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
This software is released under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF concat-map@0.0.1 NOTICES AND INFORMATION
%% content-type@1.0.5 NOTICES AND INFORMATION BEGIN HERE
=========================================
(The MIT License)
Copyright (c) 2015 Douglas Christopher Wilson
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF content-type@1.0.5 NOTICES AND INFORMATION
%% cross-spawn@7.0.6 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2018 Made With MOXY Lda <hello@moxy.studio>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF cross-spawn@7.0.6 NOTICES AND INFORMATION
%% debug@4.4.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
(The MIT License)
Copyright (c) 2014-2017 TJ Holowaychuk <tj@vision-media.ca>
Copyright (c) 2018-2021 Josh Junon
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the 'Software'), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial
portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF debug@4.4.3 NOTICES AND INFORMATION
%% define-lazy-prop@2.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF define-lazy-prop@2.0.0 NOTICES AND INFORMATION
%% diff@8.0.4 NOTICES AND INFORMATION BEGIN HERE
=========================================
BSD 3-Clause License
Copyright (c) 2009-2015, Kevin Decker <kpdecker@gmail.com>
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
   list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
   this list of conditions and the following disclaimer in the documentation
   and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its
   contributors may be used to endorse or promote products derived from
   this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
=========================================
END OF diff@8.0.4 NOTICES AND INFORMATION
%% dotenv@16.6.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
Copyright (c) 2015, Scott Motte
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this
  list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
  this list of conditions and the following disclaimer in the documentation
  and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
=========================================
END OF dotenv@16.6.1 NOTICES AND INFORMATION
%% end-of-stream@1.4.5 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014 Mathias Buus
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF end-of-stream@1.4.5 NOTICES AND INFORMATION
%% enquirer@2.3.6 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2016-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF enquirer@2.3.6 NOTICES AND INFORMATION
%% eventsource-parser@3.0.6 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2025 Espen Hovlandsdal <espen@hovlandsdal.com>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF eventsource-parser@3.0.6 NOTICES AND INFORMATION
%% eventsource@3.0.7 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License
Copyright (c) EventSource GitHub organisation
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF eventsource@3.0.7 NOTICES AND INFORMATION
%% fast-deep-equal@3.1.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2017 Evgeny Poberezkin
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF fast-deep-equal@3.1.3 NOTICES AND INFORMATION
%% fast-uri@3.1.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
Copyright (c) 2011-2021, Gary Court until https://github.com/garycourt/uri-js/commit/a1acf730b4bba3f1097c9f52e7d9d3aba8cdcaae
Copyright (c) 2021-present The Fastify team <https://github.com/fastify/fastify#team>
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
    * Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in the
      documentation and/or other materials provided with the distribution.
    * The names of any contributors may not be used to endorse or promote
      products derived from this software without specific prior written
      permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
                                  *   *   *
The complete list of contributors can be found at:
- https://github.com/garycourt/uri-js/graphs/contributors
=========================================
END OF fast-uri@3.1.2 NOTICES AND INFORMATION
%% fill-range@7.1.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF fill-range@7.1.1 NOTICES AND INFORMATION
%% get-east-asian-width@1.3.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF get-east-asian-width@1.3.0 NOTICES AND INFORMATION
%% get-stream@5.2.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF get-stream@5.2.0 NOTICES AND INFORMATION
%% glob-parent@5.1.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) 2015, 2019 Elan Shanker
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF glob-parent@5.1.2 NOTICES AND INFORMATION
%% graceful-fs@4.2.10 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) 2011-2022 Isaac Z. Schlueter, Ben Noordhuis, and Contributors
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF graceful-fs@4.2.10 NOTICES AND INFORMATION
%% has-flag@4.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF has-flag@4.0.0 NOTICES AND INFORMATION
%% https-proxy-agent@7.0.6 NOTICES AND INFORMATION BEGIN HERE
=========================================
(The MIT License)
Copyright (c) 2013 Nathan Rajlich <nathan@tootallnate.net>
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF https-proxy-agent@7.0.6 NOTICES AND INFORMATION
%% ini@6.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) Isaac Z. Schlueter and Contributors
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF ini@6.0.0 NOTICES AND INFORMATION
%% ip-address@10.2.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
Copyright (C) 2011 by Beau Gunderson
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF ip-address@10.2.0 NOTICES AND INFORMATION
%% is-binary-path@2.1.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2019 Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com), Paul Miller (https://paulmillr.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF is-binary-path@2.1.0 NOTICES AND INFORMATION
%% is-docker@2.2.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF is-docker@2.2.1 NOTICES AND INFORMATION
%% is-extglob@2.1.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-2016, Jon Schlinkert
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF is-extglob@2.1.1 NOTICES AND INFORMATION
%% is-glob@4.0.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-2017, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF is-glob@4.0.3 NOTICES AND INFORMATION
%% is-number@7.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF is-number@7.0.0 NOTICES AND INFORMATION
%% is-wsl@2.2.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF is-wsl@2.2.0 NOTICES AND INFORMATION
%% isexe@2.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) Isaac Z. Schlueter and Contributors
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF isexe@2.0.0 NOTICES AND INFORMATION
%% jpeg-js@0.4.4 NOTICES AND INFORMATION BEGIN HERE
=========================================
Copyright (c) 2014, Eugene Ware
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.
3. Neither the name of Eugene Ware nor the names of its contributors
   may be used to endorse or promote products derived from this software
   without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY EUGENE WARE ''AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL EUGENE WARE BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
=========================================
END OF jpeg-js@0.4.4 NOTICES AND INFORMATION
%% json-schema-traverse@1.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2017 Evgeny Poberezkin
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF json-schema-traverse@1.0.0 NOTICES AND INFORMATION
%% json5@2.2.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2012-2018 Aseem Kishore, and [others].
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
[others]: https://github.com/json5/json5/contributors
=========================================
END OF json5@2.2.3 NOTICES AND INFORMATION
%% mime@3.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2010 Benjamin Thomas, Robert Kieffer
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF mime@3.0.0 NOTICES AND INFORMATION
%% minimatch@3.1.5 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) Isaac Z. Schlueter and Contributors
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF minimatch@3.1.5 NOTICES AND INFORMATION
%% ms@2.1.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2020 Vercel, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF ms@2.1.3 NOTICES AND INFORMATION
%% normalize-path@3.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014-2018, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF normalize-path@3.0.0 NOTICES AND INFORMATION
%% once@1.4.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) Isaac Z. Schlueter and Contributors
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF once@1.4.0 NOTICES AND INFORMATION
%% open@8.4.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF open@8.4.0 NOTICES AND INFORMATION
%% path-key@3.1.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF path-key@3.1.1 NOTICES AND INFORMATION
%% pend@1.2.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (Expat)
Copyright (c) 2014 Andrew Kelley
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation files
(the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge,
publish, distribute, sublicense, and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF pend@1.2.0 NOTICES AND INFORMATION
%% picomatch@2.3.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2017-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF picomatch@2.3.2 NOTICES AND INFORMATION
%% pkce-challenge@5.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2019
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF pkce-challenge@5.0.0 NOTICES AND INFORMATION
%% pngjs@6.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
pngjs2 original work Copyright (c) 2015 Luke Page & Original Contributors
pngjs derived work Copyright (c) 2012 Kuba Niegowski
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF pngjs@6.0.0 NOTICES AND INFORMATION
%% progress@2.0.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
(The MIT License)
Copyright (c) 2017 TJ Holowaychuk <tj@vision-media.ca>
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF progress@2.0.3 NOTICES AND INFORMATION
%% proxy-from-env@2.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License
Copyright (C) 2016-2018 Rob Wu <rob@robwu.nl>
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF proxy-from-env@2.0.0 NOTICES AND INFORMATION
%% pump@3.0.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014 Mathias Buus
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF pump@3.0.3 NOTICES AND INFORMATION
%% readdirp@3.6.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2012-2019 Thorsten Lorenz, Paul Miller (https://paulmillr.com)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF readdirp@3.6.0 NOTICES AND INFORMATION
%% retry@0.12.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
Copyright (c) 2011:
Tim Koschützki (tim@debuggable.com)
Felix Geisendörfer (felix@debuggable.com)
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
 in the Software without restriction, including without limitation the rights
 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 copies of the Software, and to permit persons to whom the Software is
 furnished to do so, subject to the following conditions:
 The above copyright notice and this permission notice shall be included in
 all copies or substantial portions of the Software.
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 THE SOFTWARE.
=========================================
END OF retry@0.12.0 NOTICES AND INFORMATION
%% shebang-command@2.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Kevin MÃ¥rtensson <kevinmartensson@gmail.com> (github.com/kevva)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF shebang-command@2.0.0 NOTICES AND INFORMATION
%% shebang-regex@3.0.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF shebang-regex@3.0.0 NOTICES AND INFORMATION
%% signal-exit@3.0.7 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) 2015, Contributors
Permission to use, copy, modify, and/or distribute this software
for any purpose with or without fee is hereby granted, provided
that the above copyright notice and this permission notice
appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE
LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF signal-exit@3.0.7 NOTICES AND INFORMATION
%% smart-buffer@4.2.0 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2013-2017 Josh Glazebrook
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF smart-buffer@4.2.0 NOTICES AND INFORMATION
%% socks-proxy-agent@8.0.5 NOTICES AND INFORMATION BEGIN HERE
=========================================
(The MIT License)
Copyright (c) 2013 Nathan Rajlich <nathan@tootallnate.net>
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF socks-proxy-agent@8.0.5 NOTICES AND INFORMATION
%% socks@2.8.7 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2013 Josh Glazebrook
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF socks@2.8.7 NOTICES AND INFORMATION
%% source-map-support@0.5.21 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014 Evan Wallace
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF source-map-support@0.5.21 NOTICES AND INFORMATION
%% source-map@0.6.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
Copyright (c) 2009-2011, Mozilla Foundation and contributors
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this
  list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
  this list of conditions and the following disclaimer in the documentation
  and/or other materials provided with the distribution.
* Neither the names of the Mozilla Foundation nor the names of project
  contributors may be used to endorse or promote products derived from this
  software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
=========================================
END OF source-map@0.6.1 NOTICES AND INFORMATION
%% supports-color@8.1.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF supports-color@8.1.1 NOTICES AND INFORMATION
%% to-regex-range@5.0.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2015-present, Jon Schlinkert.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=========================================
END OF to-regex-range@5.0.1 NOTICES AND INFORMATION
%% which@2.0.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) Isaac Z. Schlueter and Contributors
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF which@2.0.2 NOTICES AND INFORMATION
%% wrappy@1.0.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
The ISC License
Copyright (c) Isaac Z. Schlueter and Contributors
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF wrappy@1.0.2 NOTICES AND INFORMATION
%% ws@8.17.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
Copyright (c) 2011 Einar Otto Stangvik <einaros@gmail.com>
Copyright (c) 2013 Arnout Kazemier and contributors
Copyright (c) 2016 Luigi Pinca and contributors
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=========================================
END OF ws@8.17.1 NOTICES AND INFORMATION
%% yaml@2.8.3 NOTICES AND INFORMATION BEGIN HERE
=========================================
Copyright Eemeli Aro <eemeli@gmail.com>
Permission to use, copy, modify, and/or distribute this software for any purpose
with or without fee is hereby granted, provided that the above copyright notice
and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
THIS SOFTWARE.
=========================================
END OF yaml@2.8.3 NOTICES AND INFORMATION
%% yauzl@3.3.2 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014 Josh Wolfe
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF yauzl@3.3.2 NOTICES AND INFORMATION
%% yazl@2.5.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
The MIT License (MIT)
Copyright (c) 2014 Josh Wolfe
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF yazl@2.5.1 NOTICES AND INFORMATION
%% zod-to-json-schema@3.25.1 NOTICES AND INFORMATION BEGIN HERE
=========================================
ISC License
Copyright (c) 2020, Stefan Terdell
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
=========================================
END OF zod-to-json-schema@3.25.1 NOTICES AND INFORMATION
%% zod@4.3.6 NOTICES AND INFORMATION BEGIN HERE
=========================================
MIT License
Copyright (c) 2025 Colin McDonnell
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=========================================
END OF zod@4.3.6 NOTICES AND INFORMATION
SUMMARY
=========================================
Total Packages: 83
=========================================
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/codicon-DCmgc-ay.ttf
Binary files differ
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/firefox-1bWoP6pv.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:x="http://www.w3.org/1999/xlink" viewBox="0 0 51500 51500"><radialGradient id="b" cx="87.4%" cy="-12.9%" r="128%" gradientTransform="matrix(.8 0 0 1 .18 .13)"><stop offset=".13" stop-color="#ffbd4f"/><stop offset=".28" stop-color="#ff980e"/><stop offset=".47" stop-color="#ff3750"/><stop offset=".78" stop-color="#eb0878"/><stop offset=".86" stop-color="#e50080"/></radialGradient><radialGradient id="d" cx="49%" cy="40%" r="128%" gradientTransform="matrix(.82 0 0 1 .09 0)"><stop offset=".3" stop-color="#960e18"/><stop offset=".35" stop-color="#b11927" stop-opacity=".74"/><stop offset=".43" stop-color="#db293d" stop-opacity=".34"/><stop offset=".5" stop-color="#f5334b" stop-opacity=".1"/><stop offset=".53" stop-color="#ff3750" stop-opacity="0"/></radialGradient><radialGradient id="e" cx="48%" cy="-12%" r="140%"><stop offset=".13" stop-color="#fff44f"/><stop offset=".53" stop-color="#ff980e"/></radialGradient><radialGradient id="f" cx="22.76%" cy="110.11%" r="100%"><stop offset=".35" stop-color="#3a8ee6"/><stop offset=".67" stop-color="#9059ff"/><stop offset="1" stop-color="#c139e6"/></radialGradient><radialGradient id="h" cx="52%" cy="33%" r="59%" gradientTransform="scale(.9 1)"><stop offset=".21" stop-color="#9059ff" stop-opacity="0"/><stop offset=".97" stop-color="#6e008b" stop-opacity=".6"/></radialGradient><radialGradient id="i" cx="210%" cy="-100%" r="290%"><stop offset=".1" stop-color="#ffe226"/><stop offset=".79" stop-color="#ff7139"/></radialGradient><radialGradient id="j" cx="84%" cy="-41%" r="180%"><stop offset=".11" stop-color="#fff44f"/><stop offset=".46" stop-color="#ff980e"/><stop offset=".72" stop-color="#ff3647"/><stop offset=".9" stop-color="#e31587"/></radialGradient><radialGradient id="k" cx="16.1%" cy="-18.6%" r="348.8%" gradientTransform="matrix(.10453 .46743 -.99452 .04913 -.05 -.26)"><stop offset="0" stop-color="#fff44f"/><stop offset=".3" stop-color="#ff980e"/><stop offset=".57" stop-color="#ff3647"/><stop offset=".74" stop-color="#e31587"/></radialGradient><radialGradient id="l" cx="18.9%" cy="-42.5%" r="238.4%"><stop offset=".14" stop-color="#fff44f"/><stop offset=".48" stop-color="#ff980e"/><stop offset=".66" stop-color="#ff3647"/><stop offset=".9" stop-color="#e31587"/></radialGradient><radialGradient id="m" cx="159.3%" cy="-44.72%" r="313.1%"><stop offset=".09" stop-color="#fff44f"/><stop offset=".63" stop-color="#ff980e"/></radialGradient><linearGradient id="a" x1="87.25%" x2="9.4%" y1="15.5%" y2="93.1%"><stop offset=".05" stop-color="#fff44f"/><stop offset=".37" stop-color="#ff980e"/><stop offset=".53" stop-color="#ff3647"/><stop offset=".7" stop-color="#e31587"/></linearGradient><linearGradient id="n" x1="80%" x2="18%" y1="14%" y2="84%"><stop offset=".17" stop-color="#fff44f" stop-opacity=".8"/><stop offset=".6" stop-color="#fff44f" stop-opacity="0"/></linearGradient><path id="c" d="M47870 16735c-1044-2512-3160-5224-4820-6082 1352 2650 2134 5310 2433 7294 0-6 2 5 4 22l4 26c2268 6147 1032 12398-748 16218-2754 5910-9420 11967-19857 11670-11276-318-21210-8683-23064-19643-338-1728 0-2605 170-4008-207 1080-286 1394-390 3315l-2 123c0 13270 10760 24030 24032 24030 11887 0 21756-8630 23690-19963l110-927c477-4120-53-8453-1560-12075z"/><path id="g" d="M25677 21050c-40 598-2150 2660-2890 2660-6834 0-7943 4133-7943 4133 303 3480 2726 6348 5660 7865 134 70 270 130 405 193a13277 13277 0 00706 289 10674 10674 0 003127 603c11978 562 14300-14320 5655-18640 2213-385 4510 505 5794 1407-2100-3672-6025-6150-10530-6150-285 0-564 24-844 43a12025 12025 0 00-6614 2549c366 310 780 724 1650 1583 1630 1606 5813 3270 5822 3465z"/><path fill="url(#a)" d="M47870 16735c-1044-2512-3160-5224-4820-6082 1352 2650 2134 5310 2433 7294l5 40c-2718-6773-7325-9505-11088-15452l-566-920a7372 7372 0 01-265-497 4370 4370 0 01-359-950 63 63 0 00-55-65 82 82 0 00-45 0l-12 7-17 10 10-14c-6037 3536-8085 10076-8274 13350a12025 12025 0 00-6614 2548 7136 7136 0 00-622-470 11134 11134 0 01-68-5873c-2468 1124-4390 2900-5785 4470h-10c-953-1206-886-5187-832-6018-10-52-710 363-802 425a17507 17507 0 00-2349 2012 21048 21048 0 00-2244 2692l-1 3v-3a20284 20284 0 00-3225 7280l-32 160a39700 39700 0 00-237 1500l-5 52a22907 22907 0 00-390 3316l-1 120c0 13270 10760 24030 24032 24030 11887 0 21756-8630 23690-19963l110-927c477-4120-53-8453-1560-12075zM20170 35545c113 53 220 112 334 164l16 10a12620 12620 0 01-350-174zm5506-14493zm19813-3060l-3-23 4 26z"/><use fill="url(#b)" x:href="#c"/><use fill="url(#d)" x:href="#c"/><path fill="url(#e)" d="M36192 19560l150 110a13070 13070 0 00-2231-2911C26640 9290 32150 563 33080 120l10-13c-6037 3535-8085 10076-8273 13348 280-20 560-43 844-43 4505 0 8430 2477 10530 6150z"/><use fill="url(#f)" x:href="#g"/><use fill="url(#h)" x:href="#g"/><path fill="url(#i)" d="M17083 15204a24404 24404 0 01498 330 11134 11134 0 01-67-5874c-2470 1125-4390 2900-5785 4470 115-3 3600-66 5354 1074z"/><path fill="url(#j)" d="M1822 26240c1855 10960 11788 19325 23063 19644 10437 296 17104-5762 19858-11670 1780-3820 3016-10070 748-16218v-2l-4-24c-2-17-4-28-4-22l5 40c853 5566-1980 10958-6405 14604l-13 30c-8625 7023-16878 4237-18550 3097a14410 14410 0 01-350-174c-5028-2403-7105-6984-6660-10913-4245 0-5693-3580-5693-3580s3812-2718 8836-355c4653 2190 9023 355 9023 354-10-195-4192-1860-5822-3465-872-860-1285-1272-1652-1583a7136 7136 0 00-622-470 28293 28293 0 00-498-330c-1753-1140-5240-1076-5355-1073h-10c-953-1207-886-5188-832-6020-10-50-710 363-802 426a17507 17507 0 00-2349 2012 21048 21048 0 00-2244 2692l-1 3v-3a20284 20284 0 00-3225 7280c-10 52-865 3784-444 5720z"/><path fill="url(#k)" d="M34110 16760a13070 13070 0 012231 2910l360 296c5450 5020 2594 12120 2380 12626 4426-3646 7258-9038 6405-14604-2716-6774-7323-9506-11086-15453l-566-920a7372 7372 0 01-265-497 4370 4370 0 01-359-950 63 63 0 00-55-65 82 82 0 00-45 0l-12 7-17 10c-930 443-6440 9170 1030 16640z"/><path fill="url(#l)" d="M36702 19965a4743 4743 0 00-360-295l-150-110c-1283-900-3580-1792-5794-1407 8644 4322 6323 19203-5655 18640a10674 10674 0 01-3127-603 13451 13451 0 01-706-289 9064 9064 0 01-405-193l16 10c1670 1140 9924 3925 18550-3097l13-30c213-506 3068-7606-2380-12626z"/><path fill="url(#m)" d="M14844 27844s1110-4133 7943-4133c740 0 2850-2062 2890-2660s-4370 1836-9023-354c-5024-2363-8836 354-8836 354s1448 3580 5693 3580c-445 3930 1632 8510 6660 10913 113 53 218 112 334 164-2935-1517-5358-4384-5660-7865z"/><path fill="url(#n)" d="M47870 16735c-1044-2512-3160-5224-4820-6082 1352 2650 2134 5310 2433 7294l5 40c-2718-6773-7325-9505-11088-15452l-566-920a7372 7372 0 01-265-497 4370 4370 0 01-359-950 63 63 0 00-55-65 82 82 0 00-45 0l-12 7-17 10 10-14c-6037 3536-8085 10076-8274 13350 280-20 560-43 845-43 4505 0 8430 2477 10530 6148-1284-900-3580-1792-5795-1407 8644 4322 6323 19203-5655 18640a10674 10674 0 01-3127-603 13451 13451 0 01-706-289 9064 9064 0 01-405-193l17 10a14410 14410 0 01-350-174c112 53 218 112 333 164-2935-1517-5358-4384-5660-7865 0 0 1108-4133 7942-4133 740 0 2850-2062 2890-2660-10-195-4190-1860-5822-3465-870-860-1285-1272-1650-1583a7136 7136 0 00-623-470 11134 11134 0 01-67-5873c-2470 1124-4390 2900-5785 4470h-10c-953-1207-886-5187-832-6020-10-50-710 363-802 426a17507 17507 0 00-2349 2012 21048 21048 0 00-2243 2692l-1 3v-3a20284 20284 0 00-3225 7280l-32 160a39787 39787 0 00-277 1515c-2 18 2-17 0 0a27956 27956 0 00-355 3353l-3 122c0 13270 10760 24030 24032 24030 11887 0 21756-8630 23690-19963l110-927c477-4120-53-8453-1560-12075zm-2384 1234l4 26v-2l-4-24z"/></svg>
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/firefox-beta-k3eOH_eK.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:x="http://www.w3.org/1999/xlink" viewBox="0 0 51500 51500"><radialGradient id="d" cx="87.4%" cy="-12.9%" r="128%" gradientTransform="matrix(.8 0 0 1 .18 .13)"><stop offset=".13" stop-color="#ffbd4f"/><stop offset=".28" stop-color="#ff980e"/><stop offset=".47" stop-color="#ff3750"/><stop offset=".78" stop-color="#eb0878"/><stop offset=".86" stop-color="#e50080"/></radialGradient><radialGradient id="f" cx="49%" cy="40%" r="128%" gradientTransform="matrix(.82 0 0 1 .09 0)"><stop offset=".3" stop-color="#960e18"/><stop offset=".35" stop-color="#b11927" stop-opacity=".74"/><stop offset=".43" stop-color="#db293d" stop-opacity=".34"/><stop offset=".5" stop-color="#f5334b" stop-opacity=".1"/><stop offset=".53" stop-color="#ff3750" stop-opacity="0"/></radialGradient><radialGradient id="g" cx="48%" cy="-12%" r="140%"><stop offset=".13" stop-color="#fff44f"/><stop offset=".53" stop-color="#ff980e"/></radialGradient><radialGradient id="h" cx="22.76%" cy="110.11%" r="100%"><stop offset=".35" stop-color="#3a8ee6"/><stop offset=".67" stop-color="#9059ff"/><stop offset="1" stop-color="#c139e6"/></radialGradient><radialGradient id="j" cx="52%" cy="33%" r="59%" gradientTransform="scale(.9 1)"><stop offset=".21" stop-color="#9059ff" stop-opacity="0"/><stop offset=".97" stop-color="#6e008b" stop-opacity=".6"/></radialGradient><radialGradient id="k" cx="210%" cy="-100%" r="290%"><stop offset=".1" stop-color="#ffe226"/><stop offset=".79" stop-color="#ff7139"/></radialGradient><radialGradient id="l" cx="84%" cy="-41%" r="180%"><stop offset=".11" stop-color="#fff44f"/><stop offset=".46" stop-color="#ff980e"/><stop offset=".72" stop-color="#ff3647"/><stop offset=".9" stop-color="#e31587"/></radialGradient><radialGradient id="m" cx="16.1%" cy="-18.6%" r="348.8%" gradientTransform="matrix(.10453 .46743 -.99452 .04913 -.05 -.26)"><stop offset="0" stop-color="#fff44f"/><stop offset=".3" stop-color="#ff980e"/><stop offset=".57" stop-color="#ff3647"/><stop offset=".74" stop-color="#e31587"/></radialGradient><radialGradient id="n" cx="18.9%" cy="-42.5%" r="238.4%"><stop offset=".14" stop-color="#fff44f"/><stop offset=".48" stop-color="#ff980e"/><stop offset=".66" stop-color="#ff3647"/><stop offset=".9" stop-color="#e31587"/></radialGradient><radialGradient id="o" cx="159.3%" cy="-44.72%" r="313.1%"><stop offset=".09" stop-color="#fff44f"/><stop offset=".63" stop-color="#ff980e"/></radialGradient><linearGradient id="c" x1="87.25%" x2="9.4%" y1="15.5%" y2="93.1%"><stop offset=".05" stop-color="#fff44f"/><stop offset=".37" stop-color="#ff980e"/><stop offset=".53" stop-color="#ff3647"/><stop offset=".7" stop-color="#e31587"/></linearGradient><linearGradient id="p" x1="80%" x2="18%" y1="14%" y2="84%"><stop offset=".17" stop-color="#fff44f" stop-opacity=".8"/><stop offset=".6" stop-color="#fff44f" stop-opacity="0"/></linearGradient><linearGradient id="b" x1="44605" x2="38527" y1="43446" y2="37691" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#054096" stop-opacity=".5"/><stop offset=".05" stop-color="#0f3d9c" stop-opacity=".44"/><stop offset=".26" stop-color="#2f35b1" stop-opacity=".25"/><stop offset=".47" stop-color="#462fbf" stop-opacity=".1"/><stop offset=".67" stop-color="#542bc8" stop-opacity=".03"/><stop offset=".86" stop-color="#592acb" stop-opacity="0"/></linearGradient><linearGradient id="q" x1="28037" x2="49981" y1="37793" y2="47078" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#54ffbd"/><stop offset="1" stop-color="#0df"/></linearGradient><path id="a" d="M45068 32763H27508a937 937 0 00-937 937v2810a7493 7493 0 007492 7493h9718a5620 5620 0 005619-5620v-2459c0-1404-1405-3160-4332-3160z"/><path id="e" d="M47870 16735c-1044-2512-3160-5224-4820-6082 1352 2650 2134 5310 2433 7294 0-6 2 5 4 22l4 26c2268 6147 1032 12398-748 16218-2754 5910-9420 11967-19857 11670-11276-318-21210-8683-23064-19643-338-1728 0-2605 170-4008-207 1080-286 1394-390 3315l-2 123c0 13270 10760 24030 24032 24030 11887 0 21756-8630 23690-19963l110-927c477-4120-53-8453-1560-12075z"/><path id="i" d="M25677 21050c-40 598-2150 2660-2890 2660-6834 0-7943 4133-7943 4133 303 3480 2726 6348 5660 7865 134 70 270 130 405 193a13277 13277 0 00706 289 10674 10674 0 003127 603c11978 562 14300-14320 5655-18640 2213-385 4510 505 5794 1407-2100-3672-6025-6150-10530-6150-285 0-564 24-844 43a12025 12025 0 00-6614 2549c366 310 780 724 1650 1583 1630 1606 5813 3270 5822 3465z"/><filter id="r" width="300%" height="300%" x="-1" y="-1"><feOffset dx="-400" dy="-400" in="SourceGraphic"/><feColorMatrix values=".01 0 0 0 0 0 0 0 0 0 0 .2 0 0 0 0 0 0 .2 0"/><feGaussianBlur stdDeviation="800"/><feBlend in="SourceGraphic"/></filter><use fill="#008787" x:href="#a"/><use fill="url(#b)" opacity=".9" x:href="#a"/><path fill="url(#c)" d="M47870 16735c-1044-2512-3160-5224-4820-6082 1352 2650 2134 5310 2433 7294l5 40c-2718-6773-7325-9505-11088-15452l-566-920a7372 7372 0 01-265-497 4370 4370 0 01-359-950 63 63 0 00-55-65 82 82 0 00-45 0l-12 7-17 10 10-14c-6037 3536-8085 10076-8274 13350a12025 12025 0 00-6614 2548 7136 7136 0 00-622-470 11134 11134 0 01-68-5873c-2468 1124-4390 2900-5785 4470h-10c-953-1206-886-5187-832-6018-10-52-710 363-802 425a17507 17507 0 00-2349 2012 21048 21048 0 00-2244 2692l-1 3v-3a20284 20284 0 00-3225 7280l-32 160a39700 39700 0 00-237 1500l-5 52a22907 22907 0 00-390 3316l-1 120c0 13270 10760 24030 24032 24030 11887 0 21756-8630 23690-19963l110-927c477-4120-53-8453-1560-12075zM20170 35545c113 53 220 112 334 164l16 10a12620 12620 0 01-350-174zm5506-14493zm19813-3060l-3-23 4 26z"/><use fill="url(#d)" x:href="#e"/><use fill="url(#f)" x:href="#e"/><path fill="url(#g)" d="M36192 19560l150 110a13070 13070 0 00-2231-2911C26640 9290 32150 563 33080 120l10-13c-6037 3535-8085 10076-8273 13348 280-20 560-43 844-43 4505 0 8430 2477 10530 6150z"/><use fill="url(#h)" x:href="#i"/><use fill="url(#j)" x:href="#i"/><path fill="url(#k)" d="M17083 15204a24404 24404 0 01498 330 11134 11134 0 01-67-5874c-2470 1125-4390 2900-5785 4470 115-3 3600-66 5354 1074z"/><path fill="url(#l)" d="M1822 26240c1855 10960 11788 19325 23063 19644 10437 296 17104-5762 19858-11670 1780-3820 3016-10070 748-16218v-2l-4-24c-2-17-4-28-4-22l5 40c853 5566-1980 10958-6405 14604l-13 30c-8625 7023-16878 4237-18550 3097a14410 14410 0 01-350-174c-5028-2403-7105-6984-6660-10913-4245 0-5693-3580-5693-3580s3812-2718 8836-355c4653 2190 9023 355 9023 354-10-195-4192-1860-5822-3465-872-860-1285-1272-1652-1583a7136 7136 0 00-622-470 28293 28293 0 00-498-330c-1753-1140-5240-1076-5355-1073h-10c-953-1207-886-5188-832-6020-10-50-710 363-802 426a17507 17507 0 00-2349 2012 21048 21048 0 00-2244 2692l-1 3v-3a20284 20284 0 00-3225 7280c-10 52-865 3784-444 5720z"/><path fill="url(#m)" d="M34110 16760a13070 13070 0 012231 2910l360 296c5450 5020 2594 12120 2380 12626 4426-3646 7258-9038 6405-14604-2716-6774-7323-9506-11086-15453l-566-920a7372 7372 0 01-265-497 4370 4370 0 01-359-950 63 63 0 00-55-65 82 82 0 00-45 0l-12 7-17 10c-930 443-6440 9170 1030 16640z"/><path fill="url(#n)" d="M36702 19965a4743 4743 0 00-360-295l-150-110c-1283-900-3580-1792-5794-1407 8644 4322 6323 19203-5655 18640a10674 10674 0 01-3127-603 13451 13451 0 01-706-289 9064 9064 0 01-405-193l16 10c1670 1140 9924 3925 18550-3097l13-30c213-506 3068-7606-2380-12626z"/><path fill="url(#o)" d="M14844 27844s1110-4133 7943-4133c740 0 2850-2062 2890-2660s-4370 1836-9023-354c-5024-2363-8836 354-8836 354s1448 3580 5693 3580c-445 3930 1632 8510 6660 10913 113 53 218 112 334 164-2935-1517-5358-4384-5660-7865z"/><path fill="url(#p)" d="M47870 16735c-1044-2512-3160-5224-4820-6082 1352 2650 2134 5310 2433 7294l5 40c-2718-6773-7325-9505-11088-15452l-566-920a7372 7372 0 01-265-497 4370 4370 0 01-359-950 63 63 0 00-55-65 82 82 0 00-45 0l-12 7-17 10 10-14c-6037 3536-8085 10076-8274 13350 280-20 560-43 845-43 4505 0 8430 2477 10530 6148-1284-900-3580-1792-5795-1407 8644 4322 6323 19203-5655 18640a10674 10674 0 01-3127-603 13451 13451 0 01-706-289 9064 9064 0 01-405-193l17 10a14410 14410 0 01-350-174c112 53 218 112 333 164-2935-1517-5358-4384-5660-7865 0 0 1108-4133 7942-4133 740 0 2850-2062 2890-2660-10-195-4190-1860-5822-3465-870-860-1285-1272-1650-1583a7136 7136 0 00-623-470 11134 11134 0 01-67-5873c-2470 1124-4390 2900-5785 4470h-10c-953-1207-886-5187-832-6020-10-50-710 363-802 426a17507 17507 0 00-2349 2012 21048 21048 0 00-2243 2692l-1 3v-3a20284 20284 0 00-3225 7280l-32 160a39787 39787 0 00-277 1515c-2 18 2-17 0 0a27956 27956 0 00-355 3353l-3 122c0 13270 10760 24030 24032 24030 11887 0 21756-8630 23690-19963l110-927c477-4120-53-8453-1560-12075zm-2384 1234l4 26v-2l-4-24z"/><path fill="url(#q)" d="M48463 36861H32320a6919 6919 0 00-6920 6919v3384a937 937 0 00937 936h16143a6919 6919 0 006920-6919v-5257a937 937 0 01-937 937z" filter="url(#r)"/><path fill="#20123a" d="M32624 42417a1026 1026 0 00535-943c0-834-580-1300-1610-1300h-1923v4650h1936c1030 0 1668-458 1668-1376 0-483-217-834-605-1030zm-2114-1447h1057c470 0 694 198 694 523 0 318-204 554-680 554h-1070zm1063 3044h-1063v-1160h1025c567 0 784 210 784 573s-255 586-746 586zm2515 810h3127v-853h-2230v-1057h2230v-847h-2230v-1047h2230v-847h-3127zm7355-4650h-3458v828h1293v3820h885v-3820h1280zm2407 0h-885l-1758 4650h924l305-847h1943l305 847h924zm-1114 2987l675-1847 668 1847z"/></svg>
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/firefox-nightly-Cp5nfeDT.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:x="http://www.w3.org/1999/xlink" viewBox="0 0 51500 51500"><radialGradient id="c" cx="-922719" cy="-981512" r="8080" gradientTransform="matrix(6.201 0 0 6.2 5764500 6090880)" x:href="#a"><stop offset=".11" stop-color="#3fe1b0"/><stop offset=".12" stop-color="#3bdcb3"/><stop offset=".25" stop-color="#1bb3d3"/><stop offset=".36" stop-color="#0799e6"/><stop offset=".42" stop-color="#0090ed"/><stop offset=".49" stop-color="#2482f1"/><stop offset=".64" stop-color="#7165fb"/><stop offset=".71" stop-color="#9059ff"/><stop offset=".8" stop-color="#7d49ed"/><stop offset=".86" stop-color="#7542e5"/></radialGradient><radialGradient id="e" cx="-925671" cy="-978209" r="8080" gradientTransform="matrix(6.201 0 0 6.2 5764500 6090880)" x:href="#a"><stop offset=".3" stop-color="#45278d"/><stop offset=".34" stop-color="#562896" stop-opacity=".8"/><stop offset=".43" stop-color="#782aa9" stop-opacity=".36"/><stop offset=".49" stop-color="#8d2bb5" stop-opacity=".1"/><stop offset=".53" stop-color="#952bb9" stop-opacity="0"/></radialGradient><radialGradient id="f" cx="30454" cy="-5865" r="5853" x:href="#a"><stop offset=".13" stop-color="#3fe1b0"/><stop offset=".29" stop-color="#28d0c8"/><stop offset=".53" stop-color="#00b3f4"/></radialGradient><radialGradient id="g" cx="18870" cy="39072" r="3847" x:href="#a"><stop offset=".29" stop-color="#0060df"/><stop offset=".42" stop-color="#2357e1"/><stop offset=".6" stop-color="#4f4ce3"/><stop offset=".75" stop-color="#6b45e4"/><stop offset=".83" stop-color="#7542e5"/></radialGradient><radialGradient id="i" cx="-925562" cy="-979155" r="2040" gradientTransform="matrix(6.027 -1.458 1.708 7.059 7275865 5582118)" x:href="#a"><stop offset=".21" stop-color="#45278d" stop-opacity="0"/><stop offset=".25" stop-color="#44268a" stop-opacity=".06"/><stop offset=".72" stop-color="#371f6f" stop-opacity=".6"/><stop offset=".96" stop-color="#321c64" stop-opacity=".8"/></radialGradient><radialGradient id="j" cx="-925773" cy="-981843" r="2768" gradientTransform="matrix(6.201 0 0 6.2 5764500 6090880)" x:href="#a"><stop offset="0" stop-color="#0df"/><stop offset=".23" stop-color="#00d6fd"/><stop offset=".57" stop-color="#00c3f8"/><stop offset=".79" stop-color="#00b3f4"/></radialGradient><radialGradient id="k" cx="-923598" cy="-983598" r="11808" gradientTransform="matrix(6.201 0 0 6.2 5764500 6090880)" x:href="#a"><stop offset=".13" stop-color="#3fe1b0"/><stop offset=".43" stop-color="#0df"/><stop offset=".48" stop-color="#1ec1ff"/><stop offset=".62" stop-color="#7077ff"/><stop offset=".69" stop-color="#9059ff"/><stop offset=".9" stop-color="#b833e1"/></radialGradient><radialGradient id="l" cx="-924717" cy="-982286" r="8650" gradientTransform="matrix(.649 6.166 -4.046 .426 -3344043 6120786)" x:href="#a"><stop offset="0" stop-color="#54ffbd"/><stop offset=".1" stop-color="#4cf3b8"/><stop offset=".2" stop-color="#3fe1b0"/><stop offset=".26" stop-color="#33d8bd"/><stop offset=".37" stop-color="#12c0e1"/><stop offset=".42" stop-color="#00b3f4"/><stop offset=".74" stop-color="#0060df"/></radialGradient><radialGradient id="m" cx="-925838" cy="-980818" r="7372" gradientTransform="matrix(6.201 0 0 6.2 5764500 6090880)" x:href="#a"><stop offset=".14" stop-color="#3fe1b0"/><stop offset=".43" stop-color="#0df"/><stop offset=".48" stop-color="#1ec1ff"/><stop offset=".62" stop-color="#7077ff"/><stop offset=".69" stop-color="#9059ff"/></radialGradient><radialGradient id="n" cx="-923892" cy="-980386" r="8069" gradientTransform="matrix(6.201 0 0 6.2 5764500 6090880)" x:href="#a"><stop offset=".09" stop-color="#54ffbd"/><stop offset=".24" stop-color="#41f7cc"/><stop offset=".54" stop-color="#0fe3f3"/><stop offset=".63" stop-color="#0df"/></radialGradient><linearGradient id="b" x1="4718" x2="5598" y1="12735" y2="38928" x:href="#a"><stop offset="0" stop-color="#3fe1b0"/><stop offset=".41" stop-color="#00b3f4"/><stop offset=".42" stop-color="#03b0f4"/><stop offset=".82" stop-color="#5561e9"/><stop offset="1" stop-color="#7542e5"/></linearGradient><linearGradient id="o" x1="44208" x2="10264" y1="7477" y2="41421" x:href="#a"><stop offset=".17" stop-color="#54ffbd" stop-opacity=".8"/><stop offset=".24" stop-color="#43f8ca" stop-opacity=".64"/><stop offset=".36" stop-color="#27ede1" stop-opacity=".37"/><stop offset=".47" stop-color="#12e4f1" stop-opacity=".17"/><stop offset=".55" stop-color="#05dffb" stop-opacity=".05"/><stop offset=".59" stop-color="#0df" stop-opacity="0"/></linearGradient><linearGradient id="a" gradientUnits="userSpaceOnUse"/><path id="d" d="M47870 16735c-1044-2512-3160-5224-4820-6082 1352 2650 2134 5310 2433 7294 0-6 2 5 4 22l4 26c2268 6147 1032 12398-748 16218-2754 5910-9420 11967-19857 11670-11276-318-21210-8683-23064-19643-338-1728 0-2605 170-4008-207 1080-286 1394-390 3315l-2 123c0 13270 10760 24030 24032 24030 11887 0 21756-8630 23690-19963l110-927c477-4120-53-8453-1560-12075z"/><path id="h" d="M25677 21050c-40 598-2150 2660-2890 2660-6834 0-7943 4133-7943 4133 303 3480 2726 6348 5660 7865 134 70 270 130 405 193a13277 13277 0 00706 289 10674 10674 0 003127 603c11978 562 14300-14320 5655-18640 2213-385 4510 505 5794 1407-2100-3672-6025-6150-10530-6150-285 0-564 24-844 43a12025 12025 0 00-6614 2549c366 310 780 724 1650 1583 1630 1606 5813 3270 5822 3465z"/><path fill="url(#b)" d="M47870 16735c-1044-2512-3160-5224-4820-6082 1352 2650 2134 5310 2433 7294l5 40c-2718-6773-7325-9505-11088-15452l-566-920a7372 7372 0 01-265-497 4370 4370 0 01-359-950 63 63 0 00-55-65 82 82 0 00-45 0l-12 7-17 10 10-14c-6037 3536-8085 10076-8274 13350a12025 12025 0 00-6614 2548 7136 7136 0 00-622-470 11134 11134 0 01-68-5873c-2468 1124-4390 2900-5785 4470h-10c-953-1206-886-5187-832-6018-10-52-710 363-802 425a17507 17507 0 00-2349 2012 21048 21048 0 00-2244 2692l-1 3v-3a20284 20284 0 00-3225 7280l-32 160a39700 39700 0 00-237 1500l-5 52a22907 22907 0 00-390 3316l-1 120c0 13270 10760 24030 24032 24030 11887 0 21756-8630 23690-19963l110-927c477-4120-53-8453-1560-12075zM20170 35545c113 53 220 112 334 164l16 10a12620 12620 0 01-350-174zm5506-14493zm19813-3060l-3-23 4 26z"/><use fill="url(#c)" x:href="#d"/><use fill="url(#e)" x:href="#d"/><path fill="url(#f)" d="M36192 19560l150 110a13070 13070 0 00-2231-2911C26640 9290 32150 563 33080 120l10-13c-6037 3535-8085 10076-8273 13348 280-20 560-43 844-43 4505 0 8430 2477 10530 6150z"/><use fill="url(#g)" x:href="#h"/><use fill="url(#i)" x:href="#h"/><path fill="url(#j)" d="M17083 15204a24404 24404 0 01498 330 11134 11134 0 01-67-5874c-2470 1125-4390 2900-5785 4470 115-3 3600-66 5354 1074z"/><path fill="url(#k)" d="M1822 26240c1855 10960 11788 19325 23063 19644 10437 296 17104-5762 19858-11670 1780-3820 3016-10070 748-16218v-2l-4-24c-2-17-4-28-4-22l5 40c853 5566-1980 10958-6405 14604l-13 30c-8625 7023-16878 4237-18550 3097a14410 14410 0 01-350-174c-5028-2403-7105-6984-6660-10913-4245 0-5693-3580-5693-3580s3812-2718 8836-355c4653 2190 9023 355 9023 354-10-195-4192-1860-5822-3465-872-860-1285-1272-1652-1583a7136 7136 0 00-622-470 28293 28293 0 00-498-330c-1753-1140-5240-1076-5355-1073h-10c-953-1207-886-5188-832-6020-10-50-710 363-802 426a17507 17507 0 00-2349 2012 21048 21048 0 00-2244 2692l-1 3v-3a20284 20284 0 00-3225 7280c-10 52-865 3784-444 5720z"/><path fill="url(#l)" d="M34110 16760a13070 13070 0 012231 2910l360 296c5450 5020 2594 12120 2380 12626 4426-3646 7258-9038 6405-14604-2716-6774-7323-9506-11086-15453l-566-920a7372 7372 0 01-265-497 4370 4370 0 01-359-950 63 63 0 00-55-65 82 82 0 00-45 0l-12 7-17 10c-930 443-6440 9170 1030 16640z"/><path fill="url(#m)" d="M36702 19965a4743 4743 0 00-360-295l-150-110c-1283-900-3580-1792-5794-1407 8644 4322 6323 19203-5655 18640a10674 10674 0 01-3127-603 13451 13451 0 01-706-289 9064 9064 0 01-405-193l16 10c1670 1140 9924 3925 18550-3097l13-30c213-506 3068-7606-2380-12626z"/><path fill="url(#n)" d="M14844 27844s1110-4133 7943-4133c740 0 2850-2062 2890-2660s-4370 1836-9023-354c-5024-2363-8836 354-8836 354s1448 3580 5693 3580c-445 3930 1632 8510 6660 10913 113 53 218 112 334 164-2935-1517-5358-4384-5660-7865z"/><path fill="url(#o)" d="M47870 16735c-1044-2512-3160-5224-4820-6082 1352 2650 2134 5310 2433 7294l5 40c-2718-6773-7325-9505-11088-15452l-566-920a7372 7372 0 01-265-497 4370 4370 0 01-359-950 63 63 0 00-55-65 82 82 0 00-45 0l-12 7-17 10 10-14c-6037 3536-8085 10076-8274 13350 280-20 560-43 845-43 4505 0 8430 2477 10530 6148-1284-900-3580-1792-5795-1407 8644 4322 6323 19203-5655 18640a10674 10674 0 01-3127-603 13451 13451 0 01-706-289 9064 9064 0 01-405-193l17 10a14410 14410 0 01-350-174c112 53 218 112 333 164-2935-1517-5358-4384-5660-7865 0 0 1108-4133 7942-4133 740 0 2850-2062 2890-2660-10-195-4190-1860-5822-3465-870-860-1285-1272-1650-1583a7136 7136 0 00-623-470 11134 11134 0 01-67-5873c-2470 1124-4390 2900-5785 4470h-10c-953-1207-886-5187-832-6020-10-50-710 363-802 426a17507 17507 0 00-2349 2012 21048 21048 0 00-2243 2692l-1 3v-3a20284 20284 0 00-3225 7280l-32 160a39787 39787 0 00-277 1515c-2 18 2-17 0 0a27956 27956 0 00-355 3353l-3 122c0 13270 10760 24030 24032 24030 11887 0 21756-8630 23690-19963l110-927c477-4120-53-8453-1560-12075zm-2384 1234l4 26v-2l-4-24z"/></svg>
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/index-BY2S1tHT.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
:root{--color-canvas-default-transparent: rgba(255,255,255,0);--color-marketing-icon-primary: #218bff;--color-marketing-icon-secondary: #54aeff;--color-diff-blob-addition-num-text: #24292f;--color-diff-blob-addition-fg: #24292f;--color-diff-blob-addition-num-bg: #CCFFD8;--color-diff-blob-addition-line-bg: #E6FFEC;--color-diff-blob-addition-word-bg: #ABF2BC;--color-diff-blob-deletion-num-text: #24292f;--color-diff-blob-deletion-fg: #24292f;--color-diff-blob-deletion-num-bg: #FFD7D5;--color-diff-blob-deletion-line-bg: #FFEBE9;--color-diff-blob-deletion-word-bg: rgba(255,129,130,.4);--color-diff-blob-hunk-num-bg: rgba(84,174,255,.4);--color-diff-blob-expander-icon: #57606a;--color-diff-blob-selected-line-highlight-mix-blend-mode: multiply;--color-diffstat-deletion-border: rgba(27,31,36,.15);--color-diffstat-addition-border: rgba(27,31,36,.15);--color-diffstat-addition-bg: #2da44e;--color-search-keyword-hl: #fff8c5;--color-prettylights-syntax-comment: #6e7781;--color-prettylights-syntax-constant: #0550ae;--color-prettylights-syntax-entity: #8250df;--color-prettylights-syntax-storage-modifier-import: #24292f;--color-prettylights-syntax-entity-tag: #116329;--color-prettylights-syntax-keyword: #cf222e;--color-prettylights-syntax-string: #0a3069;--color-prettylights-syntax-variable: #953800;--color-prettylights-syntax-brackethighlighter-unmatched: #82071e;--color-prettylights-syntax-invalid-illegal-text: #f6f8fa;--color-prettylights-syntax-invalid-illegal-bg: #82071e;--color-prettylights-syntax-carriage-return-text: #f6f8fa;--color-prettylights-syntax-carriage-return-bg: #cf222e;--color-prettylights-syntax-string-regexp: #116329;--color-prettylights-syntax-markup-list: #3b2300;--color-prettylights-syntax-markup-heading: #0550ae;--color-prettylights-syntax-markup-italic: #24292f;--color-prettylights-syntax-markup-bold: #24292f;--color-prettylights-syntax-markup-deleted-text: #82071e;--color-prettylights-syntax-markup-deleted-bg: #FFEBE9;--color-prettylights-syntax-markup-inserted-text: #116329;--color-prettylights-syntax-markup-inserted-bg: #dafbe1;--color-prettylights-syntax-markup-changed-text: #953800;--color-prettylights-syntax-markup-changed-bg: #ffd8b5;--color-prettylights-syntax-markup-ignored-text: #eaeef2;--color-prettylights-syntax-markup-ignored-bg: #0550ae;--color-prettylights-syntax-meta-diff-range: #8250df;--color-prettylights-syntax-brackethighlighter-angle: #57606a;--color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;--color-prettylights-syntax-constant-other-reference-link: #0a3069;--color-codemirror-text: #24292f;--color-codemirror-bg: #ffffff;--color-codemirror-gutters-bg: #ffffff;--color-codemirror-guttermarker-text: #ffffff;--color-codemirror-guttermarker-subtle-text: #6e7781;--color-codemirror-linenumber-text: #57606a;--color-codemirror-cursor: #24292f;--color-codemirror-selection-bg: rgba(84,174,255,.4);--color-codemirror-activeline-bg: rgba(234,238,242,.5);--color-codemirror-matchingbracket-text: #24292f;--color-codemirror-lines-bg: #ffffff;--color-codemirror-syntax-comment: #24292f;--color-codemirror-syntax-constant: #0550ae;--color-codemirror-syntax-entity: #8250df;--color-codemirror-syntax-keyword: #cf222e;--color-codemirror-syntax-storage: #cf222e;--color-codemirror-syntax-string: #0a3069;--color-codemirror-syntax-support: #0550ae;--color-codemirror-syntax-variable: #953800;--color-checks-bg: #24292f;--color-checks-run-border-width: 0px;--color-checks-container-border-width: 0px;--color-checks-text-primary: #f6f8fa;--color-checks-text-secondary: #8c959f;--color-checks-text-link: #54aeff;--color-checks-btn-icon: #afb8c1;--color-checks-btn-hover-icon: #f6f8fa;--color-checks-btn-hover-bg: rgba(255,255,255,.125);--color-checks-input-text: #eaeef2;--color-checks-input-placeholder-text: #8c959f;--color-checks-input-focus-text: #8c959f;--color-checks-input-bg: #32383f;--color-checks-input-shadow: none;--color-checks-donut-error: #fa4549;--color-checks-donut-pending: #bf8700;--color-checks-donut-success: #2da44e;--color-checks-donut-neutral: #afb8c1;--color-checks-dropdown-text: #afb8c1;--color-checks-dropdown-bg: #32383f;--color-checks-dropdown-border: #424a53;--color-checks-dropdown-shadow: rgba(27,31,36,.3);--color-checks-dropdown-hover-text: #f6f8fa;--color-checks-dropdown-hover-bg: #424a53;--color-checks-dropdown-btn-hover-text: #f6f8fa;--color-checks-dropdown-btn-hover-bg: #32383f;--color-checks-scrollbar-thumb-bg: #57606a;--color-checks-header-label-text: #d0d7de;--color-checks-header-label-open-text: #f6f8fa;--color-checks-header-border: #32383f;--color-checks-header-icon: #8c959f;--color-checks-line-text: #d0d7de;--color-checks-line-num-text: rgba(140,149,159,.75);--color-checks-line-timestamp-text: #8c959f;--color-checks-line-hover-bg: #32383f;--color-checks-line-selected-bg: rgba(33,139,255,.15);--color-checks-line-selected-num-text: #54aeff;--color-checks-line-dt-fm-text: #24292f;--color-checks-line-dt-fm-bg: #9a6700;--color-checks-gate-bg: rgba(125,78,0,.15);--color-checks-gate-text: #d0d7de;--color-checks-gate-waiting-text: #afb8c1;--color-checks-step-header-open-bg: #32383f;--color-checks-step-error-text: #ff8182;--color-checks-step-warning-text: #d4a72c;--color-checks-logline-text: #8c959f;--color-checks-logline-num-text: rgba(140,149,159,.75);--color-checks-logline-debug-text: #c297ff;--color-checks-logline-error-text: #d0d7de;--color-checks-logline-error-num-text: #ff8182;--color-checks-logline-error-bg: rgba(164,14,38,.15);--color-checks-logline-warning-text: #d0d7de;--color-checks-logline-warning-num-text: #d4a72c;--color-checks-logline-warning-bg: rgba(125,78,0,.15);--color-checks-logline-command-text: #54aeff;--color-checks-logline-section-text: #4ac26b;--color-checks-ansi-black: #24292f;--color-checks-ansi-black-bright: #32383f;--color-checks-ansi-white: #d0d7de;--color-checks-ansi-white-bright: #d0d7de;--color-checks-ansi-gray: #8c959f;--color-checks-ansi-red: #ff8182;--color-checks-ansi-red-bright: #ffaba8;--color-checks-ansi-green: #4ac26b;--color-checks-ansi-green-bright: #6fdd8b;--color-checks-ansi-yellow: #d4a72c;--color-checks-ansi-yellow-bright: #eac54f;--color-checks-ansi-blue: #54aeff;--color-checks-ansi-blue-bright: #80ccff;--color-checks-ansi-magenta: #c297ff;--color-checks-ansi-magenta-bright: #d8b9ff;--color-checks-ansi-cyan: #76e3ea;--color-checks-ansi-cyan-bright: #b3f0ff;--color-project-header-bg: #24292f;--color-project-sidebar-bg: #ffffff;--color-project-gradient-in: #ffffff;--color-project-gradient-out: rgba(255,255,255,0);--color-mktg-success: rgba(36,146,67,1);--color-mktg-info: rgba(19,119,234,1);--color-mktg-bg-shade-gradient-top: rgba(27,31,36,.065);--color-mktg-bg-shade-gradient-bottom: rgba(27,31,36,0);--color-mktg-btn-bg-top: hsla(228,82%,66%,1);--color-mktg-btn-bg-bottom: #4969ed;--color-mktg-btn-bg-overlay-top: hsla(228,74%,59%,1);--color-mktg-btn-bg-overlay-bottom: #3355e0;--color-mktg-btn-text: #ffffff;--color-mktg-btn-primary-bg-top: hsla(137,56%,46%,1);--color-mktg-btn-primary-bg-bottom: #2ea44f;--color-mktg-btn-primary-bg-overlay-top: hsla(134,60%,38%,1);--color-mktg-btn-primary-bg-overlay-bottom: #22863a;--color-mktg-btn-primary-text: #ffffff;--color-mktg-btn-enterprise-bg-top: hsla(249,100%,72%,1);--color-mktg-btn-enterprise-bg-bottom: #6f57ff;--color-mktg-btn-enterprise-bg-overlay-top: hsla(248,65%,63%,1);--color-mktg-btn-enterprise-bg-overlay-bottom: #614eda;--color-mktg-btn-enterprise-text: #ffffff;--color-mktg-btn-outline-text: #4969ed;--color-mktg-btn-outline-border: rgba(73,105,237,.3);--color-mktg-btn-outline-hover-text: #3355e0;--color-mktg-btn-outline-hover-border: rgba(51,85,224,.5);--color-mktg-btn-outline-focus-border: #4969ed;--color-mktg-btn-outline-focus-border-inset: rgba(73,105,237,.5);--color-mktg-btn-dark-text: #ffffff;--color-mktg-btn-dark-border: rgba(255,255,255,.3);--color-mktg-btn-dark-hover-text: #ffffff;--color-mktg-btn-dark-hover-border: rgba(255,255,255,.5);--color-mktg-btn-dark-focus-border: #ffffff;--color-mktg-btn-dark-focus-border-inset: rgba(255,255,255,.5);--color-avatar-bg: #ffffff;--color-avatar-border: rgba(27,31,36,.15);--color-avatar-stack-fade: #afb8c1;--color-avatar-stack-fade-more: #d0d7de;--color-avatar-child-shadow: -2px -2px 0 rgba(255,255,255,.8);--color-topic-tag-border: rgba(0,0,0,0);--color-select-menu-backdrop-border: rgba(0,0,0,0);--color-select-menu-tap-highlight: rgba(175,184,193,.5);--color-select-menu-tap-focus-bg: #b6e3ff;--color-overlay-shadow: 0 1px 3px rgba(27,31,36,.12), 0 8px 24px rgba(66,74,83,.12);--color-header-text: rgba(255,255,255,.7);--color-header-bg: #24292f;--color-header-logo: #ffffff;--color-header-search-bg: #24292f;--color-header-search-border: #57606a;--color-sidenav-selected-bg: #ffffff;--color-menu-bg-active: rgba(0,0,0,0);--color-control-transparent-bg-hover: #818b981a;--color-input-disabled-bg: rgba(175,184,193,.2);--color-timeline-badge-bg: #eaeef2;--color-ansi-black: #24292f;--color-ansi-black-bright: #57606a;--color-ansi-white: #6e7781;--color-ansi-white-bright: #8c959f;--color-ansi-gray: #6e7781;--color-ansi-red: #cf222e;--color-ansi-red-bright: #a40e26;--color-ansi-green: #116329;--color-ansi-green-bright: #1a7f37;--color-ansi-yellow: #4d2d00;--color-ansi-yellow-bright: #633c01;--color-ansi-blue: #0969da;--color-ansi-blue-bright: #218bff;--color-ansi-magenta: #8250df;--color-ansi-magenta-bright: #a475f9;--color-ansi-cyan: #1b7c83;--color-ansi-cyan-bright: #3192aa;--color-btn-text: #24292f;--color-btn-bg: #f6f8fa;--color-btn-border: rgba(27,31,36,.15);--color-btn-shadow: 0 1px 0 rgba(27,31,36,.04);--color-btn-inset-shadow: inset 0 1px 0 rgba(255,255,255,.25);--color-btn-hover-bg: #f3f4f6;--color-btn-hover-border: rgba(27,31,36,.15);--color-btn-active-bg: hsla(220,14%,93%,1);--color-btn-active-border: rgba(27,31,36,.15);--color-btn-selected-bg: hsla(220,14%,94%,1);--color-btn-focus-bg: #f6f8fa;--color-btn-focus-border: rgba(27,31,36,.15);--color-btn-focus-shadow: 0 0 0 3px rgba(9,105,218,.3);--color-btn-shadow-active: inset 0 .15em .3em rgba(27,31,36,.15);--color-btn-shadow-input-focus: 0 0 0 .2em rgba(9,105,218,.3);--color-btn-counter-bg: rgba(27,31,36,.08);--color-btn-primary-text: #ffffff;--color-btn-primary-bg: #2da44e;--color-btn-primary-border: rgba(27,31,36,.15);--color-btn-primary-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-primary-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-primary-hover-bg: #2c974b;--color-btn-primary-hover-border: rgba(27,31,36,.15);--color-btn-primary-selected-bg: hsla(137,55%,36%,1);--color-btn-primary-selected-shadow: inset 0 1px 0 rgba(0,45,17,.2);--color-btn-primary-disabled-text: rgba(255,255,255,.8);--color-btn-primary-disabled-bg: #94d3a2;--color-btn-primary-disabled-border: rgba(27,31,36,.15);--color-btn-primary-focus-bg: #2da44e;--color-btn-primary-focus-border: rgba(27,31,36,.15);--color-btn-primary-focus-shadow: 0 0 0 3px rgba(45,164,78,.4);--color-btn-primary-icon: rgba(255,255,255,.8);--color-btn-primary-counter-bg: rgba(255,255,255,.2);--color-btn-outline-text: #0969da;--color-btn-outline-hover-text: #ffffff;--color-btn-outline-hover-bg: #0969da;--color-btn-outline-hover-border: rgba(27,31,36,.15);--color-btn-outline-hover-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-outline-hover-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-outline-hover-counter-bg: rgba(255,255,255,.2);--color-btn-outline-selected-text: #ffffff;--color-btn-outline-selected-bg: hsla(212,92%,42%,1);--color-btn-outline-selected-border: rgba(27,31,36,.15);--color-btn-outline-selected-shadow: inset 0 1px 0 rgba(0,33,85,.2);--color-btn-outline-disabled-text: rgba(9,105,218,.5);--color-btn-outline-disabled-bg: #f6f8fa;--color-btn-outline-disabled-counter-bg: rgba(9,105,218,.05);--color-btn-outline-focus-border: rgba(27,31,36,.15);--color-btn-outline-focus-shadow: 0 0 0 3px rgba(5,80,174,.4);--color-btn-outline-counter-bg: rgba(9,105,218,.1);--color-btn-danger-text: #cf222e;--color-btn-danger-hover-text: #ffffff;--color-btn-danger-hover-bg: #a40e26;--color-btn-danger-hover-border: rgba(27,31,36,.15);--color-btn-danger-hover-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-danger-hover-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-danger-hover-counter-bg: rgba(255,255,255,.2);--color-btn-danger-selected-text: #ffffff;--color-btn-danger-selected-bg: hsla(356,72%,44%,1);--color-btn-danger-selected-border: rgba(27,31,36,.15);--color-btn-danger-selected-shadow: inset 0 1px 0 rgba(76,0,20,.2);--color-btn-danger-disabled-text: rgba(207,34,46,.5);--color-btn-danger-disabled-bg: #f6f8fa;--color-btn-danger-disabled-counter-bg: rgba(207,34,46,.05);--color-btn-danger-focus-border: rgba(27,31,36,.15);--color-btn-danger-focus-shadow: 0 0 0 3px rgba(164,14,38,.4);--color-btn-danger-counter-bg: rgba(207,34,46,.1);--color-btn-danger-icon: #cf222e;--color-btn-danger-hover-icon: #ffffff;--color-underlinenav-icon: #6e7781;--color-underlinenav-border-hover: rgba(175,184,193,.2);--color-fg-default: #24292f;--color-fg-muted: #57606a;--color-fg-subtle: #6e7781;--color-fg-on-emphasis: #ffffff;--color-canvas-default: #ffffff;--color-canvas-overlay: #ffffff;--color-canvas-inset: #f6f8fa;--color-canvas-subtle: #f6f8fa;--color-border-default: #d0d7de;--color-border-muted: hsla(210,18%,87%,1);--color-border-subtle: rgba(27,31,36,.15);--color-shadow-small: 0 1px 0 rgba(27,31,36,.04);--color-shadow-medium: 0 3px 6px rgba(140,149,159,.15);--color-shadow-large: 0 8px 24px rgba(140,149,159,.2);--color-shadow-extra-large: 0 12px 28px rgba(140,149,159,.3);--color-neutral-emphasis-plus: #24292f;--color-neutral-emphasis: #6e7781;--color-neutral-muted: rgba(175,184,193,.2);--color-neutral-subtle: rgba(234,238,242,.5);--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-accent-muted: rgba(84,174,255,.4);--color-accent-subtle: #ddf4ff;--color-success-fg: #1a7f37;--color-success-emphasis: #2da44e;--color-success-muted: rgba(74,194,107,.4);--color-success-subtle: #dafbe1;--color-attention-fg: #9a6700;--color-attention-emphasis: #bf8700;--color-attention-muted: rgba(212,167,44,.4);--color-attention-subtle: #fff8c5;--color-severe-fg: #bc4c00;--color-severe-emphasis: #bc4c00;--color-severe-muted: rgba(251,143,68,.4);--color-severe-subtle: #fff1e5;--color-danger-fg: #cf222e;--color-danger-emphasis: #cf222e;--color-danger-muted: rgba(255,129,130,.4);--color-danger-subtle: #FFEBE9;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-done-muted: rgba(194,151,255,.4);--color-done-subtle: #fbefff;--color-sponsors-fg: #bf3989;--color-sponsors-emphasis: #bf3989;--color-sponsors-muted: rgba(255,128,200,.4);--color-sponsors-subtle: #ffeff7;--color-primer-canvas-backdrop: rgba(27,31,36,.5);--color-primer-canvas-sticky: rgba(255,255,255,.95);--color-primer-border-active: #FD8C73;--color-primer-border-contrast: rgba(27,31,36,.1);--color-primer-shadow-highlight: inset 0 1px 0 rgba(255,255,255,.25);--color-primer-shadow-inset: inset 0 1px 0 rgba(208,215,222,.2);--color-primer-shadow-focus: 0 0 0 3px rgba(9,105,218,.3);--color-scale-black: #1b1f24;--color-scale-white: #ffffff;--color-scale-gray-0: #f6f8fa;--color-scale-gray-1: #eaeef2;--color-scale-gray-2: #d0d7de;--color-scale-gray-3: #afb8c1;--color-scale-gray-4: #8c959f;--color-scale-gray-5: #6e7781;--color-scale-gray-6: #57606a;--color-scale-gray-7: #424a53;--color-scale-gray-8: #32383f;--color-scale-gray-9: #24292f;--color-scale-blue-0: #ddf4ff;--color-scale-blue-1: #b6e3ff;--color-scale-blue-2: #80ccff;--color-scale-blue-3: #54aeff;--color-scale-blue-4: #218bff;--color-scale-blue-5: #0969da;--color-scale-blue-6: #0550ae;--color-scale-blue-7: #033d8b;--color-scale-blue-8: #0a3069;--color-scale-blue-9: #002155;--color-scale-green-0: #dafbe1;--color-scale-green-1: #aceebb;--color-scale-green-2: #6fdd8b;--color-scale-green-3: #4ac26b;--color-scale-green-4: #2da44e;--color-scale-green-5: #1a7f37;--color-scale-green-6: #116329;--color-scale-green-7: #044f1e;--color-scale-green-8: #003d16;--color-scale-green-9: #002d11;--color-scale-yellow-0: #fff8c5;--color-scale-yellow-1: #fae17d;--color-scale-yellow-2: #eac54f;--color-scale-yellow-3: #d4a72c;--color-scale-yellow-4: #bf8700;--color-scale-yellow-5: #9a6700;--color-scale-yellow-6: #7d4e00;--color-scale-yellow-7: #633c01;--color-scale-yellow-8: #4d2d00;--color-scale-yellow-9: #3b2300;--color-scale-orange-0: #fff1e5;--color-scale-orange-1: #ffd8b5;--color-scale-orange-2: #ffb77c;--color-scale-orange-3: #fb8f44;--color-scale-orange-4: #e16f24;--color-scale-orange-5: #bc4c00;--color-scale-orange-6: #953800;--color-scale-orange-7: #762c00;--color-scale-orange-8: #5c2200;--color-scale-orange-9: #471700;--color-scale-red-0: #FFEBE9;--color-scale-red-1: #ffcecb;--color-scale-red-2: #ffaba8;--color-scale-red-3: #ff8182;--color-scale-red-4: #fa4549;--color-scale-red-5: #cf222e;--color-scale-red-6: #a40e26;--color-scale-red-7: #82071e;--color-scale-red-8: #660018;--color-scale-red-9: #4c0014;--color-scale-purple-0: #fbefff;--color-scale-purple-1: #ecd8ff;--color-scale-purple-2: #d8b9ff;--color-scale-purple-3: #c297ff;--color-scale-purple-4: #a475f9;--color-scale-purple-5: #8250df;--color-scale-purple-6: #6639ba;--color-scale-purple-7: #512a97;--color-scale-purple-8: #3e1f79;--color-scale-purple-9: #2e1461;--color-scale-pink-0: #ffeff7;--color-scale-pink-1: #ffd3eb;--color-scale-pink-2: #ffadda;--color-scale-pink-3: #ff80c8;--color-scale-pink-4: #e85aad;--color-scale-pink-5: #bf3989;--color-scale-pink-6: #99286e;--color-scale-pink-7: #772057;--color-scale-pink-8: #611347;--color-scale-pink-9: #4d0336;--color-scale-coral-0: #FFF0EB;--color-scale-coral-1: #FFD6CC;--color-scale-coral-2: #FFB4A1;--color-scale-coral-3: #FD8C73;--color-scale-coral-4: #EC6547;--color-scale-coral-5: #C4432B;--color-scale-coral-6: #9E2F1C;--color-scale-coral-7: #801F0F;--color-scale-coral-8: #691105;--color-scale-coral-9: #510901 }:root.dark-mode{color-scheme:dark;--color-canvas-default-transparent: rgba(13,17,23,0);--color-marketing-icon-primary: #79c0ff;--color-marketing-icon-secondary: #1f6feb;--color-diff-blob-addition-num-text: #c9d1d9;--color-diff-blob-addition-fg: #c9d1d9;--color-diff-blob-addition-num-bg: rgba(63,185,80,.3);--color-diff-blob-addition-line-bg: rgba(46,160,67,.15);--color-diff-blob-addition-word-bg: rgba(46,160,67,.4);--color-diff-blob-deletion-num-text: #c9d1d9;--color-diff-blob-deletion-fg: #c9d1d9;--color-diff-blob-deletion-num-bg: rgba(248,81,73,.3);--color-diff-blob-deletion-line-bg: rgba(248,81,73,.15);--color-diff-blob-deletion-word-bg: rgba(248,81,73,.4);--color-diff-blob-hunk-num-bg: rgba(56,139,253,.4);--color-diff-blob-expander-icon: #8b949e;--color-diff-blob-selected-line-highlight-mix-blend-mode: screen;--color-diffstat-deletion-border: rgba(240,246,252,.1);--color-diffstat-addition-border: rgba(240,246,252,.1);--color-diffstat-addition-bg: #3fb950;--color-search-keyword-hl: rgba(210,153,34,.4);--color-prettylights-syntax-comment: #8b949e;--color-prettylights-syntax-constant: #79c0ff;--color-prettylights-syntax-entity: #d2a8ff;--color-prettylights-syntax-storage-modifier-import: #c9d1d9;--color-prettylights-syntax-entity-tag: #7ee787;--color-prettylights-syntax-keyword: #ff7b72;--color-prettylights-syntax-string: #a5d6ff;--color-prettylights-syntax-variable: #ffa657;--color-prettylights-syntax-brackethighlighter-unmatched: #f85149;--color-prettylights-syntax-invalid-illegal-text: #f0f6fc;--color-prettylights-syntax-invalid-illegal-bg: #8e1519;--color-prettylights-syntax-carriage-return-text: #f0f6fc;--color-prettylights-syntax-carriage-return-bg: #b62324;--color-prettylights-syntax-string-regexp: #7ee787;--color-prettylights-syntax-markup-list: #f2cc60;--color-prettylights-syntax-markup-heading: #1f6feb;--color-prettylights-syntax-markup-italic: #c9d1d9;--color-prettylights-syntax-markup-bold: #c9d1d9;--color-prettylights-syntax-markup-deleted-text: #ffdcd7;--color-prettylights-syntax-markup-deleted-bg: #67060c;--color-prettylights-syntax-markup-inserted-text: #aff5b4;--color-prettylights-syntax-markup-inserted-bg: #033a16;--color-prettylights-syntax-markup-changed-text: #ffdfb6;--color-prettylights-syntax-markup-changed-bg: #5a1e02;--color-prettylights-syntax-markup-ignored-text: #c9d1d9;--color-prettylights-syntax-markup-ignored-bg: #1158c7;--color-prettylights-syntax-meta-diff-range: #d2a8ff;--color-prettylights-syntax-brackethighlighter-angle: #8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;--color-prettylights-syntax-constant-other-reference-link: #a5d6ff;--color-codemirror-text: #c9d1d9;--color-codemirror-bg: #0d1117;--color-codemirror-gutters-bg: #0d1117;--color-codemirror-guttermarker-text: #0d1117;--color-codemirror-guttermarker-subtle-text: #484f58;--color-codemirror-linenumber-text: #8b949e;--color-codemirror-cursor: #c9d1d9;--color-codemirror-selection-bg: rgba(56,139,253,.4);--color-codemirror-activeline-bg: rgba(110,118,129,.1);--color-codemirror-matchingbracket-text: #c9d1d9;--color-codemirror-lines-bg: #0d1117;--color-codemirror-syntax-comment: #8b949e;--color-codemirror-syntax-constant: #79c0ff;--color-codemirror-syntax-entity: #d2a8ff;--color-codemirror-syntax-keyword: #ff7b72;--color-codemirror-syntax-storage: #ff7b72;--color-codemirror-syntax-string: #a5d6ff;--color-codemirror-syntax-support: #79c0ff;--color-codemirror-syntax-variable: #ffa657;--color-checks-bg: #010409;--color-checks-run-border-width: 1px;--color-checks-container-border-width: 1px;--color-checks-text-primary: #c9d1d9;--color-checks-text-secondary: #8b949e;--color-checks-text-link: #58a6ff;--color-checks-btn-icon: #8b949e;--color-checks-btn-hover-icon: #c9d1d9;--color-checks-btn-hover-bg: rgba(110,118,129,.1);--color-checks-input-text: #8b949e;--color-checks-input-placeholder-text: #484f58;--color-checks-input-focus-text: #c9d1d9;--color-checks-input-bg: #161b22;--color-checks-input-shadow: none;--color-checks-donut-error: #f85149;--color-checks-donut-pending: #d29922;--color-checks-donut-success: #2ea043;--color-checks-donut-neutral: #8b949e;--color-checks-dropdown-text: #c9d1d9;--color-checks-dropdown-bg: #161b22;--color-checks-dropdown-border: #30363d;--color-checks-dropdown-shadow: rgba(1,4,9,.3);--color-checks-dropdown-hover-text: #c9d1d9;--color-checks-dropdown-hover-bg: rgba(110,118,129,.1);--color-checks-dropdown-btn-hover-text: #c9d1d9;--color-checks-dropdown-btn-hover-bg: rgba(110,118,129,.1);--color-checks-scrollbar-thumb-bg: rgba(110,118,129,.4);--color-checks-header-label-text: #8b949e;--color-checks-header-label-open-text: #c9d1d9;--color-checks-header-border: #21262d;--color-checks-header-icon: #8b949e;--color-checks-line-text: #8b949e;--color-checks-line-num-text: #484f58;--color-checks-line-timestamp-text: #484f58;--color-checks-line-hover-bg: rgba(110,118,129,.1);--color-checks-line-selected-bg: rgba(56,139,253,.15);--color-checks-line-selected-num-text: #58a6ff;--color-checks-line-dt-fm-text: #f0f6fc;--color-checks-line-dt-fm-bg: #9e6a03;--color-checks-gate-bg: rgba(187,128,9,.15);--color-checks-gate-text: #8b949e;--color-checks-gate-waiting-text: #d29922;--color-checks-step-header-open-bg: #161b22;--color-checks-step-error-text: #f85149;--color-checks-step-warning-text: #d29922;--color-checks-logline-text: #8b949e;--color-checks-logline-num-text: #484f58;--color-checks-logline-debug-text: #a371f7;--color-checks-logline-error-text: #8b949e;--color-checks-logline-error-num-text: #484f58;--color-checks-logline-error-bg: rgba(248,81,73,.15);--color-checks-logline-warning-text: #8b949e;--color-checks-logline-warning-num-text: #d29922;--color-checks-logline-warning-bg: rgba(187,128,9,.15);--color-checks-logline-command-text: #58a6ff;--color-checks-logline-section-text: #3fb950;--color-checks-ansi-black: #0d1117;--color-checks-ansi-black-bright: #161b22;--color-checks-ansi-white: #b1bac4;--color-checks-ansi-white-bright: #b1bac4;--color-checks-ansi-gray: #6e7681;--color-checks-ansi-red: #ff7b72;--color-checks-ansi-red-bright: #ffa198;--color-checks-ansi-green: #3fb950;--color-checks-ansi-green-bright: #56d364;--color-checks-ansi-yellow: #d29922;--color-checks-ansi-yellow-bright: #e3b341;--color-checks-ansi-blue: #58a6ff;--color-checks-ansi-blue-bright: #79c0ff;--color-checks-ansi-magenta: #bc8cff;--color-checks-ansi-magenta-bright: #d2a8ff;--color-checks-ansi-cyan: #76e3ea;--color-checks-ansi-cyan-bright: #b3f0ff;--color-project-header-bg: #0d1117;--color-project-sidebar-bg: #161b22;--color-project-gradient-in: #161b22;--color-project-gradient-out: rgba(22,27,34,0);--color-mktg-success: rgba(41,147,61,1);--color-mktg-info: rgba(42,123,243,1);--color-mktg-bg-shade-gradient-top: rgba(1,4,9,.065);--color-mktg-bg-shade-gradient-bottom: rgba(1,4,9,0);--color-mktg-btn-bg-top: hsla(228,82%,66%,1);--color-mktg-btn-bg-bottom: #4969ed;--color-mktg-btn-bg-overlay-top: hsla(228,74%,59%,1);--color-mktg-btn-bg-overlay-bottom: #3355e0;--color-mktg-btn-text: #f0f6fc;--color-mktg-btn-primary-bg-top: hsla(137,56%,46%,1);--color-mktg-btn-primary-bg-bottom: #2ea44f;--color-mktg-btn-primary-bg-overlay-top: hsla(134,60%,38%,1);--color-mktg-btn-primary-bg-overlay-bottom: #22863a;--color-mktg-btn-primary-text: #f0f6fc;--color-mktg-btn-enterprise-bg-top: hsla(249,100%,72%,1);--color-mktg-btn-enterprise-bg-bottom: #6f57ff;--color-mktg-btn-enterprise-bg-overlay-top: hsla(248,65%,63%,1);--color-mktg-btn-enterprise-bg-overlay-bottom: #614eda;--color-mktg-btn-enterprise-text: #f0f6fc;--color-mktg-btn-outline-text: #f0f6fc;--color-mktg-btn-outline-border: rgba(240,246,252,.3);--color-mktg-btn-outline-hover-text: #f0f6fc;--color-mktg-btn-outline-hover-border: rgba(240,246,252,.5);--color-mktg-btn-outline-focus-border: #f0f6fc;--color-mktg-btn-outline-focus-border-inset: rgba(240,246,252,.5);--color-mktg-btn-dark-text: #f0f6fc;--color-mktg-btn-dark-border: rgba(240,246,252,.3);--color-mktg-btn-dark-hover-text: #f0f6fc;--color-mktg-btn-dark-hover-border: rgba(240,246,252,.5);--color-mktg-btn-dark-focus-border: #f0f6fc;--color-mktg-btn-dark-focus-border-inset: rgba(240,246,252,.5);--color-avatar-bg: rgba(240,246,252,.1);--color-avatar-border: rgba(240,246,252,.1);--color-avatar-stack-fade: #30363d;--color-avatar-stack-fade-more: #21262d;--color-avatar-child-shadow: -2px -2px 0 #0d1117;--color-topic-tag-border: rgba(0,0,0,0);--color-select-menu-backdrop-border: #484f58;--color-select-menu-tap-highlight: rgba(48,54,61,.5);--color-select-menu-tap-focus-bg: #0c2d6b;--color-overlay-shadow: 0 0 0 1px #30363d, 0 16px 32px rgba(1,4,9,.85);--color-header-text: rgba(240,246,252,.7);--color-header-bg: #161b22;--color-header-logo: #f0f6fc;--color-header-search-bg: #0d1117;--color-header-search-border: #30363d;--color-sidenav-selected-bg: #21262d;--color-menu-bg-active: #161b22;--color-control-transparent-bg-hover: #656c7633;--color-input-disabled-bg: rgba(110,118,129,0);--color-timeline-badge-bg: #21262d;--color-ansi-black: #484f58;--color-ansi-black-bright: #6e7681;--color-ansi-white: #b1bac4;--color-ansi-white-bright: #f0f6fc;--color-ansi-gray: #6e7681;--color-ansi-red: #ff7b72;--color-ansi-red-bright: #ffa198;--color-ansi-green: #3fb950;--color-ansi-green-bright: #56d364;--color-ansi-yellow: #d29922;--color-ansi-yellow-bright: #e3b341;--color-ansi-blue: #58a6ff;--color-ansi-blue-bright: #79c0ff;--color-ansi-magenta: #bc8cff;--color-ansi-magenta-bright: #d2a8ff;--color-ansi-cyan: #39c5cf;--color-ansi-cyan-bright: #56d4dd;--color-btn-text: #c9d1d9;--color-btn-bg: #21262d;--color-btn-border: rgba(240,246,252,.1);--color-btn-shadow: 0 0 transparent;--color-btn-inset-shadow: 0 0 transparent;--color-btn-hover-bg: #30363d;--color-btn-hover-border: #8b949e;--color-btn-active-bg: hsla(212,12%,18%,1);--color-btn-active-border: #6e7681;--color-btn-selected-bg: #161b22;--color-btn-focus-bg: #21262d;--color-btn-focus-border: #8b949e;--color-btn-focus-shadow: 0 0 0 3px rgba(139,148,158,.3);--color-btn-shadow-active: inset 0 .15em .3em rgba(1,4,9,.15);--color-btn-shadow-input-focus: 0 0 0 .2em rgba(31,111,235,.3);--color-btn-counter-bg: #30363d;--color-btn-primary-text: #ffffff;--color-btn-primary-bg: #238636;--color-btn-primary-border: rgba(240,246,252,.1);--color-btn-primary-shadow: 0 0 transparent;--color-btn-primary-inset-shadow: 0 0 transparent;--color-btn-primary-hover-bg: #2ea043;--color-btn-primary-hover-border: rgba(240,246,252,.1);--color-btn-primary-selected-bg: #238636;--color-btn-primary-selected-shadow: 0 0 transparent;--color-btn-primary-disabled-text: rgba(240,246,252,.5);--color-btn-primary-disabled-bg: rgba(35,134,54,.6);--color-btn-primary-disabled-border: rgba(240,246,252,.1);--color-btn-primary-focus-bg: #238636;--color-btn-primary-focus-border: rgba(240,246,252,.1);--color-btn-primary-focus-shadow: 0 0 0 3px rgba(46,164,79,.4);--color-btn-primary-icon: #f0f6fc;--color-btn-primary-counter-bg: rgba(240,246,252,.2);--color-btn-outline-text: #58a6ff;--color-btn-outline-hover-text: #58a6ff;--color-btn-outline-hover-bg: #30363d;--color-btn-outline-hover-border: rgba(240,246,252,.1);--color-btn-outline-hover-shadow: 0 1px 0 rgba(1,4,9,.1);--color-btn-outline-hover-inset-shadow: inset 0 1px 0 rgba(240,246,252,.03);--color-btn-outline-hover-counter-bg: rgba(240,246,252,.2);--color-btn-outline-selected-text: #f0f6fc;--color-btn-outline-selected-bg: #0d419d;--color-btn-outline-selected-border: rgba(240,246,252,.1);--color-btn-outline-selected-shadow: 0 0 transparent;--color-btn-outline-disabled-text: rgba(88,166,255,.5);--color-btn-outline-disabled-bg: #0d1117;--color-btn-outline-disabled-counter-bg: rgba(31,111,235,.05);--color-btn-outline-focus-border: rgba(240,246,252,.1);--color-btn-outline-focus-shadow: 0 0 0 3px rgba(17,88,199,.4);--color-btn-outline-counter-bg: rgba(31,111,235,.1);--color-btn-danger-text: #f85149;--color-btn-danger-hover-text: #f0f6fc;--color-btn-danger-hover-bg: #da3633;--color-btn-danger-hover-border: #f85149;--color-btn-danger-hover-shadow: 0 0 transparent;--color-btn-danger-hover-inset-shadow: 0 0 transparent;--color-btn-danger-hover-icon: #f0f6fc;--color-btn-danger-hover-counter-bg: rgba(255,255,255,.2);--color-btn-danger-selected-text: #ffffff;--color-btn-danger-selected-bg: #b62324;--color-btn-danger-selected-border: #ff7b72;--color-btn-danger-selected-shadow: 0 0 transparent;--color-btn-danger-disabled-text: rgba(248,81,73,.5);--color-btn-danger-disabled-bg: #0d1117;--color-btn-danger-disabled-counter-bg: rgba(218,54,51,.05);--color-btn-danger-focus-border: #f85149;--color-btn-danger-focus-shadow: 0 0 0 3px rgba(248,81,73,.4);--color-btn-danger-counter-bg: rgba(218,54,51,.1);--color-btn-danger-icon: #f85149;--color-underlinenav-icon: #484f58;--color-underlinenav-border-hover: rgba(110,118,129,.4);--color-fg-default: #c9d1d9;--color-fg-muted: #8b949e;--color-fg-subtle: #484f58;--color-fg-on-emphasis: #f0f6fc;--color-canvas-default: #0d1117;--color-canvas-overlay: #161b22;--color-canvas-inset: #010409;--color-canvas-subtle: #161b22;--color-border-default: #30363d;--color-border-muted: #21262d;--color-border-subtle: rgba(240,246,252,.1);--color-shadow-small: 0 0 transparent;--color-shadow-medium: 0 3px 6px #010409;--color-shadow-large: 0 8px 24px #010409;--color-shadow-extra-large: 0 12px 48px #010409;--color-neutral-emphasis-plus: #6e7681;--color-neutral-emphasis: #6e7681;--color-neutral-muted: rgba(110,118,129,.4);--color-neutral-subtle: rgba(110,118,129,.1);--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-accent-muted: rgba(56,139,253,.4);--color-accent-subtle: rgba(56,139,253,.15);--color-success-fg: #3fb950;--color-success-emphasis: #238636;--color-success-muted: rgba(46,160,67,.4);--color-success-subtle: rgba(46,160,67,.15);--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-attention-muted: rgba(187,128,9,.4);--color-attention-subtle: rgba(187,128,9,.15);--color-severe-fg: #db6d28;--color-severe-emphasis: #bd561d;--color-severe-muted: rgba(219,109,40,.4);--color-severe-subtle: rgba(219,109,40,.15);--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-danger-muted: rgba(248,81,73,.4);--color-danger-subtle: rgba(248,81,73,.15);--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-done-muted: rgba(163,113,247,.4);--color-done-subtle: rgba(163,113,247,.15);--color-sponsors-fg: #db61a2;--color-sponsors-emphasis: #bf4b8a;--color-sponsors-muted: rgba(219,97,162,.4);--color-sponsors-subtle: rgba(219,97,162,.15);--color-primer-canvas-backdrop: rgba(1,4,9,.8);--color-primer-canvas-sticky: rgba(13,17,23,.95);--color-primer-border-active: #F78166;--color-primer-border-contrast: rgba(240,246,252,.2);--color-primer-shadow-highlight: 0 0 transparent;--color-primer-shadow-inset: 0 0 transparent;--color-primer-shadow-focus: 0 0 0 3px #0c2d6b;--color-scale-black: #010409;--color-scale-white: #f0f6fc;--color-scale-gray-0: #f0f6fc;--color-scale-gray-1: #c9d1d9;--color-scale-gray-2: #b1bac4;--color-scale-gray-3: #8b949e;--color-scale-gray-4: #6e7681;--color-scale-gray-5: #484f58;--color-scale-gray-6: #30363d;--color-scale-gray-7: #21262d;--color-scale-gray-8: #161b22;--color-scale-gray-9: #0d1117;--color-scale-blue-0: #cae8ff;--color-scale-blue-1: #a5d6ff;--color-scale-blue-2: #79c0ff;--color-scale-blue-3: #58a6ff;--color-scale-blue-4: #388bfd;--color-scale-blue-5: #1f6feb;--color-scale-blue-6: #1158c7;--color-scale-blue-7: #0d419d;--color-scale-blue-8: #0c2d6b;--color-scale-blue-9: #051d4d;--color-scale-green-0: #aff5b4;--color-scale-green-1: #7ee787;--color-scale-green-2: #56d364;--color-scale-green-3: #3fb950;--color-scale-green-4: #2ea043;--color-scale-green-5: #238636;--color-scale-green-6: #196c2e;--color-scale-green-7: #0f5323;--color-scale-green-8: #033a16;--color-scale-green-9: #04260f;--color-scale-yellow-0: #f8e3a1;--color-scale-yellow-1: #f2cc60;--color-scale-yellow-2: #e3b341;--color-scale-yellow-3: #d29922;--color-scale-yellow-4: #bb8009;--color-scale-yellow-5: #9e6a03;--color-scale-yellow-6: #845306;--color-scale-yellow-7: #693e00;--color-scale-yellow-8: #4b2900;--color-scale-yellow-9: #341a00;--color-scale-orange-0: #ffdfb6;--color-scale-orange-1: #ffc680;--color-scale-orange-2: #ffa657;--color-scale-orange-3: #f0883e;--color-scale-orange-4: #db6d28;--color-scale-orange-5: #bd561d;--color-scale-orange-6: #9b4215;--color-scale-orange-7: #762d0a;--color-scale-orange-8: #5a1e02;--color-scale-orange-9: #3d1300;--color-scale-red-0: #ffdcd7;--color-scale-red-1: #ffc1ba;--color-scale-red-2: #ffa198;--color-scale-red-3: #ff7b72;--color-scale-red-4: #f85149;--color-scale-red-5: #da3633;--color-scale-red-6: #b62324;--color-scale-red-7: #8e1519;--color-scale-red-8: #67060c;--color-scale-red-9: #490202;--color-scale-purple-0: #eddeff;--color-scale-purple-1: #e2c5ff;--color-scale-purple-2: #d2a8ff;--color-scale-purple-3: #bc8cff;--color-scale-purple-4: #a371f7;--color-scale-purple-5: #8957e5;--color-scale-purple-6: #6e40c9;--color-scale-purple-7: #553098;--color-scale-purple-8: #3c1e70;--color-scale-purple-9: #271052;--color-scale-pink-0: #ffdaec;--color-scale-pink-1: #ffbedd;--color-scale-pink-2: #ff9bce;--color-scale-pink-3: #f778ba;--color-scale-pink-4: #db61a2;--color-scale-pink-5: #bf4b8a;--color-scale-pink-6: #9e3670;--color-scale-pink-7: #7d2457;--color-scale-pink-8: #5e103e;--color-scale-pink-9: #42062a;--color-scale-coral-0: #FFDDD2;--color-scale-coral-1: #FFC2B2;--color-scale-coral-2: #FFA28B;--color-scale-coral-3: #F78166;--color-scale-coral-4: #EA6045;--color-scale-coral-5: #CF462D;--color-scale-coral-6: #AC3220;--color-scale-coral-7: #872012;--color-scale-coral-8: #640D04;--color-scale-coral-9: #460701 }:root{color-scheme:light dark}body{--transparent-blue: #2196F355;--light-pink: #ff69b460;--gray: #888888;--sidebar-width: 250px;--box-shadow: rgba(0, 0, 0, .133) 0px 1.6px 3.6px 0px, rgba(0, 0, 0, .11) 0px .3px .9px 0px}html,body{width:100%;height:100%;padding:0;margin:0;overflow:hidden;display:flex;overscroll-behavior-x:none}#root{width:100%;height:100%;display:flex}body,dialog{background-color:var(--vscode-panel-background);color:var(--vscode-foreground);font-family:var(--vscode-font-family);font-weight:var(--vscode-font-weight);font-size:var(--vscode-font-size);-webkit-font-smoothing:antialiased}a{color:var(--vscode-textLink-foreground)}dialog{border:none;padding:0;box-shadow:var(--box-shadow);line-height:28px;max-width:400px}dialog .title{display:flex;align-items:center;margin:0;padding:0 5px;height:32px;background-color:var(--vscode-sideBar-background);max-width:400px}dialog .title .codicon{margin-right:3px}dialog .body{padding:10px;text-align:center}.button{color:var(--vscode-button-foreground);background:var(--vscode-button-background);margin:10px;border:none;height:28px;min-width:40px;cursor:pointer;-webkit-user-select:none;user-select:none}.button:focus{outline:1px solid var(--vscode-focusBorder)}.button:hover{background:var(--vscode-button-hoverBackground)}.button.secondary{color:var(--vscode-button-secondaryForeground);background:var(--vscode-button-secondaryBackground)}.button.secondary:hover{background:var(--vscode-button-secondaryHoverBackground)}*{box-sizing:border-box;min-width:0;min-height:0}*[hidden],.hidden{display:none!important}.invisible{visibility:hidden!important}svg{fill:currentColor}.vbox{display:flex;flex-direction:column;flex:auto;position:relative}.fill{position:absolute;top:0;right:0;bottom:0;left:0}.hbox{display:flex;flex:auto;position:relative}.spacer{flex:auto}.codicon-check{color:var(--vscode-charts-green)}.codicon-error{color:var(--vscode-errorForeground)}.codicon-warning{color:var(--vscode-list-warningForeground)}.codicon-circle-outline{color:var(--vscode-disabledForeground)}input[type=text],input[type=search]{color:var(--vscode-input-foreground);background-color:var(--vscode-input-background);border:none;outline:none}.codicon-loading{animation:spin 1s infinite linear}::placeholder{color:var(--vscode-input-placeholderForeground)}@keyframes spin{to{transform:rotate(360deg)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--color-canvas-default);color:var(--color-fg-default)}body *{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}#root{height:100%}button{background:none;border:none;color:var(--color-fg-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}button:hover{color:var(--color-fg-default)}svg{fill:none}.dashboard-view{--interactive-orange: 238 134 12;--recording-red: 239 68 68;display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden;position:relative}.dashboard-view.has-annotate-sidebar{flex-direction:row}.dashboard-main{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.mode-toggle.toolbar-button.toggled,.mode-toggle.toolbar-button.toggled>.codicon{color:var(--color-fg-on-emphasis)}.mode-toggle.toolbar-button.toggled.mode-interactive{background:rgb(var(--interactive-orange));box-shadow:0 0 0 2px rgb(var(--interactive-orange) / .35)}.mode-toggle.toolbar-button.toggled.mode-record{background:rgb(var(--recording-red));box-shadow:0 0 0 2px rgb(var(--recording-red) / .35)}.mode-toggle.flash{animation:mode-toggle-flash .45s ease-in-out 4}@keyframes mode-toggle-flash{0%,to{box-shadow:0 0 rgb(var(--interactive-orange) / 0)}50%{box-shadow:0 0 0 4px rgb(var(--interactive-orange) / .6);background:rgb(var(--interactive-orange) / .25)}}.toolbar{display:flex;align-items:center;gap:4px;height:40px;min-height:40px;background:var(--color-canvas-overlay);padding:0 8px;position:relative;z-index:100;border-bottom:1px solid var(--color-border-muted);overflow:visible}:root.light-mode .toolbar{background:var(--color-canvas-subtle)}.browser-window{display:flex;flex-direction:column;border:1px solid var(--color-border-default);border-radius:10px;overflow:hidden;box-shadow:0 4px 20px #0003;background:var(--color-canvas-default);position:relative}.browser-chrome{display:flex;align-items:center;gap:4px;height:40px;min-height:40px;padding:0 8px;background:var(--color-canvas-overlay);border-bottom:1px solid var(--color-border-muted);position:relative;overflow:visible}:root.light-mode .browser-chrome{background:var(--color-canvas-subtle)}.omnibox-wrap{flex:1;display:flex;align-items:center;position:relative;min-width:0}.nav-btn{width:32px;height:32px;border-radius:50%}.nav-btn:hover{background:var(--color-neutral-subtle)}.nav-btn:active{background:var(--color-neutral-muted)}.nav-btn[aria-disabled]{color:var(--color-fg-subtle);cursor:default}.nav-btn[aria-disabled]:hover{background:none}.nav-btn svg{width:18px;height:18px}.omnibox{flex:1;height:30px;padding:0 12px;font-size:13px;font-family:inherit;background:var(--color-canvas-inset);color:var(--color-fg-default);border:1px solid var(--color-border-default);border-radius:16px;outline:none;min-width:0}:root.light-mode .omnibox{background:var(--color-canvas-default)}.omnibox:focus{border-color:var(--color-accent-fg);background:var(--color-canvas-default);box-shadow:0 0 0 2px var(--color-accent-muted)}:root.light-mode .omnibox:focus{background:var(--color-canvas-default)}.omnibox::placeholder{color:var(--color-fg-subtle)}.omnibox::selection{background:var(--color-accent-muted)}.omnibox[aria-disabled]{color:var(--color-fg-subtle);cursor:default}.viewport-wrapper{flex:1;display:flex;overflow:hidden;position:relative;min-height:0}.viewport-main{flex:1;display:flex;align-items:center;justify-content:center;position:relative;min-width:0;min-height:0}.screen{position:relative;outline:none;flex:1;min-height:0;width:100%}.display{display:block;width:100%;height:100%;background:var(--color-canvas-subtle);object-fit:contain}.screen-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:14px;z-index:10;pointer-events:none;background:var(--color-canvas-subtle);color:var(--color-fg-subtle)}.screen-overlay.has-frame{background:#c8c8c880}.screen-overlay.has-frame>span{background:#fff6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#000c;padding:12px 24px;border-radius:12px;font-weight:500;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 24px 12px #fff3}.mode-record.toggled>.codicon{animation:mode-record-pulse 1.5s ease-in-out infinite}@keyframes mode-record-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.mode-record-label{display:inline-block;margin-left:5px;white-space:nowrap;animation:mode-record-label-slide-in .3s ease both}@keyframes mode-record-label-slide-in{0%{max-width:0;opacity:0;overflow:hidden}to{max-width:100px;opacity:1;overflow:hidden}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0000008c;z-index:1000;padding:24px}.modal{display:flex;flex-direction:column;width:100%;height:100%;background:var(--color-canvas-default);border:1px solid var(--color-border-default);border-radius:10px;box-shadow:0 10px 40px #00000073;overflow:hidden}.modal-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:4px;height:40px;min-height:40px;background:var(--color-canvas-overlay);padding:0 8px;border-bottom:1px solid var(--color-border-muted)}:root.light-mode .modal-toolbar{background:var(--color-canvas-subtle)}.modal-title{margin-right:auto;padding-left:4px;font-size:13px;font-weight:600;color:var(--color-fg-default)}.modal-body{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:16px}.recording-body{background:#000}.recording-video{max-width:100%;max-height:100%;object-fit:contain;display:block}:root{--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #616161;--vscode-disabledForeground: rgba(97, 97, 97, .5);--vscode-errorForeground: #a1260d;--vscode-descriptionForeground: #717171;--vscode-icon-foreground: #424242;--vscode-focusBorder: #0090f1;--vscode-textSeparator-foreground: rgba(0, 0, 0, .18);--vscode-textLink-foreground: #006ab1;--vscode-textLink-activeForeground: #006ab1;--vscode-textPreformat-foreground: #a31515;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(220, 220, 220, .4);--vscode-widget-shadow: rgba(0, 0, 0, .16);--vscode-input-background: #ffffff;--vscode-input-foreground: #616161;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(184, 184, 184, .31);--vscode-inputOption-activeBackground: rgba(0, 144, 241, .2);--vscode-inputOption-activeForeground: #000000;--vscode-input-placeholderForeground: #767676;--vscode-inputValidation-infoBackground: #d6ecf2;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #f6f5d2;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #f2dede;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #ffffff;--vscode-dropdown-border: #cecece;--vscode-checkbox-background: #ffffff;--vscode-checkbox-border: #cecece;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #007acc;--vscode-button-hoverBackground: #0062a3;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #5f6a79;--vscode-button-secondaryHoverBackground: #4c5561;--vscode-badge-background: #c4c4c4;--vscode-badge-foreground: #333333;--vscode-scrollbar-shadow: #dddddd;--vscode-scrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #e51400;--vscode-editorWarning-foreground: #bf8803;--vscode-editorInfo-foreground: #1a85ff;--vscode-editorHint-foreground: #6c6c6c;--vscode-sash-hoverBorder: #0090f1;--vscode-editor-background: #ffffff;--vscode-editor-foreground: #000000;--vscode-editorStickyScroll-background: #ffffff;--vscode-editorStickyScrollHover-background: #f0f0f0;--vscode-editorWidget-background: #f3f3f3;--vscode-editorWidget-foreground: #616161;--vscode-editorWidget-border: #c8c8c8;--vscode-quickInput-background: #f3f3f3;--vscode-quickInput-foreground: #616161;--vscode-quickInputTitle-background: rgba(0, 0, 0, .06);--vscode-pickerGroup-foreground: #0066bf;--vscode-pickerGroup-border: #cccedb;--vscode-keybindingLabel-background: rgba(221, 221, 221, .4);--vscode-keybindingLabel-foreground: #555555;--vscode-keybindingLabel-border: rgba(204, 204, 204, .4);--vscode-keybindingLabel-bottomBorder: rgba(187, 187, 187, .4);--vscode-editor-selectionBackground: #add6ff;--vscode-editor-inactiveSelectionBackground: #e5ebf1;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .5);--vscode-editor-findMatchBackground: #a8ac94;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(180, 180, 180, .3);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(173, 214, 255, .15);--vscode-editorHoverWidget-background: #f3f3f3;--vscode-editorHoverWidget-foreground: #616161;--vscode-editorHoverWidget-border: #c8c8c8;--vscode-editorHoverWidget-statusBarBackground: #e7e7e7;--vscode-editorLink-activeForeground: #0000ff;--vscode-editorInlayHint-foreground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-background: rgba(196, 196, 196, .3);--vscode-editorInlayHint-typeForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-typeBackground: rgba(196, 196, 196, .3);--vscode-editorInlayHint-parameterForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-parameterBackground: rgba(196, 196, 196, .3);--vscode-editorLightBulb-foreground: #ddb100;--vscode-editorLightBulbAutoFix-foreground: #007acc;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .4);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .3);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(34, 34, 34, .2);--vscode-list-focusOutline: #0090f1;--vscode-list-focusAndSelectionOutline: #90c2f9;--vscode-list-activeSelectionBackground: #0060c0;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #e4e6f1;--vscode-list-hoverBackground: #e8e8e8;--vscode-list-dropBackground: #d6ebff;--vscode-list-highlightForeground: #0066bf;--vscode-list-focusHighlightForeground: #bbe7ff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #b01011;--vscode-list-warningForeground: #855f00;--vscode-listFilterWidget-background: #f3f3f3;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .16);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #a9a9a9;--vscode-tree-tableColumnsBorder: rgba(97, 97, 97, .13);--vscode-tree-tableOddRowsBackground: rgba(97, 97, 97, .04);--vscode-list-deemphasizedForeground: #8e8e90;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #0060c0;--vscode-menu-foreground: #616161;--vscode-menu-background: #ffffff;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #0060c0;--vscode-menu-separatorBackground: #d4d4d4;--vscode-toolbar-hoverBackground: rgba(184, 184, 184, .31);--vscode-toolbar-activeBackground: rgba(166, 166, 166, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(10, 50, 100, .2);--vscode-editor-snippetFinalTabstopHighlightBorder: rgba(10, 50, 100, .5);--vscode-breadcrumb-foreground: rgba(97, 97, 97, .8);--vscode-breadcrumb-background: #ffffff;--vscode-breadcrumb-focusForeground: #4e4e4e;--vscode-breadcrumb-activeSelectionForeground: #4e4e4e;--vscode-breadcrumbPicker-background: #f3f3f3;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #c9c9c9;--vscode-minimap-selectionHighlight: #add6ff;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #bf8803;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(100, 100, 100, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(0, 0, 0, .3);--vscode-problemsErrorIcon-foreground: #e51400;--vscode-problemsWarningIcon-foreground: #bf8803;--vscode-problemsInfoIcon-foreground: #1a85ff;--vscode-charts-foreground: #616161;--vscode-charts-lines: rgba(97, 97, 97, .5);--vscode-charts-red: #e51400;--vscode-charts-blue: #1a85ff;--vscode-charts-yellow: #bf8803;--vscode-charts-orange: #d18616;--vscode-charts-green: #388a34;--vscode-charts-purple: #652d90;--vscode-editor-lineHighlightBorder: #eeeeee;--vscode-editor-rangeHighlightBackground: rgba(253, 255, 0, .2);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #000000;--vscode-editorWhitespace-foreground: rgba(51, 51, 51, .2);--vscode-editorIndentGuide-background: #d3d3d3;--vscode-editorIndentGuide-activeBackground: #939393;--vscode-editorLineNumber-foreground: #237893;--vscode-editorActiveLineNumber-foreground: #0b216f;--vscode-editorLineNumber-activeForeground: #0b216f;--vscode-editorRuler-foreground: #d3d3d3;--vscode-editorCodeLens-foreground: #919191;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #b9b9b9;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #ffffff;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .47);--vscode-editorGhostText-foreground: rgba(0, 0, 0, .47);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #bf8803;--vscode-editorOverviewRuler-infoForeground: #1a85ff;--vscode-editorBracketHighlight-foreground1: #0431fa;--vscode-editorBracketHighlight-foreground2: #319331;--vscode-editorBracketHighlight-foreground3: #7b3814;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #cea33d;--vscode-editorUnicodeHighlight-background: rgba(206, 163, 61, .08);--vscode-symbolIcon-arrayForeground: #616161;--vscode-symbolIcon-booleanForeground: #616161;--vscode-symbolIcon-classForeground: #d67e00;--vscode-symbolIcon-colorForeground: #616161;--vscode-symbolIcon-constantForeground: #616161;--vscode-symbolIcon-constructorForeground: #652d90;--vscode-symbolIcon-enumeratorForeground: #d67e00;--vscode-symbolIcon-enumeratorMemberForeground: #007acc;--vscode-symbolIcon-eventForeground: #d67e00;--vscode-symbolIcon-fieldForeground: #007acc;--vscode-symbolIcon-fileForeground: #616161;--vscode-symbolIcon-folderForeground: #616161;--vscode-symbolIcon-functionForeground: #652d90;--vscode-symbolIcon-interfaceForeground: #007acc;--vscode-symbolIcon-keyForeground: #616161;--vscode-symbolIcon-keywordForeground: #616161;--vscode-symbolIcon-methodForeground: #652d90;--vscode-symbolIcon-moduleForeground: #616161;--vscode-symbolIcon-namespaceForeground: #616161;--vscode-symbolIcon-nullForeground: #616161;--vscode-symbolIcon-numberForeground: #616161;--vscode-symbolIcon-objectForeground: #616161;--vscode-symbolIcon-operatorForeground: #616161;--vscode-symbolIcon-packageForeground: #616161;--vscode-symbolIcon-propertyForeground: #616161;--vscode-symbolIcon-referenceForeground: #616161;--vscode-symbolIcon-snippetForeground: #616161;--vscode-symbolIcon-stringForeground: #616161;--vscode-symbolIcon-structForeground: #616161;--vscode-symbolIcon-textForeground: #616161;--vscode-symbolIcon-typeParameterForeground: #616161;--vscode-symbolIcon-unitForeground: #616161;--vscode-symbolIcon-variableForeground: #007acc;--vscode-editorHoverWidget-highlightForeground: #0066bf;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(173, 214, 255, .3);--vscode-editorGutter-foldingControlForeground: #424242;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .25);--vscode-editor-wordHighlightStrongBackground: rgba(14, 99, 156, .25);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(26, 133, 255, .1);--vscode-peekViewTitleLabel-foreground: #000000;--vscode-peekViewTitleDescription-foreground: #616161;--vscode-peekView-border: #1a85ff;--vscode-peekViewResult-background: #f3f3f3;--vscode-peekViewResult-lineForeground: #646465;--vscode-peekViewResult-fileForeground: #1e1e1e;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #6c6c6c;--vscode-peekViewEditor-background: #f2f8fc;--vscode-peekViewEditorGutter-background: #f2f8fc;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(245, 216, 2, .87);--vscode-editorMarkerNavigationError-background: #e51400;--vscode-editorMarkerNavigationError-headerBackground: rgba(229, 20, 0, .1);--vscode-editorMarkerNavigationWarning-background: #bf8803;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(191, 136, 3, .1);--vscode-editorMarkerNavigationInfo-background: #1a85ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(26, 133, 255, .1);--vscode-editorMarkerNavigation-background: #ffffff;--vscode-editorSuggestWidget-background: #f3f3f3;--vscode-editorSuggestWidget-border: #c8c8c8;--vscode-editorSuggestWidget-foreground: #000000;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #0060c0;--vscode-editorSuggestWidget-highlightForeground: #0066bf;--vscode-editorSuggestWidget-focusHighlightForeground: #bbe7ff;--vscode-editorSuggestWidgetStatus-foreground: rgba(0, 0, 0, .5);--vscode-tab-activeBackground: #ffffff;--vscode-tab-unfocusedActiveBackground: #ffffff;--vscode-tab-inactiveBackground: #ececec;--vscode-tab-unfocusedInactiveBackground: #ececec;--vscode-tab-activeForeground: #333333;--vscode-tab-inactiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedActiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedInactiveForeground: rgba(51, 51, 51, .35);--vscode-tab-border: #f3f3f3;--vscode-tab-lastPinnedBorder: rgba(97, 97, 97, .19);--vscode-tab-activeModifiedBorder: #33aaee;--vscode-tab-inactiveModifiedBorder: rgba(51, 170, 238, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 170, 238, .7);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 170, 238, .25);--vscode-editorPane-background: #ffffff;--vscode-editorGroupHeader-tabsBackground: #f3f3f3;--vscode-editorGroupHeader-noTabsBackground: #ffffff;--vscode-editorGroup-border: #e7e7e7;--vscode-editorGroup-dropBackground: rgba(38, 119, 203, .18);--vscode-editorGroup-dropIntoPromptForeground: #616161;--vscode-editorGroup-dropIntoPromptBackground: #f3f3f3;--vscode-sideBySideEditor-horizontalBorder: #e7e7e7;--vscode-sideBySideEditor-verticalBorder: #e7e7e7;--vscode-panel-background: #ffffff;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #424242;--vscode-panelTitle-inactiveForeground: rgba(66, 66, 66, .75);--vscode-panelTitle-activeBorder: #424242;--vscode-panelInput-border: #dddddd;--vscode-panel-dropBorder: #424242;--vscode-panelSection-dropBackground: rgba(38, 119, 203, .18);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #004386;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #1a85ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #725102;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #2c2c2c;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #f3f3f3;--vscode-sideBarTitle-foreground: #6f6f6f;--vscode-sideBar-dropBackground: rgba(38, 119, 203, .18);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(97, 97, 97, .19);--vscode-titleBar-activeForeground: #333333;--vscode-titleBar-inactiveForeground: rgba(51, 51, 51, .6);--vscode-titleBar-activeBackground: #dddddd;--vscode-titleBar-inactiveBackground: rgba(221, 221, 221, .6);--vscode-menubar-selectionForeground: #333333;--vscode-menubar-selectionBackground: rgba(184, 184, 184, .31);--vscode-notifications-foreground: #616161;--vscode-notifications-background: #f3f3f3;--vscode-notificationLink-foreground: #006ab1;--vscode-notificationCenterHeader-background: #e7e7e7;--vscode-notifications-border: #e7e7e7;--vscode-notificationsErrorIcon-foreground: #e51400;--vscode-notificationsWarningIcon-foreground: #bf8803;--vscode-notificationsInfoIcon-foreground: #1a85ff;--vscode-commandCenter-foreground: #333333;--vscode-commandCenter-activeForeground: #333333;--vscode-commandCenter-activeBackground: rgba(184, 184, 184, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(97, 97, 97, .5);--vscode-editorCommentsWidget-unresolvedBorder: #1a85ff;--vscode-editorCommentsWidget-rangeBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(26, 133, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(26, 133, 255, .4);--vscode-editorGutter-commentRangeForeground: #d5d8e9;--vscode-debugToolBar-background: #f3f3f3;--vscode-debugIcon-startForeground: #388a34;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 102, .45);--vscode-editor-focusedStackFrameHighlightBackground: rgba(206, 231, 206, .45);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .4);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #444444;--vscode-settings-modifiedItemIndicator: #66afe0;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #ffffff;--vscode-settings-dropdownBorder: #cecece;--vscode-settings-dropdownListBorder: #c8c8c8;--vscode-settings-checkboxBackground: #ffffff;--vscode-settings-checkboxBorder: #cecece;--vscode-settings-textInputBackground: #ffffff;--vscode-settings-textInputForeground: #616161;--vscode-settings-textInputBorder: #cecece;--vscode-settings-numberInputBackground: #ffffff;--vscode-settings-numberInputForeground: #616161;--vscode-settings-numberInputBorder: #cecece;--vscode-settings-focusedRowBackground: rgba(232, 232, 232, .6);--vscode-settings-rowHoverBackground: rgba(232, 232, 232, .3);--vscode-settings-focusedRowBorder: rgba(0, 0, 0, .12);--vscode-terminal-foreground: #333333;--vscode-terminal-selectionBackground: #add6ff;--vscode-terminal-inactiveSelectionBackground: #e5ebf1;--vscode-terminalCommandDecoration-defaultBackground: rgba(0, 0, 0, .25);--vscode-terminalCommandDecoration-successBackground: #2090d3;--vscode-terminalCommandDecoration-errorBackground: #e51400;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #a8ac94;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(38, 119, 203, .18);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #e51400;--vscode-testing-peekHeaderBackground: rgba(229, 20, 0, .1);--vscode-testing-message\.error\.decorationForeground: #e51400;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(0, 0, 0, .5);--vscode-welcomePage-tileBackground: #f3f3f3;--vscode-welcomePage-tileHoverBackground: #dbdbdb;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .16);--vscode-welcomePage-progress\.background: #ffffff;--vscode-welcomePage-progress\.foreground: #006ab1;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #f1dfde;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(0, 0, 0, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #2090d3;--vscode-editorGutter-addedBackground: #48985d;--vscode-editorGutter-deletedBackground: #e51400;--vscode-minimapGutter-modifiedBackground: #2090d3;--vscode-minimapGutter-addedBackground: #48985d;--vscode-minimapGutter-deletedBackground: #e51400;--vscode-editorOverviewRuler-modifiedForeground: rgba(32, 144, 211, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 152, 93, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(229, 20, 0, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #be8700;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #e8e8e8;--vscode-notebook-focusedEditorBorder: #0090f1;--vscode-notebookStatusSuccessIcon-foreground: #388a34;--vscode-notebookStatusErrorIcon-foreground: #a1260d;--vscode-notebookStatusRunningIcon-foreground: #616161;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: rgba(200, 221, 241, .31);--vscode-notebook-selectedCellBorder: #e8e8e8;--vscode-notebook-focusedCellBorder: #0090f1;--vscode-notebook-inactiveFocusedCellBorder: #e8e8e8;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(0, 0, 0, .08);--vscode-notebook-cellInsertionIndicator: #0090f1;--vscode-notebookScrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-notebook-symbolHighlightBackground: rgba(253, 255, 0, .2);--vscode-notebook-cellEditorBackground: #f3f3f3;--vscode-notebook-editorBackground: #ffffff;--vscode-keybindingTable-headerBackground: rgba(97, 97, 97, .04);--vscode-keybindingTable-rowsBackground: rgba(97, 97, 97, .04);--vscode-scm-providerBorder: #c8c8c8;--vscode-searchEditor-textInputBorder: #cecece;--vscode-debugTokenExpression-name: #9b46b0;--vscode-debugTokenExpression-value: rgba(108, 108, 108, .8);--vscode-debugTokenExpression-string: #a31515;--vscode-debugTokenExpression-boolean: #0000ff;--vscode-debugTokenExpression-number: #098658;--vscode-debugTokenExpression-error: #e51400;--vscode-debugView-exceptionLabelForeground: #ffffff;--vscode-debugView-exceptionLabelBackground: #a31515;--vscode-debugView-stateLabelForeground: #616161;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #1a85ff;--vscode-debugConsole-warningForeground: #bf8803;--vscode-debugConsole-errorForeground: #a1260d;--vscode-debugConsole-sourceForeground: #616161;--vscode-debugConsoleInputIcon-foreground: #616161;--vscode-debugIcon-pauseForeground: #007acc;--vscode-debugIcon-stopForeground: #a1260d;--vscode-debugIcon-disconnectForeground: #a1260d;--vscode-debugIcon-restartForeground: #388a34;--vscode-debugIcon-stepOverForeground: #007acc;--vscode-debugIcon-stepIntoForeground: #007acc;--vscode-debugIcon-stepOutForeground: #007acc;--vscode-debugIcon-continueForeground: #007acc;--vscode-debugIcon-stepBackForeground: #007acc;--vscode-extensionButton-prominentBackground: #007acc;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #0062a3;--vscode-extensionIcon-starForeground: #df6100;--vscode-extensionIcon-verifiedForeground: #006ab1;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #b51e78;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #00bc00;--vscode-terminal-ansiYellow: #949800;--vscode-terminal-ansiBlue: #0451a5;--vscode-terminal-ansiMagenta: #bc05bc;--vscode-terminal-ansiCyan: #0598bc;--vscode-terminal-ansiWhite: #555555;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #cd3131;--vscode-terminal-ansiBrightGreen: #14ce14;--vscode-terminal-ansiBrightYellow: #b5ba00;--vscode-terminal-ansiBrightBlue: #0451a5;--vscode-terminal-ansiBrightMagenta: #bc05bc;--vscode-terminal-ansiBrightCyan: #0598bc;--vscode-terminal-ansiBrightWhite: #a5a5a5;--vscode-interactive-activeCodeBorder: #1a85ff;--vscode-interactive-inactiveCodeBorder: #e4e6f1;--vscode-gitDecoration-addedResourceForeground: #587c0c;--vscode-gitDecoration-modifiedResourceForeground: #895503;--vscode-gitDecoration-deletedResourceForeground: #ad0707;--vscode-gitDecoration-renamedResourceForeground: #007100;--vscode-gitDecoration-untrackedResourceForeground: #007100;--vscode-gitDecoration-ignoredResourceForeground: #8e8e90;--vscode-gitDecoration-stageModifiedResourceForeground: #895503;--vscode-gitDecoration-stageDeletedResourceForeground: #ad0707;--vscode-gitDecoration-conflictingResourceForeground: #ad0707;--vscode-gitDecoration-submoduleResourceForeground: #1258a7}:root.light-mode{color-scheme:light}:root.dark-mode{color-scheme:dark;--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #cccccc;--vscode-disabledForeground: rgba(204, 204, 204, .5);--vscode-errorForeground: #f48771;--vscode-descriptionForeground: rgba(204, 204, 204, .7);--vscode-icon-foreground: #c5c5c5;--vscode-focusBorder: #007fd4;--vscode-textSeparator-foreground: rgba(255, 255, 255, .18);--vscode-textLink-foreground: #3794ff;--vscode-textLink-activeForeground: #3794ff;--vscode-textPreformat-foreground: #d7ba7d;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(10, 10, 10, .4);--vscode-widget-shadow: rgba(0, 0, 0, .36);--vscode-input-background: #3c3c3c;--vscode-input-foreground: #cccccc;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(90, 93, 94, .5);--vscode-inputOption-activeBackground: rgba(0, 127, 212, .4);--vscode-inputOption-activeForeground: #ffffff;--vscode-input-placeholderForeground: #a6a6a6;--vscode-inputValidation-infoBackground: #063b49;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #352a05;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #5a1d1d;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #3c3c3c;--vscode-dropdown-foreground: #f0f0f0;--vscode-dropdown-border: #3c3c3c;--vscode-checkbox-background: #3c3c3c;--vscode-checkbox-foreground: #f0f0f0;--vscode-checkbox-border: #3c3c3c;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #0e639c;--vscode-button-hoverBackground: #1177bb;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #3a3d41;--vscode-button-secondaryHoverBackground: #45494e;--vscode-badge-background: #4d4d4d;--vscode-badge-foreground: #ffffff;--vscode-scrollbar-shadow: #000000;--vscode-scrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #f14c4c;--vscode-editorWarning-foreground: #cca700;--vscode-editorInfo-foreground: #3794ff;--vscode-editorHint-foreground: rgba(238, 238, 238, .7);--vscode-sash-hoverBorder: #007fd4;--vscode-editor-background: #1e1e1e;--vscode-editor-foreground: #d4d4d4;--vscode-editorStickyScroll-background: #1e1e1e;--vscode-editorStickyScrollHover-background: #2a2d2e;--vscode-editorWidget-background: #252526;--vscode-editorWidget-foreground: #cccccc;--vscode-editorWidget-border: #454545;--vscode-quickInput-background: #252526;--vscode-quickInput-foreground: #cccccc;--vscode-quickInputTitle-background: rgba(255, 255, 255, .1);--vscode-pickerGroup-foreground: #3794ff;--vscode-pickerGroup-border: #3f3f46;--vscode-keybindingLabel-background: rgba(128, 128, 128, .17);--vscode-keybindingLabel-foreground: #cccccc;--vscode-keybindingLabel-border: rgba(51, 51, 51, .6);--vscode-keybindingLabel-bottomBorder: rgba(68, 68, 68, .6);--vscode-editor-selectionBackground: #264f78;--vscode-editor-inactiveSelectionBackground: #3a3d41;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .15);--vscode-editor-findMatchBackground: #515c6a;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(58, 61, 65, .4);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(38, 79, 120, .25);--vscode-editorHoverWidget-background: #252526;--vscode-editorHoverWidget-foreground: #cccccc;--vscode-editorHoverWidget-border: #454545;--vscode-editorHoverWidget-statusBarBackground: #2c2c2d;--vscode-editorLink-activeForeground: #4e94ce;--vscode-editorInlayHint-foreground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-background: rgba(77, 77, 77, .6);--vscode-editorInlayHint-typeForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-typeBackground: rgba(77, 77, 77, .6);--vscode-editorInlayHint-parameterForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-parameterBackground: rgba(77, 77, 77, .6);--vscode-editorLightBulb-foreground: #ffcc00;--vscode-editorLightBulbAutoFix-foreground: #75beff;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .2);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .4);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(204, 204, 204, .2);--vscode-list-focusOutline: #007fd4;--vscode-list-activeSelectionBackground: #04395e;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #37373d;--vscode-list-hoverBackground: #2a2d2e;--vscode-list-dropBackground: #383b3d;--vscode-list-highlightForeground: #2aaaff;--vscode-list-focusHighlightForeground: #2aaaff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #f88070;--vscode-list-warningForeground: #cca700;--vscode-listFilterWidget-background: #252526;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .36);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #585858;--vscode-tree-tableColumnsBorder: rgba(204, 204, 204, .13);--vscode-tree-tableOddRowsBackground: rgba(204, 204, 204, .04);--vscode-list-deemphasizedForeground: #8c8c8c;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #04395e;--vscode-menu-foreground: #cccccc;--vscode-menu-background: #303031;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #04395e;--vscode-menu-separatorBackground: #606060;--vscode-toolbar-hoverBackground: rgba(90, 93, 94, .31);--vscode-toolbar-activeBackground: rgba(99, 102, 103, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(124, 124, 124, .3);--vscode-editor-snippetFinalTabstopHighlightBorder: #525252;--vscode-breadcrumb-foreground: rgba(204, 204, 204, .8);--vscode-breadcrumb-background: #1e1e1e;--vscode-breadcrumb-focusForeground: #e0e0e0;--vscode-breadcrumb-activeSelectionForeground: #e0e0e0;--vscode-breadcrumbPicker-background: #252526;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #676767;--vscode-minimap-selectionHighlight: #264f78;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #cca700;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(121, 121, 121, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(191, 191, 191, .2);--vscode-problemsErrorIcon-foreground: #f14c4c;--vscode-problemsWarningIcon-foreground: #cca700;--vscode-problemsInfoIcon-foreground: #3794ff;--vscode-charts-foreground: #cccccc;--vscode-charts-lines: rgba(204, 204, 204, .5);--vscode-charts-red: #f14c4c;--vscode-charts-blue: #3794ff;--vscode-charts-yellow: #cca700;--vscode-charts-orange: #d18616;--vscode-charts-green: #89d185;--vscode-charts-purple: #b180d7;--vscode-editor-lineHighlightBorder: #282828;--vscode-editor-rangeHighlightBackground: rgba(255, 255, 255, .04);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #aeafad;--vscode-editorWhitespace-foreground: rgba(227, 228, 226, .16);--vscode-editorIndentGuide-background: #404040;--vscode-editorIndentGuide-activeBackground: #707070;--vscode-editorLineNumber-foreground: #858585;--vscode-editorActiveLineNumber-foreground: #c6c6c6;--vscode-editorLineNumber-activeForeground: #c6c6c6;--vscode-editorRuler-foreground: #5a5a5a;--vscode-editorCodeLens-foreground: #999999;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #888888;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #1e1e1e;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .67);--vscode-editorGhostText-foreground: rgba(255, 255, 255, .34);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #cca700;--vscode-editorOverviewRuler-infoForeground: #3794ff;--vscode-editorBracketHighlight-foreground1: #ffd700;--vscode-editorBracketHighlight-foreground2: #da70d6;--vscode-editorBracketHighlight-foreground3: #179fff;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #bd9b03;--vscode-editorUnicodeHighlight-background: rgba(189, 155, 3, .15);--vscode-symbolIcon-arrayForeground: #cccccc;--vscode-symbolIcon-booleanForeground: #cccccc;--vscode-symbolIcon-classForeground: #ee9d28;--vscode-symbolIcon-colorForeground: #cccccc;--vscode-symbolIcon-constantForeground: #cccccc;--vscode-symbolIcon-constructorForeground: #b180d7;--vscode-symbolIcon-enumeratorForeground: #ee9d28;--vscode-symbolIcon-enumeratorMemberForeground: #75beff;--vscode-symbolIcon-eventForeground: #ee9d28;--vscode-symbolIcon-fieldForeground: #75beff;--vscode-symbolIcon-fileForeground: #cccccc;--vscode-symbolIcon-folderForeground: #cccccc;--vscode-symbolIcon-functionForeground: #b180d7;--vscode-symbolIcon-interfaceForeground: #75beff;--vscode-symbolIcon-keyForeground: #cccccc;--vscode-symbolIcon-keywordForeground: #cccccc;--vscode-symbolIcon-methodForeground: #b180d7;--vscode-symbolIcon-moduleForeground: #cccccc;--vscode-symbolIcon-namespaceForeground: #cccccc;--vscode-symbolIcon-nullForeground: #cccccc;--vscode-symbolIcon-numberForeground: #cccccc;--vscode-symbolIcon-objectForeground: #cccccc;--vscode-symbolIcon-operatorForeground: #cccccc;--vscode-symbolIcon-packageForeground: #cccccc;--vscode-symbolIcon-propertyForeground: #cccccc;--vscode-symbolIcon-referenceForeground: #cccccc;--vscode-symbolIcon-snippetForeground: #cccccc;--vscode-symbolIcon-stringForeground: #cccccc;--vscode-symbolIcon-structForeground: #cccccc;--vscode-symbolIcon-textForeground: #cccccc;--vscode-symbolIcon-typeParameterForeground: #cccccc;--vscode-symbolIcon-unitForeground: #cccccc;--vscode-symbolIcon-variableForeground: #75beff;--vscode-editorHoverWidget-highlightForeground: #2aaaff;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(38, 79, 120, .3);--vscode-editorGutter-foldingControlForeground: #c5c5c5;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .72);--vscode-editor-wordHighlightStrongBackground: rgba(0, 73, 114, .72);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(55, 148, 255, .1);--vscode-peekViewTitleLabel-foreground: #ffffff;--vscode-peekViewTitleDescription-foreground: rgba(204, 204, 204, .7);--vscode-peekView-border: #3794ff;--vscode-peekViewResult-background: #252526;--vscode-peekViewResult-lineForeground: #bbbbbb;--vscode-peekViewResult-fileForeground: #ffffff;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #ffffff;--vscode-peekViewEditor-background: #001f33;--vscode-peekViewEditorGutter-background: #001f33;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(255, 143, 0, .6);--vscode-editorMarkerNavigationError-background: #f14c4c;--vscode-editorMarkerNavigationError-headerBackground: rgba(241, 76, 76, .1);--vscode-editorMarkerNavigationWarning-background: #cca700;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(204, 167, 0, .1);--vscode-editorMarkerNavigationInfo-background: #3794ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(55, 148, 255, .1);--vscode-editorMarkerNavigation-background: #1e1e1e;--vscode-editorSuggestWidget-background: #252526;--vscode-editorSuggestWidget-border: #454545;--vscode-editorSuggestWidget-foreground: #d4d4d4;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #04395e;--vscode-editorSuggestWidget-highlightForeground: #2aaaff;--vscode-editorSuggestWidget-focusHighlightForeground: #2aaaff;--vscode-editorSuggestWidgetStatus-foreground: rgba(212, 212, 212, .5);--vscode-tab-activeBackground: #1e1e1e;--vscode-tab-unfocusedActiveBackground: #1e1e1e;--vscode-tab-inactiveBackground: #2d2d2d;--vscode-tab-unfocusedInactiveBackground: #2d2d2d;--vscode-tab-activeForeground: #ffffff;--vscode-tab-inactiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedActiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedInactiveForeground: rgba(255, 255, 255, .25);--vscode-tab-border: #252526;--vscode-tab-lastPinnedBorder: rgba(204, 204, 204, .2);--vscode-tab-activeModifiedBorder: #3399cc;--vscode-tab-inactiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 153, 204, .25);--vscode-editorPane-background: #1e1e1e;--vscode-editorGroupHeader-tabsBackground: #252526;--vscode-editorGroupHeader-noTabsBackground: #1e1e1e;--vscode-editorGroup-border: #444444;--vscode-editorGroup-dropBackground: rgba(83, 89, 93, .5);--vscode-editorGroup-dropIntoPromptForeground: #cccccc;--vscode-editorGroup-dropIntoPromptBackground: #252526;--vscode-sideBySideEditor-horizontalBorder: #444444;--vscode-sideBySideEditor-verticalBorder: #444444;--vscode-panel-background: #1e1e1e;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #e7e7e7;--vscode-panelTitle-inactiveForeground: rgba(231, 231, 231, .6);--vscode-panelTitle-activeBorder: #e7e7e7;--vscode-panel-dropBorder: #e7e7e7;--vscode-panelSection-dropBackground: rgba(83, 89, 93, .5);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #04395e;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #3794ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #7a6400;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #333333;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #252526;--vscode-sideBarTitle-foreground: #bbbbbb;--vscode-sideBar-dropBackground: rgba(83, 89, 93, .5);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(204, 204, 204, .2);--vscode-titleBar-activeForeground: #cccccc;--vscode-titleBar-inactiveForeground: rgba(204, 204, 204, .6);--vscode-titleBar-activeBackground: #3c3c3c;--vscode-titleBar-inactiveBackground: rgba(60, 60, 60, .6);--vscode-menubar-selectionForeground: #cccccc;--vscode-menubar-selectionBackground: rgba(90, 93, 94, .31);--vscode-notifications-foreground: #cccccc;--vscode-notifications-background: #252526;--vscode-notificationLink-foreground: #3794ff;--vscode-notificationCenterHeader-background: #303031;--vscode-notifications-border: #303031;--vscode-notificationsErrorIcon-foreground: #f14c4c;--vscode-notificationsWarningIcon-foreground: #cca700;--vscode-notificationsInfoIcon-foreground: #3794ff;--vscode-commandCenter-foreground: #cccccc;--vscode-commandCenter-activeForeground: #cccccc;--vscode-commandCenter-activeBackground: rgba(90, 93, 94, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(204, 204, 204, .5);--vscode-editorCommentsWidget-unresolvedBorder: #3794ff;--vscode-editorCommentsWidget-rangeBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(55, 148, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(55, 148, 255, .4);--vscode-editorGutter-commentRangeForeground: #37373d;--vscode-debugToolBar-background: #333333;--vscode-debugIcon-startForeground: #89d185;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 0, .2);--vscode-editor-focusedStackFrameHighlightBackground: rgba(122, 189, 122, .3);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .2);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #e7e7e7;--vscode-settings-modifiedItemIndicator: #0c7d9d;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #3c3c3c;--vscode-settings-dropdownForeground: #f0f0f0;--vscode-settings-dropdownBorder: #3c3c3c;--vscode-settings-dropdownListBorder: #454545;--vscode-settings-checkboxBackground: #3c3c3c;--vscode-settings-checkboxForeground: #f0f0f0;--vscode-settings-checkboxBorder: #3c3c3c;--vscode-settings-textInputBackground: #3c3c3c;--vscode-settings-textInputForeground: #cccccc;--vscode-settings-numberInputBackground: #3c3c3c;--vscode-settings-numberInputForeground: #cccccc;--vscode-settings-focusedRowBackground: rgba(42, 45, 46, .6);--vscode-settings-rowHoverBackground: rgba(42, 45, 46, .3);--vscode-settings-focusedRowBorder: rgba(255, 255, 255, .12);--vscode-terminal-foreground: #cccccc;--vscode-terminal-selectionBackground: #264f78;--vscode-terminal-inactiveSelectionBackground: #3a3d41;--vscode-terminalCommandDecoration-defaultBackground: rgba(255, 255, 255, .25);--vscode-terminalCommandDecoration-successBackground: #1b81a8;--vscode-terminalCommandDecoration-errorBackground: #f14c4c;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #515c6a;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(83, 89, 93, .5);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #f14c4c;--vscode-testing-peekHeaderBackground: rgba(241, 76, 76, .1);--vscode-testing-message\.error\.decorationForeground: #f14c4c;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(212, 212, 212, .5);--vscode-welcomePage-tileBackground: #252526;--vscode-welcomePage-tileHoverBackground: #2c2c2d;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .36);--vscode-welcomePage-progress\.background: #3c3c3c;--vscode-welcomePage-progress\.foreground: #3794ff;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #420b0d;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(255, 255, 255, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #1b81a8;--vscode-editorGutter-addedBackground: #487e02;--vscode-editorGutter-deletedBackground: #f14c4c;--vscode-minimapGutter-modifiedBackground: #1b81a8;--vscode-minimapGutter-addedBackground: #487e02;--vscode-minimapGutter-deletedBackground: #f14c4c;--vscode-editorOverviewRuler-modifiedForeground: rgba(27, 129, 168, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 126, 2, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(241, 76, 76, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #ffcc00;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #37373d;--vscode-notebook-focusedEditorBorder: #007fd4;--vscode-notebookStatusSuccessIcon-foreground: #89d185;--vscode-notebookStatusErrorIcon-foreground: #f48771;--vscode-notebookStatusRunningIcon-foreground: #cccccc;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: #37373d;--vscode-notebook-selectedCellBorder: #37373d;--vscode-notebook-focusedCellBorder: #007fd4;--vscode-notebook-inactiveFocusedCellBorder: #37373d;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(255, 255, 255, .15);--vscode-notebook-cellInsertionIndicator: #007fd4;--vscode-notebookScrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-notebook-symbolHighlightBackground: rgba(255, 255, 255, .04);--vscode-notebook-cellEditorBackground: #252526;--vscode-notebook-editorBackground: #1e1e1e;--vscode-keybindingTable-headerBackground: rgba(204, 204, 204, .04);--vscode-keybindingTable-rowsBackground: rgba(204, 204, 204, .04);--vscode-scm-providerBorder: #454545;--vscode-debugTokenExpression-name: #c586c0;--vscode-debugTokenExpression-value: rgba(204, 204, 204, .6);--vscode-debugTokenExpression-string: #ce9178;--vscode-debugTokenExpression-boolean: #4e94ce;--vscode-debugTokenExpression-number: #b5cea8;--vscode-debugTokenExpression-error: #f48771;--vscode-debugView-exceptionLabelForeground: #cccccc;--vscode-debugView-exceptionLabelBackground: #6c2022;--vscode-debugView-stateLabelForeground: #cccccc;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #3794ff;--vscode-debugConsole-warningForeground: #cca700;--vscode-debugConsole-errorForeground: #f48771;--vscode-debugConsole-sourceForeground: #cccccc;--vscode-debugConsoleInputIcon-foreground: #cccccc;--vscode-debugIcon-pauseForeground: #75beff;--vscode-debugIcon-stopForeground: #f48771;--vscode-debugIcon-disconnectForeground: #f48771;--vscode-debugIcon-restartForeground: #89d185;--vscode-debugIcon-stepOverForeground: #75beff;--vscode-debugIcon-stepIntoForeground: #75beff;--vscode-debugIcon-stepOutForeground: #75beff;--vscode-debugIcon-continueForeground: #75beff;--vscode-debugIcon-stepBackForeground: #75beff;--vscode-extensionButton-prominentBackground: #0e639c;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #1177bb;--vscode-extensionIcon-starForeground: #ff8e00;--vscode-extensionIcon-verifiedForeground: #3794ff;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #d758b3;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #0dbc79;--vscode-terminal-ansiYellow: #e5e510;--vscode-terminal-ansiBlue: #2472c8;--vscode-terminal-ansiMagenta: #bc3fbc;--vscode-terminal-ansiCyan: #11a8cd;--vscode-terminal-ansiWhite: #e5e5e5;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #f14c4c;--vscode-terminal-ansiBrightGreen: #23d18b;--vscode-terminal-ansiBrightYellow: #f5f543;--vscode-terminal-ansiBrightBlue: #3b8eea;--vscode-terminal-ansiBrightMagenta: #d670d6;--vscode-terminal-ansiBrightCyan: #29b8db;--vscode-terminal-ansiBrightWhite: #e5e5e5;--vscode-interactive-activeCodeBorder: #3794ff;--vscode-interactive-inactiveCodeBorder: #37373d;--vscode-gitDecoration-addedResourceForeground: #81b88b;--vscode-gitDecoration-modifiedResourceForeground: #e2c08d;--vscode-gitDecoration-deletedResourceForeground: #c74e39;--vscode-gitDecoration-renamedResourceForeground: #73c991;--vscode-gitDecoration-untrackedResourceForeground: #73c991;--vscode-gitDecoration-ignoredResourceForeground: #8c8c8c;--vscode-gitDecoration-stageModifiedResourceForeground: #e2c08d;--vscode-gitDecoration-stageDeletedResourceForeground: #c74e39;--vscode-gitDecoration-conflictingResourceForeground: #e4676b;--vscode-gitDecoration-submoduleResourceForeground: #8db9e2}.toolbar-button{position:relative;flex:none;border:none;outline:none;color:var(--vscode-sideBarTitle-foreground);background:transparent;padding:4px;cursor:pointer;display:inline-flex;align-items:center;border-radius:4px}.toolbar-button:disabled{color:var(--vscode-disabledForeground)!important;cursor:default}.toolbar-button:not(:disabled):hover{background-color:var(--vscode-toolbar-hoverBackground)}.toolbar-button:not(:disabled):active{background-color:var(--vscode-toolbar-activeBackground)}.toolbar-button.toggled{color:var(--vscode-notificationLink-foreground)}.toolbar-button-error-badge{position:absolute;top:2px;right:2px;width:7px;height:7px;border-radius:50%;background-color:var(--vscode-notificationsErrorIcon-foreground)}.toolbar-separator{flex:none;background-color:var(--vscode-menu-separatorBackground);width:1px;padding:0;margin:5px 4px;height:16px}@font-face{font-family:codicon;src:url(/assets/codicon-DCmgc-ay.ttf) format("truetype")}.codicon{font: 16px/1 codicon;flex:none;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.codicon-add:before{content:"î© "}.codicon-plus:before{content:"î© "}.codicon-gist-new:before{content:"î© "}.codicon-repo-create:before{content:"î© "}.codicon-lightbulb:before{content:"î©¡"}.codicon-light-bulb:before{content:"î©¡"}.codicon-repo:before{content:"î©¢"}.codicon-repo-delete:before{content:"î©¢"}.codicon-gist-fork:before{content:"î©£"}.codicon-repo-forked:before{content:"î©£"}.codicon-git-pull-request:before{content:""}.codicon-git-pull-request-abandoned:before{content:""}.codicon-record-keys:before{content:"î©¥"}.codicon-keyboard:before{content:"î©¥"}.codicon-tag:before{content:""}.codicon-git-pull-request-label:before{content:""}.codicon-tag-add:before{content:""}.codicon-tag-remove:before{content:""}.codicon-person:before{content:"î©§"}.codicon-person-follow:before{content:"î©§"}.codicon-person-outline:before{content:"î©§"}.codicon-person-filled:before{content:"î©§"}.codicon-git-branch:before{content:""}.codicon-git-branch-create:before{content:""}.codicon-git-branch-delete:before{content:""}.codicon-source-control:before{content:""}.codicon-mirror:before{content:"î©©"}.codicon-mirror-public:before{content:"î©©"}.codicon-star:before{content:""}.codicon-star-add:before{content:""}.codicon-star-delete:before{content:""}.codicon-star-empty:before{content:""}.codicon-comment:before{content:"î©«"}.codicon-comment-add:before{content:"î©«"}.codicon-alert:before{content:""}.codicon-warning:before{content:""}.codicon-search:before{content:"î©­"}.codicon-search-save:before{content:"î©­"}.codicon-log-out:before{content:"î©®"}.codicon-sign-out:before{content:"î©®"}.codicon-log-in:before{content:""}.codicon-sign-in:before{content:""}.codicon-eye:before{content:"î©°"}.codicon-eye-unwatch:before{content:"î©°"}.codicon-eye-watch:before{content:"î©°"}.codicon-circle-filled:before{content:""}.codicon-primitive-dot:before{content:""}.codicon-close-dirty:before{content:""}.codicon-debug-breakpoint:before{content:""}.codicon-debug-breakpoint-disabled:before{content:""}.codicon-debug-hint:before{content:""}.codicon-terminal-decoration-success:before{content:""}.codicon-primitive-square:before{content:""}.codicon-edit:before{content:""}.codicon-pencil:before{content:""}.codicon-info:before{content:"î©´"}.codicon-issue-opened:before{content:"î©´"}.codicon-gist-private:before{content:""}.codicon-git-fork-private:before{content:""}.codicon-lock:before{content:""}.codicon-mirror-private:before{content:""}.codicon-close:before{content:"î©¶"}.codicon-remove-close:before{content:"î©¶"}.codicon-x:before{content:"î©¶"}.codicon-repo-sync:before{content:"î©·"}.codicon-sync:before{content:"î©·"}.codicon-clone:before{content:""}.codicon-desktop-download:before{content:""}.codicon-beaker:before{content:""}.codicon-microscope:before{content:""}.codicon-vm:before{content:""}.codicon-device-desktop:before{content:""}.codicon-file:before{content:"î©»"}.codicon-file-text:before{content:"î©»"}.codicon-more:before{content:""}.codicon-ellipsis:before{content:""}.codicon-kebab-horizontal:before{content:""}.codicon-mail-reply:before{content:""}.codicon-reply:before{content:""}.codicon-organization:before{content:""}.codicon-organization-filled:before{content:""}.codicon-organization-outline:before{content:""}.codicon-new-file:before{content:"î©¿"}.codicon-file-add:before{content:"î©¿"}.codicon-new-folder:before{content:""}.codicon-file-directory-create:before{content:""}.codicon-trash:before{content:""}.codicon-trashcan:before{content:""}.codicon-history:before{content:""}.codicon-clock:before{content:""}.codicon-folder:before{content:""}.codicon-file-directory:before{content:""}.codicon-symbol-folder:before{content:""}.codicon-logo-github:before{content:""}.codicon-mark-github:before{content:""}.codicon-github:before{content:""}.codicon-terminal:before{content:""}.codicon-console:before{content:""}.codicon-repl:before{content:""}.codicon-zap:before{content:""}.codicon-symbol-event:before{content:""}.codicon-error:before{content:""}.codicon-stop:before{content:""}.codicon-variable:before{content:""}.codicon-symbol-variable:before{content:""}.codicon-array:before{content:""}.codicon-symbol-array:before{content:""}.codicon-symbol-module:before{content:""}.codicon-symbol-package:before{content:""}.codicon-symbol-namespace:before{content:""}.codicon-symbol-object:before{content:""}.codicon-symbol-method:before{content:""}.codicon-symbol-function:before{content:""}.codicon-symbol-constructor:before{content:""}.codicon-symbol-boolean:before{content:""}.codicon-symbol-null:before{content:""}.codicon-symbol-numeric:before{content:""}.codicon-symbol-number:before{content:""}.codicon-symbol-structure:before{content:""}.codicon-symbol-struct:before{content:""}.codicon-symbol-parameter:before{content:""}.codicon-symbol-type-parameter:before{content:""}.codicon-symbol-key:before{content:""}.codicon-symbol-text:before{content:""}.codicon-symbol-reference:before{content:""}.codicon-go-to-file:before{content:""}.codicon-symbol-enum:before{content:""}.codicon-symbol-value:before{content:""}.codicon-symbol-ruler:before{content:""}.codicon-symbol-unit:before{content:""}.codicon-activate-breakpoints:before{content:""}.codicon-archive:before{content:""}.codicon-arrow-both:before{content:""}.codicon-arrow-down:before{content:""}.codicon-arrow-left:before{content:""}.codicon-arrow-right:before{content:""}.codicon-arrow-small-down:before{content:""}.codicon-arrow-small-left:before{content:""}.codicon-arrow-small-right:before{content:""}.codicon-arrow-small-up:before{content:""}.codicon-arrow-up:before{content:""}.codicon-bell:before{content:""}.codicon-bold:before{content:""}.codicon-book:before{content:""}.codicon-bookmark:before{content:""}.codicon-debug-breakpoint-conditional-unverified:before{content:""}.codicon-debug-breakpoint-conditional:before{content:""}.codicon-debug-breakpoint-conditional-disabled:before{content:""}.codicon-debug-breakpoint-data-unverified:before{content:""}.codicon-debug-breakpoint-data:before{content:""}.codicon-debug-breakpoint-data-disabled:before{content:""}.codicon-debug-breakpoint-log-unverified:before{content:""}.codicon-debug-breakpoint-log:before{content:""}.codicon-debug-breakpoint-log-disabled:before{content:""}.codicon-briefcase:before{content:""}.codicon-broadcast:before{content:""}.codicon-browser:before{content:""}.codicon-bug:before{content:""}.codicon-calendar:before{content:""}.codicon-case-sensitive:before{content:""}.codicon-check:before{content:""}.codicon-checklist:before{content:""}.codicon-chevron-down:before{content:""}.codicon-chevron-left:before{content:""}.codicon-chevron-right:before{content:""}.codicon-chevron-up:before{content:""}.codicon-chrome-close:before{content:""}.codicon-chrome-maximize:before{content:""}.codicon-chrome-minimize:before{content:""}.codicon-chrome-restore:before{content:""}.codicon-circle-outline:before{content:""}.codicon-circle:before{content:""}.codicon-debug-breakpoint-unverified:before{content:""}.codicon-terminal-decoration-incomplete:before{content:""}.codicon-circle-slash:before{content:""}.codicon-circuit-board:before{content:""}.codicon-clear-all:before{content:""}.codicon-clippy:before{content:""}.codicon-close-all:before{content:""}.codicon-cloud-download:before{content:""}.codicon-cloud-upload:before{content:""}.codicon-code:before{content:""}.codicon-collapse-all:before{content:""}.codicon-color-mode:before{content:""}.codicon-comment-discussion:before{content:""}.codicon-credit-card:before{content:""}.codicon-dash:before{content:""}.codicon-dashboard:before{content:""}.codicon-database:before{content:""}.codicon-debug-continue:before{content:""}.codicon-debug-disconnect:before{content:""}.codicon-debug-pause:before{content:""}.codicon-debug-restart:before{content:""}.codicon-debug-start:before{content:""}.codicon-debug-step-into:before{content:""}.codicon-debug-step-out:before{content:""}.codicon-debug-step-over:before{content:""}.codicon-debug-stop:before{content:""}.codicon-debug:before{content:""}.codicon-device-camera-video:before{content:""}.codicon-device-camera:before{content:""}.codicon-device-mobile:before{content:""}.codicon-diff-added:before{content:""}.codicon-diff-ignored:before{content:""}.codicon-diff-modified:before{content:""}.codicon-diff-removed:before{content:""}.codicon-diff-renamed:before{content:"î« "}.codicon-diff:before{content:"î«¡"}.codicon-diff-sidebyside:before{content:"î«¡"}.codicon-discard:before{content:"î«¢"}.codicon-editor-layout:before{content:"î«£"}.codicon-empty-window:before{content:""}.codicon-exclude:before{content:"î«¥"}.codicon-extensions:before{content:""}.codicon-eye-closed:before{content:"î«§"}.codicon-file-binary:before{content:""}.codicon-file-code:before{content:"î«©"}.codicon-file-media:before{content:""}.codicon-file-pdf:before{content:"î««"}.codicon-file-submodule:before{content:""}.codicon-file-symlink-directory:before{content:"î«­"}.codicon-file-symlink-file:before{content:"î«®"}.codicon-file-zip:before{content:""}.codicon-files:before{content:"î«°"}.codicon-filter:before{content:""}.codicon-flame:before{content:""}.codicon-fold-down:before{content:""}.codicon-fold-up:before{content:"î«´"}.codicon-fold:before{content:""}.codicon-folder-active:before{content:"î«¶"}.codicon-folder-opened:before{content:"î«·"}.codicon-gear:before{content:""}.codicon-gift:before{content:""}.codicon-gist-secret:before{content:""}.codicon-gist:before{content:"î«»"}.codicon-git-commit:before{content:""}.codicon-git-compare:before{content:""}.codicon-compare-changes:before{content:""}.codicon-git-merge:before{content:""}.codicon-github-action:before{content:"î«¿"}.codicon-github-alt:before{content:""}.codicon-globe:before{content:""}.codicon-grabber:before{content:""}.codicon-graph:before{content:""}.codicon-gripper:before{content:""}.codicon-heart:before{content:""}.codicon-home:before{content:""}.codicon-horizontal-rule:before{content:""}.codicon-hubot:before{content:""}.codicon-inbox:before{content:""}.codicon-issue-reopened:before{content:""}.codicon-issues:before{content:""}.codicon-italic:before{content:""}.codicon-jersey:before{content:""}.codicon-json:before{content:""}.codicon-kebab-vertical:before{content:""}.codicon-key:before{content:""}.codicon-law:before{content:""}.codicon-lightbulb-autofix:before{content:""}.codicon-link-external:before{content:""}.codicon-link:before{content:""}.codicon-list-ordered:before{content:""}.codicon-list-unordered:before{content:""}.codicon-live-share:before{content:""}.codicon-loading:before{content:""}.codicon-location:before{content:""}.codicon-mail-read:before{content:""}.codicon-mail:before{content:""}.codicon-markdown:before{content:""}.codicon-megaphone:before{content:""}.codicon-mention:before{content:""}.codicon-milestone:before{content:""}.codicon-git-pull-request-milestone:before{content:""}.codicon-mortar-board:before{content:""}.codicon-move:before{content:""}.codicon-multiple-windows:before{content:""}.codicon-mute:before{content:""}.codicon-no-newline:before{content:""}.codicon-note:before{content:""}.codicon-octoface:before{content:""}.codicon-open-preview:before{content:""}.codicon-package:before{content:""}.codicon-paintcan:before{content:""}.codicon-pin:before{content:""}.codicon-play:before{content:""}.codicon-run:before{content:""}.codicon-plug:before{content:""}.codicon-preserve-case:before{content:""}.codicon-preview:before{content:""}.codicon-project:before{content:""}.codicon-pulse:before{content:""}.codicon-question:before{content:""}.codicon-quote:before{content:""}.codicon-radio-tower:before{content:""}.codicon-reactions:before{content:""}.codicon-references:before{content:""}.codicon-refresh:before{content:""}.codicon-regex:before{content:""}.codicon-remote-explorer:before{content:""}.codicon-remote:before{content:""}.codicon-remove:before{content:""}.codicon-replace-all:before{content:""}.codicon-replace:before{content:""}.codicon-repo-clone:before{content:""}.codicon-repo-force-push:before{content:""}.codicon-repo-pull:before{content:""}.codicon-repo-push:before{content:""}.codicon-report:before{content:""}.codicon-request-changes:before{content:""}.codicon-rocket:before{content:""}.codicon-root-folder-opened:before{content:""}.codicon-root-folder:before{content:""}.codicon-rss:before{content:""}.codicon-ruby:before{content:""}.codicon-save-all:before{content:""}.codicon-save-as:before{content:""}.codicon-save:before{content:""}.codicon-screen-full:before{content:""}.codicon-screen-normal:before{content:""}.codicon-search-stop:before{content:""}.codicon-server:before{content:""}.codicon-settings-gear:before{content:""}.codicon-settings:before{content:""}.codicon-shield:before{content:""}.codicon-smiley:before{content:""}.codicon-sort-precedence:before{content:""}.codicon-split-horizontal:before{content:""}.codicon-split-vertical:before{content:""}.codicon-squirrel:before{content:""}.codicon-star-full:before{content:""}.codicon-star-half:before{content:""}.codicon-symbol-class:before{content:""}.codicon-symbol-color:before{content:""}.codicon-symbol-constant:before{content:""}.codicon-symbol-enum-member:before{content:""}.codicon-symbol-field:before{content:""}.codicon-symbol-file:before{content:"î­ "}.codicon-symbol-interface:before{content:"î­¡"}.codicon-symbol-keyword:before{content:"î­¢"}.codicon-symbol-misc:before{content:"î­£"}.codicon-symbol-operator:before{content:"î­¤"}.codicon-symbol-property:before{content:"î­¥"}.codicon-wrench:before{content:"î­¥"}.codicon-wrench-subaction:before{content:"î­¥"}.codicon-symbol-snippet:before{content:"î­¦"}.codicon-tasklist:before{content:"î­§"}.codicon-telescope:before{content:"î­¨"}.codicon-text-size:before{content:"î­©"}.codicon-three-bars:before{content:"î­ª"}.codicon-thumbsdown:before{content:"î­«"}.codicon-thumbsup:before{content:"î­¬"}.codicon-tools:before{content:"î­­"}.codicon-triangle-down:before{content:"î­®"}.codicon-triangle-left:before{content:"î­¯"}.codicon-triangle-right:before{content:"î­°"}.codicon-triangle-up:before{content:"î­±"}.codicon-twitter:before{content:"î­²"}.codicon-unfold:before{content:"î­³"}.codicon-unlock:before{content:"î­´"}.codicon-unmute:before{content:"î­µ"}.codicon-unverified:before{content:"î­¶"}.codicon-verified:before{content:"î­·"}.codicon-versions:before{content:"î­¸"}.codicon-vm-active:before{content:"î­¹"}.codicon-vm-outline:before{content:"î­º"}.codicon-vm-running:before{content:"î­»"}.codicon-watch:before{content:"î­¼"}.codicon-whitespace:before{content:"î­½"}.codicon-whole-word:before{content:"î­¾"}.codicon-window:before{content:"î­¿"}.codicon-word-wrap:before{content:""}.codicon-zoom-in:before{content:""}.codicon-zoom-out:before{content:""}.codicon-list-filter:before{content:""}.codicon-list-flat:before{content:""}.codicon-list-selection:before{content:""}.codicon-selection:before{content:""}.codicon-list-tree:before{content:""}.codicon-debug-breakpoint-function-unverified:before{content:""}.codicon-debug-breakpoint-function:before{content:""}.codicon-debug-breakpoint-function-disabled:before{content:""}.codicon-debug-stackframe-active:before{content:""}.codicon-circle-small-filled:before{content:""}.codicon-debug-stackframe-dot:before{content:""}.codicon-terminal-decoration-mark:before{content:""}.codicon-debug-stackframe:before{content:""}.codicon-debug-stackframe-focused:before{content:""}.codicon-debug-breakpoint-unsupported:before{content:""}.codicon-symbol-string:before{content:""}.codicon-debug-reverse-continue:before{content:""}.codicon-debug-step-back:before{content:""}.codicon-debug-restart-frame:before{content:""}.codicon-debug-alt:before{content:""}.codicon-call-incoming:before{content:""}.codicon-call-outgoing:before{content:""}.codicon-menu:before{content:""}.codicon-expand-all:before{content:""}.codicon-feedback:before{content:""}.codicon-git-pull-request-reviewer:before{content:""}.codicon-group-by-ref-type:before{content:""}.codicon-ungroup-by-ref-type:before{content:""}.codicon-account:before{content:""}.codicon-git-pull-request-assignee:before{content:""}.codicon-bell-dot:before{content:""}.codicon-debug-console:before{content:""}.codicon-library:before{content:""}.codicon-output:before{content:""}.codicon-run-all:before{content:""}.codicon-sync-ignored:before{content:""}.codicon-pinned:before{content:"î® "}.codicon-github-inverted:before{content:""}.codicon-server-process:before{content:""}.codicon-server-environment:before{content:""}.codicon-pass:before{content:""}.codicon-issue-closed:before{content:""}.codicon-stop-circle:before{content:""}.codicon-play-circle:before{content:""}.codicon-record:before{content:"î®§"}.codicon-debug-alt-small:before{content:""}.codicon-vm-connect:before{content:""}.codicon-cloud:before{content:""}.codicon-merge:before{content:""}.codicon-export:before{content:""}.codicon-graph-left:before{content:"î®­"}.codicon-magnet:before{content:"î®®"}.codicon-notebook:before{content:""}.codicon-redo:before{content:"î®°"}.codicon-check-all:before{content:"î®±"}.codicon-pinned-dirty:before{content:""}.codicon-pass-filled:before{content:""}.codicon-circle-large-filled:before{content:"î®´"}.codicon-circle-large:before{content:""}.codicon-circle-large-outline:before{content:""}.codicon-combine:before{content:"î®¶"}.codicon-gather:before{content:"î®¶"}.codicon-table:before{content:"î®·"}.codicon-variable-group:before{content:""}.codicon-type-hierarchy:before{content:""}.codicon-type-hierarchy-sub:before{content:""}.codicon-type-hierarchy-super:before{content:"î®»"}.codicon-git-pull-request-create:before{content:""}.codicon-run-above:before{content:""}.codicon-run-below:before{content:""}.codicon-notebook-template:before{content:""}.codicon-debug-rerun:before{content:""}.codicon-workspace-trusted:before{content:""}.codicon-workspace-untrusted:before{content:""}.codicon-workspace-unknown:before{content:""}.codicon-terminal-cmd:before{content:""}.codicon-terminal-debian:before{content:""}.codicon-terminal-linux:before{content:""}.codicon-terminal-powershell:before{content:""}.codicon-terminal-tmux:before{content:""}.codicon-terminal-ubuntu:before{content:""}.codicon-terminal-bash:before{content:""}.codicon-arrow-swap:before{content:""}.codicon-copy:before{content:""}.codicon-person-add:before{content:""}.codicon-filter-filled:before{content:""}.codicon-wand:before{content:""}.codicon-debug-line-by-line:before{content:""}.codicon-inspect:before{content:""}.codicon-layers:before{content:""}.codicon-layers-dot:before{content:""}.codicon-layers-active:before{content:""}.codicon-compass:before{content:""}.codicon-compass-dot:before{content:""}.codicon-compass-active:before{content:""}.codicon-azure:before{content:""}.codicon-issue-draft:before{content:""}.codicon-git-pull-request-closed:before{content:""}.codicon-git-pull-request-draft:before{content:""}.codicon-debug-all:before{content:""}.codicon-debug-coverage:before{content:""}.codicon-run-errors:before{content:""}.codicon-folder-library:before{content:""}.codicon-debug-continue-small:before{content:""}.codicon-beaker-stop:before{content:""}.codicon-graph-line:before{content:""}.codicon-graph-scatter:before{content:""}.codicon-pie-chart:before{content:""}.codicon-bracket:before{content:""}.codicon-bracket-dot:before{content:""}.codicon-bracket-error:before{content:""}.codicon-lock-small:before{content:""}.codicon-azure-devops:before{content:""}.codicon-verified-filled:before{content:""}.codicon-newline:before{content:""}.codicon-layout:before{content:""}.codicon-layout-activitybar-left:before{content:""}.codicon-layout-activitybar-right:before{content:""}.codicon-layout-panel-left:before{content:""}.codicon-layout-panel-center:before{content:""}.codicon-layout-panel-justify:before{content:""}.codicon-layout-panel-right:before{content:""}.codicon-layout-panel:before{content:""}.codicon-layout-sidebar-left:before{content:""}.codicon-layout-sidebar-right:before{content:""}.codicon-layout-statusbar:before{content:""}.codicon-layout-menubar:before{content:""}.codicon-layout-centered:before{content:""}.codicon-target:before{content:""}.codicon-indent:before{content:""}.codicon-record-small:before{content:""}.codicon-error-small:before{content:""}.codicon-terminal-decoration-error:before{content:""}.codicon-arrow-circle-down:before{content:""}.codicon-arrow-circle-left:before{content:""}.codicon-arrow-circle-right:before{content:""}.codicon-arrow-circle-up:before{content:""}.codicon-layout-sidebar-right-off:before{content:""}.codicon-layout-panel-off:before{content:""}.codicon-layout-sidebar-left-off:before{content:""}.codicon-blank:before{content:""}.codicon-heart-filled:before{content:""}.codicon-map:before{content:""}.codicon-map-horizontal:before{content:""}.codicon-fold-horizontal:before{content:""}.codicon-map-filled:before{content:""}.codicon-map-horizontal-filled:before{content:""}.codicon-fold-horizontal-filled:before{content:""}.codicon-circle-small:before{content:""}.codicon-bell-slash:before{content:""}.codicon-bell-slash-dot:before{content:""}.codicon-comment-unresolved:before{content:""}.codicon-git-pull-request-go-to-changes:before{content:""}.codicon-git-pull-request-new-changes:before{content:""}.codicon-search-fuzzy:before{content:""}.codicon-comment-draft:before{content:""}.codicon-send:before{content:""}.codicon-sparkle:before{content:""}.codicon-insert:before{content:""}.codicon-mic:before{content:""}.codicon-thumbsdown-filled:before{content:""}.codicon-thumbsup-filled:before{content:""}.codicon-coffee:before{content:""}.codicon-snake:before{content:""}.codicon-game:before{content:""}.codicon-vr:before{content:""}.codicon-chip:before{content:""}.codicon-piano:before{content:""}.codicon-music:before{content:""}.codicon-mic-filled:before{content:""}.codicon-repo-fetch:before{content:""}.codicon-copilot:before{content:""}.codicon-lightbulb-sparkle:before{content:""}.codicon-robot:before{content:"î° "}.codicon-sparkle-filled:before{content:"î°¡"}.codicon-diff-single:before{content:"î°¢"}.codicon-diff-multiple:before{content:"î°£"}.codicon-surround-with:before{content:"î°¤"}.codicon-share:before{content:"î°¥"}.codicon-git-stash:before{content:"î°¦"}.codicon-git-stash-apply:before{content:"î°§"}.codicon-git-stash-pop:before{content:"î°¨"}.codicon-vscode:before{content:"î°©"}.codicon-vscode-insiders:before{content:"î°ª"}.codicon-code-oss:before{content:"î°«"}.codicon-run-coverage:before{content:"î°¬"}.codicon-run-all-coverage:before{content:"î°­"}.codicon-coverage:before{content:"î°®"}.codicon-github-project:before{content:"î°¯"}.codicon-map-vertical:before{content:"î°°"}.codicon-fold-vertical:before{content:"î°°"}.codicon-map-vertical-filled:before{content:"î°±"}.codicon-fold-vertical-filled:before{content:"î°±"}.codicon-go-to-search:before{content:"î°²"}.codicon-percentage:before{content:"î°³"}.codicon-sort-percentage:before{content:"î°³"}.codicon-attach:before{content:"î°´"}.codicon-git-fetch:before{content:""}:root{--annotations-blue: 54 116 209}.annotations-layer,.annotations-rect,.annotations-popover,.annotations-color-swatch{--annotation-color: var(--annotations-blue)}.annotations-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;outline:none;cursor:crosshair}.annotations-layer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.annotations-action-btn{height:26px;padding:0 12px;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;background:var(--color-neutral-subtle);color:var(--color-fg-default);border:1px solid var(--color-border-muted);border-radius:999px;cursor:pointer;line-height:1}:root.dark-mode .annotations-action-btn{background:var(--color-neutral-muted);border-color:var(--color-border-default)}.annotations-action-btn:hover:not(:disabled){background:var(--color-neutral-muted)}.annotations-action-btn:disabled{opacity:.5;cursor:default}.annotations-action-btn.danger{background:transparent;color:var(--color-danger-fg);border-color:var(--color-border-muted)}.annotations-action-btn.danger:hover:not(:disabled){background:var(--color-danger-subtle)}.annotations-rect{position:absolute;box-sizing:border-box;border:2px solid rgb(var(--annotation-color));background:rgb(var(--annotation-color) / .12);cursor:pointer;transition:box-shadow .12s ease}.annotations-rect:hover{box-shadow:0 0 0 3px rgb(var(--annotation-color) / .25)}.annotations-rect.selected{box-shadow:0 0 0 3px rgb(var(--annotation-color) / .4);border-style:solid;border-color:rgb(var(--annotation-color));cursor:move}.annotations-rect.draft{border-style:dashed;background:rgb(var(--annotation-color) / .18);pointer-events:none}.annotations-handle{position:absolute;width:10px;height:10px;background:#fff;border:1.5px solid rgb(var(--annotation-color));border-radius:2px;box-sizing:border-box;z-index:1}.annotations-handle-nw{left:-6px;top:-6px;cursor:nwse-resize}.annotations-handle-n{left:50%;top:-6px;margin-left:-5px;cursor:ns-resize}.annotations-handle-ne{right:-6px;top:-6px;cursor:nesw-resize}.annotations-handle-e{right:-6px;top:50%;margin-top:-5px;cursor:ew-resize}.annotations-handle-se{right:-6px;bottom:-6px;cursor:nwse-resize}.annotations-handle-s{left:50%;bottom:-6px;margin-left:-5px;cursor:ns-resize}.annotations-handle-sw{left:-6px;bottom:-6px;cursor:nesw-resize}.annotations-handle-w{left:-6px;top:50%;margin-top:-5px;cursor:ew-resize}.annotations-label{position:absolute;top:-2px;left:-2px;max-width:calc(100% + 4px);padding:2px 6px;background:rgb(var(--annotation-color));color:#fff;font-size:11px;font-weight:500;border-radius:2px 2px 2px 0;transform:translateY(-100%);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:text}.annotations-label:hover{background:rgb(var(--annotation-color) / .85)}.annotations-popover{position:absolute;min-width:220px;max-width:320px;background:var(--color-canvas-overlay);border:1px solid var(--color-border-default);border-radius:8px;padding:8px;box-shadow:0 8px 24px #0000004d;display:flex;flex-direction:column;gap:6px;z-index:10;cursor:default}.annotations-textarea{width:100%;min-height:64px;resize:vertical;padding:6px 8px;font-family:inherit;font-size:12px;color:var(--color-fg-default);background:var(--color-canvas-default);border:1px solid var(--color-border-muted);border-radius:6px;outline:none;box-sizing:border-box}.annotations-textarea:focus{border-color:rgb(var(--annotation-color))}.annotations-popover-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.annotations-popover-actions{display:flex;gap:6px;justify-content:flex-end}.annotations-color-picker{display:flex;align-items:center;gap:4px}.annotations-color-swatch{width:14px;height:14px;padding:0;border:2px solid transparent;border-radius:50%;background:rgb(var(--annotation-color));cursor:pointer;transition:box-shadow .12s ease,transform .12s ease}.annotations-color-swatch:hover{box-shadow:0 0 0 2px rgb(var(--annotation-color) / .35)}.annotations-color-swatch.selected{border-color:var(--color-fg-default);transform:scale(1.1)}.annotate-modal-image{max-width:100%;max-height:100%;object-fit:contain;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;box-shadow:0 0 0 1px var(--color-border-muted),0 0 8px var(--color-border-muted)}.annotate-sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;background:var(--color-canvas-subtle);border-left:1px solid var(--color-border-muted);min-height:0}.annotate-sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:6px;height:40px;min-height:40px;padding:0 8px;border-bottom:1px solid var(--color-border-muted);background:var(--color-canvas-overlay)}:root.light-mode .annotate-sidebar-header{background:var(--color-canvas-subtle)}.annotate-sidebar-list{flex:1;min-height:0;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:6px}.annotate-sidebar-thumb{position:relative;flex-shrink:0;border:1px solid var(--color-border-muted);border-radius:6px;background:var(--color-canvas-default);overflow:hidden}.annotate-sidebar-thumb:hover{border-color:var(--color-border-default)}.annotate-sidebar-thumb.selected{border-color:var(--color-accent-fg, #2f81f7);box-shadow:0 0 0 1px var(--color-accent-fg, #2f81f7)}.annotate-sidebar-thumb-button{display:block;width:100%;padding:0;background:transparent;border:0;text-align:left;color:inherit;font:inherit;cursor:pointer}.annotate-sidebar-thumb-img-wrap{position:relative;display:block;width:100%;background:var(--color-canvas-overlay);overflow:hidden}.annotate-sidebar-thumb-img{display:block;width:100%;height:100%;object-fit:cover}.annotate-sidebar-thumb-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.annotate-sidebar-thumb-rect{position:absolute;border:1.5px solid rgb(var(--annotation-color));background:rgb(var(--annotation-color) / .12);border-radius:2px;pointer-events:none;box-sizing:border-box}.annotate-sidebar-thumb-rect.hovered{background:rgb(var(--annotation-color) / .32)}.annotate-sidebar-thumb-remove.toolbar-button{position:absolute;top:4px;right:4px;padding:2px;background:#0000008c;color:#fff;border-radius:50%;opacity:0;transition:opacity .12s ease;z-index:1}.annotate-sidebar-thumb-remove.toolbar-button:not(:disabled):hover{background:#000000bf;color:#fff}.annotate-sidebar-thumb:hover .annotate-sidebar-thumb-remove,.annotate-sidebar-thumb-remove:focus-visible{opacity:1}.annotate-sidebar-comments{list-style:none;margin:0;padding:4px 8px 6px;display:flex;flex-direction:column;gap:3px}.annotate-sidebar-comment{display:block;width:100%;text-align:left;background:rgb(var(--annotation-color) / .12);border:1px solid rgb(var(--annotation-color) / .35);border-radius:4px;color:var(--color-fg-default);font-size:11px;line-height:1.4;padding:3px 6px;cursor:pointer;white-space:pre-wrap;word-break:break-word}.annotate-sidebar-comment:hover{background:rgb(var(--annotation-color) / .2)}.annotate-sidebar-comment.empty{color:var(--color-fg-muted);font-style:italic}.annotate-sidebar-feedback-wrap{display:grid;margin:8px 8px 4px;flex-shrink:0}.annotate-sidebar-feedback-wrap:after{content:attr(data-value) " ";white-space:pre-wrap;word-break:break-word;visibility:hidden;padding:6px 8px;font-size:12px;font-family:inherit;border:1px solid transparent;border-radius:4px;min-height:56px;grid-area:1 / 1 / 2 / 2}.annotate-sidebar-feedback{grid-area:1 / 1 / 2 / 2;padding:6px 8px;background:var(--vscode-input-background, #1e1e1e);color:var(--vscode-input-foreground, #cccccc);border:1px solid var(--color-border-muted);border-radius:4px;font-size:12px;font-family:inherit;resize:none;min-height:56px;overflow:hidden;outline:none}.annotate-sidebar-feedback:focus{border-color:var(--vscode-focusBorder, #007fd4)}.annotate-sidebar-submit{margin:4px 8px 8px;padding:8px 12px;background:var(--color-accent-fg, #2f81f7);color:#fff;border:0;border-radius:6px;cursor:pointer;font-weight:500;font-size:13px;flex-shrink:0}.annotate-sidebar-submit:hover:not(:disabled){filter:brightness(1.05)}.annotate-sidebar-submit:disabled{opacity:.55;cursor:not-allowed}.annotate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:stretch;justify-content:center;padding:16px;background:#0000008c;z-index:100;min-height:0}.annotate-overlay-window{flex:1;display:flex;flex-direction:column;border:1px solid var(--color-border-default);border-radius:10px;overflow:hidden;box-shadow:0 4px 20px #00000059;background:var(--color-canvas-default);min-height:0}.annotate-overlay-chrome{display:flex;align-items:center;gap:4px;height:40px;min-height:40px;padding:0 8px;background:var(--color-canvas-overlay);border-bottom:1px solid var(--color-border-muted)}:root.light-mode .annotate-overlay-chrome{background:var(--color-canvas-subtle)}.annotate-overlay-titlebar{flex:1;display:flex;align-items:center;gap:6px;height:30px;padding:0 4px;font-size:13px;color:var(--color-fg-default);min-width:0;overflow:hidden;white-space:nowrap}.annotate-overlay-title-text{font-weight:500;color:var(--color-fg-default);overflow:hidden;text-overflow:ellipsis;flex-shrink:0;max-width:40%}.annotate-overlay-title-sep{color:var(--color-fg-subtle)}.annotate-overlay-title-url{flex:1;font-family:var(--monospace-font, monospace);font-size:12px;color:var(--color-fg-muted);overflow:hidden;text-overflow:ellipsis}.annotate-overlay-canvas{flex:1;position:relative;display:flex;align-items:center;justify-content:center;min-height:0;padding:12px;background:var(--color-canvas-default)}.dashboard-shell-sidebar{width:100%;height:100%;background:var(--color-canvas-default);display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--color-border-muted)}.dashboard-shell-sidebar-header{height:40px;min-height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 8px;border-bottom:1px solid var(--color-border-muted)}.dashboard-shell-sidebar-title{margin:0;font-size:12px;font-weight:600;text-transform:uppercase;color:var(--color-fg-muted);letter-spacing:.03em}.dashboard-shell-sidebar-content{flex:1;overflow:auto;padding:0}.sidebar-empty{color:var(--color-fg-subtle);font-size:13px;padding:8px 12px}.dashboard-shell-main{flex:1;display:flex;flex-direction:column;height:100%;min-width:0;min-height:0}.dashboard-shell-main>.vbox{flex:1;min-height:0}.dashboard-shell-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-fg-muted);font-size:14px}.workspace-group{margin:0}.workspace-header{margin:0;padding:8px 12px 4px;font-size:12px;color:var(--color-fg-muted);font-weight:400}.workspace-path-full{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl;text-align:left;unicode-bidi:plaintext}.sidebar-session-list{display:flex;flex-direction:column;gap:0}.session-chip.sidebar-session{border:none;border-radius:0;background:transparent;overflow:hidden;cursor:default;position:relative}.sidebar-session-row{width:100%;display:flex;align-items:center;gap:8px;text-align:left;padding:8px 4px 4px 8px}.session-browser-icon-wrap{position:relative;width:18px;height:18px;border-radius:50%;flex-shrink:0}.session-browser-icon{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:opacity .12s ease}.session-browser-icon .browser-icon-img{width:80%;height:80%;display:block}.session-browser-icon .browser-icon-fallback{width:100%;height:100%;border-radius:50%;background:var(--color-fg-subtle);color:var(--color-canvas-default);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}.session-browser-close{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;opacity:0;pointer-events:none;transition:opacity .12s ease}.session-browser-close .codicon{font-size:10px}.session-browser-icon-wrap:hover .session-browser-icon{opacity:0}.session-browser-icon-wrap:hover .session-browser-close{opacity:1;pointer-events:auto}.session-browser-close:hover{background:var(--color-neutral-muted)}.session-chip-name{font-size:13px;font-weight:600;color:var(--color-fg-default);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.sidebar-session-row-actions{margin-left:auto;display:flex;align-items:center;gap:4px}.sidebar-session-new-tab .codicon{font-size:12px}.sidebar-session-new-tab:hover:not(:disabled){background:var(--color-neutral-muted)}.sidebar-tabs-loading{color:var(--color-fg-subtle);font-size:12px;padding:4px 12px 6px 38px;margin:0;flex:none;display:block;justify-content:flex-start;text-align:left}.sidebar-session .list-view-entry{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-fg-muted);border-radius:0;padding:4px 4px 4px 24px;line-height:1.4}.sidebar-session .list-view-entry:hover{background:var(--color-neutral-muted)}.sidebar-tab-favicon{width:14px;height:14px;flex-shrink:0;margin-top:0;align-self:center}.sidebar-tab-favicon.placeholder{border-radius:2px;background:var(--color-fg-subtle);color:var(--color-canvas-default);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700}.sidebar-tab-text{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.sidebar-tab-title{color:var(--color-fg-default);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-tab-url{font-size:11px;color:var(--color-fg-muted);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-tab-close{margin-left:auto;align-self:center;opacity:0;pointer-events:none;transition:opacity .12s ease}.sidebar-session .list-view-entry:hover .sidebar-tab-close,.sidebar-tab-close:focus-visible{opacity:1;pointer-events:auto}.sidebar-tab-close .codicon{font-size:12px}.sidebar-tab-close:not(:disabled):hover{background:var(--color-neutral-muted)}.settings-button-container{position:relative}.settings-gear-btn{width:28px;height:28px;justify-content:center}.settings-gear-btn svg{width:16px;height:16px;fill:currentColor}.settings-popup{position:absolute;top:100%;right:0;margin-top:4px;background:var(--color-canvas-overlay);border:1px solid var(--color-neutral-muted);border-radius:8px;padding:8px 0;min-width:160px;box-shadow:var(--color-overlay-shadow);z-index:100;-webkit-user-select:none;user-select:none}.settings-popup .setting-row{display:flex;flex-direction:column;gap:4px;padding:6px 12px}.settings-popup .setting-label{font-size:11px;font-weight:600;color:var(--color-fg-subtle);text-transform:uppercase;letter-spacing:.04em}.settings-popup .setting-options{display:flex;flex-direction:column}.settings-popup .setting-option{display:flex;align-items:center;justify-content:flex-start;height:28px;padding:0 8px;border-radius:4px;font-size:12px;color:var(--color-fg-muted);cursor:pointer}.settings-popup .setting-option:hover{background:var(--color-neutral-subtle);color:var(--color-fg-default)}.settings-popup .setting-option.selected{color:var(--color-accent-fg)}.list-view-content{display:flex;flex-direction:column;flex:auto;position:relative;-webkit-user-select:none;user-select:none;overflow:hidden auto;outline:1px solid transparent}.list-view-entry{display:flex;flex:none;cursor:pointer;align-items:center;white-space:nowrap;line-height:28px;padding-left:5px}.list-view-content.not-selectable>.list-view-entry{cursor:inherit}.list-view-entry.highlighted:not(.selected){background-color:var(--vscode-list-inactiveSelectionBackground)!important}.list-view-entry.selected{z-index:10}.list-view-indent{min-width:16px}.list-view-content:focus .list-view-entry.selected{background-color:var(--vscode-list-activeSelectionBackground);color:var(--vscode-list-activeSelectionForeground);outline:1px solid var(--vscode-focusBorder)}.list-view-content .list-view-entry.selected{background-color:var(--vscode-list-inactiveSelectionBackground)}.list-view-content:focus .list-view-entry.selected *{color:var(--vscode-list-activeSelectionForeground)!important;background-color:transparent!important}.list-view-content:focus .list-view-entry.selected .codicon{color:var(--vscode-list-activeSelectionForeground)!important}.list-view-empty{flex:auto;display:flex;align-items:center;justify-content:center}.list-view-entry.error{color:var(--vscode-list-errorForeground);background-color:var(--vscode-inputValidation-errorBackground)}.list-view-entry.warning{color:var(--vscode-list-warningForeground);background-color:var(--vscode-inputValidation-warningBackground)}.list-view-entry.info{background-color:var(--vscode-inputValidation-infoBackground)}.split-view{display:flex;flex:auto;position:relative}.split-view.vertical{flex-direction:column}.split-view.vertical.sidebar-first{flex-direction:column-reverse}.split-view.horizontal{flex-direction:row}.split-view.horizontal.sidebar-first{flex-direction:row-reverse}.split-view-main{display:flex;flex:auto}.split-view-sidebar{display:flex;flex:none}.split-view.vertical:not(.sidebar-first)>.split-view-sidebar{border-top:1px solid var(--vscode-panel-border)}.split-view.horizontal:not(.sidebar-first)>.split-view-sidebar{border-left:1px solid var(--vscode-panel-border)}.split-view.vertical.sidebar-first>.split-view-sidebar{border-bottom:1px solid var(--vscode-panel-border)}.split-view.horizontal.sidebar-first>.split-view-sidebar{border-right:1px solid var(--vscode-panel-border)}.split-view-resizer{position:absolute;z-index:100}.split-view.vertical>.split-view-resizer{left:0;right:0;height:12px;cursor:ns-resize}.split-view.horizontal>.split-view-resizer{top:0;bottom:0;width:12px;cursor:ew-resize}
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/index-C_5TMfeg.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,52 @@
(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const h of o.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&s(h)}).observe(document,{childList:!0,subtree:!0});function f(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(r){if(r.ep)return;r.ep=!0;const o=f(r);fetch(r.href,o)}})();function wg(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}var rr={exports:{}},Zi={};/**
 * @license React
 * react-jsx-runtime.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var y1;function Og(){if(y1)return Zi;y1=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function f(s,r,o){var h=null;if(o!==void 0&&(h=""+o),r.key!==void 0&&(h=""+r.key),"key"in r){o={};for(var v in r)v!=="key"&&(o[v]=r[v])}else o=r;return r=o.ref,{$$typeof:u,type:s,key:h,ref:r!==void 0?r:null,props:o}}return Zi.Fragment=i,Zi.jsx=f,Zi.jsxs=f,Zi}var g1;function Rg(){return g1||(g1=1,rr.exports=Og()),rr.exports}var O=Rg(),or={exports:{}},Et={};/**
 * @license React
 * react.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var v1;function Dg(){if(v1)return Et;v1=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),h=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),y=Symbol.for("react.memo"),_=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),b=Symbol.iterator;function T(E){return E===null||typeof E!="object"?null:(E=b&&E[b]||E["@@iterator"],typeof E=="function"?E:null)}var D={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},G=Object.assign,W={};function J(E,R,k){this.props=E,this.context=R,this.refs=W,this.updater=k||D}J.prototype.isReactComponent={},J.prototype.setState=function(E,R){if(typeof E!="object"&&typeof E!="function"&&E!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,E,R,"setState")},J.prototype.forceUpdate=function(E){this.updater.enqueueForceUpdate(this,E,"forceUpdate")};function Z(){}Z.prototype=J.prototype;function $(E,R,k){this.props=E,this.context=R,this.refs=W,this.updater=k||D}var I=$.prototype=new Z;I.constructor=$,G(I,J.prototype),I.isPureReactComponent=!0;var B=Array.isArray;function it(){}var X={H:null,A:null,T:null,S:null},et=Object.prototype.hasOwnProperty;function ut(E,R,k){var w=k.ref;return{$$typeof:u,type:E,key:R,ref:w!==void 0?w:null,props:k}}function st(E,R){return ut(E.type,R,E.props)}function at(E){return typeof E=="object"&&E!==null&&E.$$typeof===u}function _t(E){var R={"=":"=0",":":"=2"};return"$"+E.replace(/[=:]/g,function(k){return R[k]})}var pt=/\/+/g;function yt(E,R){return typeof E=="object"&&E!==null&&E.key!=null?_t(""+E.key):R.toString(36)}function ot(E){switch(E.status){case"fulfilled":return E.value;case"rejected":throw E.reason;default:switch(typeof E.status=="string"?E.then(it,it):(E.status="pending",E.then(function(R){E.status==="pending"&&(E.status="fulfilled",E.value=R)},function(R){E.status==="pending"&&(E.status="rejected",E.reason=R)})),E.status){case"fulfilled":return E.value;case"rejected":throw E.reason}}throw E}function N(E,R,k,w,U){var L=typeof E;(L==="undefined"||L==="boolean")&&(E=null);var P=!1;if(E===null)P=!0;else switch(L){case"bigint":case"string":case"number":P=!0;break;case"object":switch(E.$$typeof){case u:case i:P=!0;break;case _:return P=E._init,N(P(E._payload),R,k,w,U)}}if(P)return U=U(E),P=w===""?"."+yt(E,0):w,B(U)?(k="",P!=null&&(k=P.replace(pt,"$&/")+"/"),N(U,R,k,"",function(Yt){return Yt})):U!=null&&(at(U)&&(U=st(U,k+(U.key==null||E&&E.key===U.key?"":(""+U.key).replace(pt,"$&/")+"/")+P)),R.push(U)),1;P=0;var H=w===""?".":w+":";if(B(E))for(var ht=0;ht<E.length;ht++)w=E[ht],L=H+yt(w,ht),P+=N(w,R,k,L,U);else if(ht=T(E),typeof ht=="function")for(E=ht.call(E),ht=0;!(w=E.next()).done;)w=w.value,L=H+yt(w,ht++),P+=N(w,R,k,L,U);else if(L==="object"){if(typeof E.then=="function")return N(ot(E),R,k,w,U);throw R=String(E),Error("Objects are not valid as a React child (found: "+(R==="[object Object]"?"object with keys {"+Object.keys(E).join(", ")+"}":R)+"). If you meant to render a collection of children, use an array instead.")}return P}function V(E,R,k){if(E==null)return E;var w=[],U=0;return N(E,w,"","",function(L){return R.call(k,L,U++)}),w}function lt(E){if(E._status===-1){var R=E._result;R=R(),R.then(function(k){(E._status===0||E._status===-1)&&(E._status=1,E._result=k)},function(k){(E._status===0||E._status===-1)&&(E._status=2,E._result=k)}),E._status===-1&&(E._status=0,E._result=R)}if(E._status===1)return E._result.default;throw E._result}var rt=typeof reportError=="function"?reportError:function(E){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var R=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof E=="object"&&E!==null&&typeof E.message=="string"?String(E.message):String(E),error:E});if(!window.dispatchEvent(R))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",E);return}console.error(E)},gt={map:V,forEach:function(E,R,k){V(E,function(){R.apply(this,arguments)},k)},count:function(E){var R=0;return V(E,function(){R++}),R},toArray:function(E){return V(E,function(R){return R})||[]},only:function(E){if(!at(E))throw Error("React.Children.only expected to receive a single React element child.");return E}};return Et.Activity=p,Et.Children=gt,Et.Component=J,Et.Fragment=f,Et.Profiler=r,Et.PureComponent=$,Et.StrictMode=s,Et.Suspense=m,Et.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=X,Et.__COMPILER_RUNTIME={__proto__:null,c:function(E){return X.H.useMemoCache(E)}},Et.cache=function(E){return function(){return E.apply(null,arguments)}},Et.cacheSignal=function(){return null},Et.cloneElement=function(E,R,k){if(E==null)throw Error("The argument must be a React element, but you passed "+E+".");var w=G({},E.props),U=E.key;if(R!=null)for(L in R.key!==void 0&&(U=""+R.key),R)!et.call(R,L)||L==="key"||L==="__self"||L==="__source"||L==="ref"&&R.ref===void 0||(w[L]=R[L]);var L=arguments.length-2;if(L===1)w.children=k;else if(1<L){for(var P=Array(L),H=0;H<L;H++)P[H]=arguments[H+2];w.children=P}return ut(E.type,U,w)},Et.createContext=function(E){return E={$$typeof:h,_currentValue:E,_currentValue2:E,_threadCount:0,Provider:null,Consumer:null},E.Provider=E,E.Consumer={$$typeof:o,_context:E},E},Et.createElement=function(E,R,k){var w,U={},L=null;if(R!=null)for(w in R.key!==void 0&&(L=""+R.key),R)et.call(R,w)&&w!=="key"&&w!=="__self"&&w!=="__source"&&(U[w]=R[w]);var P=arguments.length-2;if(P===1)U.children=k;else if(1<P){for(var H=Array(P),ht=0;ht<P;ht++)H[ht]=arguments[ht+2];U.children=H}if(E&&E.defaultProps)for(w in P=E.defaultProps,P)U[w]===void 0&&(U[w]=P[w]);return ut(E,L,U)},Et.createRef=function(){return{current:null}},Et.forwardRef=function(E){return{$$typeof:v,render:E}},Et.isValidElement=at,Et.lazy=function(E){return{$$typeof:_,_payload:{_status:-1,_result:E},_init:lt}},Et.memo=function(E,R){return{$$typeof:y,type:E,compare:R===void 0?null:R}},Et.startTransition=function(E){var R=X.T,k={};X.T=k;try{var w=E(),U=X.S;U!==null&&U(k,w),typeof w=="object"&&w!==null&&typeof w.then=="function"&&w.then(it,rt)}catch(L){rt(L)}finally{R!==null&&k.types!==null&&(R.types=k.types),X.T=R}},Et.unstable_useCacheRefresh=function(){return X.H.useCacheRefresh()},Et.use=function(E){return X.H.use(E)},Et.useActionState=function(E,R,k){return X.H.useActionState(E,R,k)},Et.useCallback=function(E,R){return X.H.useCallback(E,R)},Et.useContext=function(E){return X.H.useContext(E)},Et.useDebugValue=function(){},Et.useDeferredValue=function(E,R){return X.H.useDeferredValue(E,R)},Et.useEffect=function(E,R){return X.H.useEffect(E,R)},Et.useEffectEvent=function(E){return X.H.useEffectEvent(E)},Et.useId=function(){return X.H.useId()},Et.useImperativeHandle=function(E,R,k){return X.H.useImperativeHandle(E,R,k)},Et.useInsertionEffect=function(E,R){return X.H.useInsertionEffect(E,R)},Et.useLayoutEffect=function(E,R){return X.H.useLayoutEffect(E,R)},Et.useMemo=function(E,R){return X.H.useMemo(E,R)},Et.useOptimistic=function(E,R){return X.H.useOptimistic(E,R)},Et.useReducer=function(E,R,k){return X.H.useReducer(E,R,k)},Et.useRef=function(E){return X.H.useRef(E)},Et.useState=function(E){return X.H.useState(E)},Et.useSyncExternalStore=function(E,R,k){return X.H.useSyncExternalStore(E,R,k)},Et.useTransition=function(){return X.H.useTransition()},Et.version="19.2.1",Et}var _1;function kr(){return _1||(_1=1,or.exports=Dg()),or.exports}var Wn=kr();const mt=wg(Wn);var dr={exports:{}},Xi={},hr={exports:{}},mr={};/**
 * @license React
 * scheduler.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var p1;function zg(){return p1||(p1=1,(function(u){function i(N,V){var lt=N.length;N.push(V);t:for(;0<lt;){var rt=lt-1>>>1,gt=N[rt];if(0<r(gt,V))N[rt]=V,N[lt]=gt,lt=rt;else break t}}function f(N){return N.length===0?null:N[0]}function s(N){if(N.length===0)return null;var V=N[0],lt=N.pop();if(lt!==V){N[0]=lt;t:for(var rt=0,gt=N.length,E=gt>>>1;rt<E;){var R=2*(rt+1)-1,k=N[R],w=R+1,U=N[w];if(0>r(k,lt))w<gt&&0>r(U,k)?(N[rt]=U,N[w]=lt,rt=w):(N[rt]=k,N[R]=lt,rt=R);else if(w<gt&&0>r(U,lt))N[rt]=U,N[w]=lt,rt=w;else break t}}return V}function r(N,V){var lt=N.sortIndex-V.sortIndex;return lt!==0?lt:N.id-V.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;u.unstable_now=function(){return o.now()}}else{var h=Date,v=h.now();u.unstable_now=function(){return h.now()-v}}var m=[],y=[],_=1,p=null,b=3,T=!1,D=!1,G=!1,W=!1,J=typeof setTimeout=="function"?setTimeout:null,Z=typeof clearTimeout=="function"?clearTimeout:null,$=typeof setImmediate<"u"?setImmediate:null;function I(N){for(var V=f(y);V!==null;){if(V.callback===null)s(y);else if(V.startTime<=N)s(y),V.sortIndex=V.expirationTime,i(m,V);else break;V=f(y)}}function B(N){if(G=!1,I(N),!D)if(f(m)!==null)D=!0,it||(it=!0,_t());else{var V=f(y);V!==null&&ot(B,V.startTime-N)}}var it=!1,X=-1,et=5,ut=-1;function st(){return W?!0:!(u.unstable_now()-ut<et)}function at(){if(W=!1,it){var N=u.unstable_now();ut=N;var V=!0;try{t:{D=!1,G&&(G=!1,Z(X),X=-1),T=!0;var lt=b;try{e:{for(I(N),p=f(m);p!==null&&!(p.expirationTime>N&&st());){var rt=p.callback;if(typeof rt=="function"){p.callback=null,b=p.priorityLevel;var gt=rt(p.expirationTime<=N);if(N=u.unstable_now(),typeof gt=="function"){p.callback=gt,I(N),V=!0;break e}p===f(m)&&s(m),I(N)}else s(m);p=f(m)}if(p!==null)V=!0;else{var E=f(y);E!==null&&ot(B,E.startTime-N),V=!1}}break t}finally{p=null,b=lt,T=!1}V=void 0}}finally{V?_t():it=!1}}}var _t;if(typeof $=="function")_t=function(){$(at)};else if(typeof MessageChannel<"u"){var pt=new MessageChannel,yt=pt.port2;pt.port1.onmessage=at,_t=function(){yt.postMessage(null)}}else _t=function(){J(at,0)};function ot(N,V){X=J(function(){N(u.unstable_now())},V)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(N){N.callback=null},u.unstable_forceFrameRate=function(N){0>N||125<N?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):et=0<N?Math.floor(1e3/N):5},u.unstable_getCurrentPriorityLevel=function(){return b},u.unstable_next=function(N){switch(b){case 1:case 2:case 3:var V=3;break;default:V=b}var lt=b;b=V;try{return N()}finally{b=lt}},u.unstable_requestPaint=function(){W=!0},u.unstable_runWithPriority=function(N,V){switch(N){case 1:case 2:case 3:case 4:case 5:break;default:N=3}var lt=b;b=N;try{return V()}finally{b=lt}},u.unstable_scheduleCallback=function(N,V,lt){var rt=u.unstable_now();switch(typeof lt=="object"&&lt!==null?(lt=lt.delay,lt=typeof lt=="number"&&0<lt?rt+lt:rt):lt=rt,N){case 1:var gt=-1;break;case 2:gt=250;break;case 5:gt=1073741823;break;case 4:gt=1e4;break;default:gt=5e3}return gt=lt+gt,N={id:_++,callback:V,priorityLevel:N,startTime:lt,expirationTime:gt,sortIndex:-1},lt>rt?(N.sortIndex=lt,i(y,N),f(m)===null&&N===f(y)&&(G?(Z(X),X=-1):G=!0,ot(B,lt-rt))):(N.sortIndex=gt,i(m,N),D||T||(D=!0,it||(it=!0,_t()))),N},u.unstable_shouldYield=st,u.unstable_wrapCallback=function(N){var V=b;return function(){var lt=b;b=V;try{return N.apply(this,arguments)}finally{b=lt}}}})(mr)),mr}var b1;function Ng(){return b1||(b1=1,hr.exports=zg()),hr.exports}var yr={exports:{}},He={};/**
 * @license React
 * react-dom.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var S1;function Mg(){if(S1)return He;S1=1;var u=kr();function i(m){var y="https://react.dev/errors/"+m;if(1<arguments.length){y+="?args[]="+encodeURIComponent(arguments[1]);for(var _=2;_<arguments.length;_++)y+="&args[]="+encodeURIComponent(arguments[_])}return"Minified React error #"+m+"; visit "+y+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function f(){}var s={d:{f,r:function(){throw Error(i(522))},D:f,C:f,L:f,m:f,X:f,S:f,M:f},p:0,findDOMNode:null},r=Symbol.for("react.portal");function o(m,y,_){var p=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:r,key:p==null?null:""+p,children:m,containerInfo:y,implementation:_}}var h=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function v(m,y){if(m==="font")return"";if(typeof y=="string")return y==="use-credentials"?y:""}return He.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=s,He.createPortal=function(m,y){var _=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!y||y.nodeType!==1&&y.nodeType!==9&&y.nodeType!==11)throw Error(i(299));return o(m,y,null,_)},He.flushSync=function(m){var y=h.T,_=s.p;try{if(h.T=null,s.p=2,m)return m()}finally{h.T=y,s.p=_,s.d.f()}},He.preconnect=function(m,y){typeof m=="string"&&(y?(y=y.crossOrigin,y=typeof y=="string"?y==="use-credentials"?y:"":void 0):y=null,s.d.C(m,y))},He.prefetchDNS=function(m){typeof m=="string"&&s.d.D(m)},He.preinit=function(m,y){if(typeof m=="string"&&y&&typeof y.as=="string"){var _=y.as,p=v(_,y.crossOrigin),b=typeof y.integrity=="string"?y.integrity:void 0,T=typeof y.fetchPriority=="string"?y.fetchPriority:void 0;_==="style"?s.d.S(m,typeof y.precedence=="string"?y.precedence:void 0,{crossOrigin:p,integrity:b,fetchPriority:T}):_==="script"&&s.d.X(m,{crossOrigin:p,integrity:b,fetchPriority:T,nonce:typeof y.nonce=="string"?y.nonce:void 0})}},He.preinitModule=function(m,y){if(typeof m=="string")if(typeof y=="object"&&y!==null){if(y.as==null||y.as==="script"){var _=v(y.as,y.crossOrigin);s.d.M(m,{crossOrigin:_,integrity:typeof y.integrity=="string"?y.integrity:void 0,nonce:typeof y.nonce=="string"?y.nonce:void 0})}}else y==null&&s.d.M(m)},He.preload=function(m,y){if(typeof m=="string"&&typeof y=="object"&&y!==null&&typeof y.as=="string"){var _=y.as,p=v(_,y.crossOrigin);s.d.L(m,_,{crossOrigin:p,integrity:typeof y.integrity=="string"?y.integrity:void 0,nonce:typeof y.nonce=="string"?y.nonce:void 0,type:typeof y.type=="string"?y.type:void 0,fetchPriority:typeof y.fetchPriority=="string"?y.fetchPriority:void 0,referrerPolicy:typeof y.referrerPolicy=="string"?y.referrerPolicy:void 0,imageSrcSet:typeof y.imageSrcSet=="string"?y.imageSrcSet:void 0,imageSizes:typeof y.imageSizes=="string"?y.imageSizes:void 0,media:typeof y.media=="string"?y.media:void 0})}},He.preloadModule=function(m,y){if(typeof m=="string")if(y){var _=v(y.as,y.crossOrigin);s.d.m(m,{as:typeof y.as=="string"&&y.as!=="script"?y.as:void 0,crossOrigin:_,integrity:typeof y.integrity=="string"?y.integrity:void 0})}else s.d.m(m)},He.requestFormReset=function(m){s.d.r(m)},He.unstable_batchedUpdates=function(m,y){return m(y)},He.useFormState=function(m,y,_){return h.H.useFormState(m,y,_)},He.useFormStatus=function(){return h.H.useHostTransitionStatus()},He.version="19.2.1",He}var E1;function Ug(){if(E1)return yr.exports;E1=1;function u(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),yr.exports=Mg(),yr.exports}/**
 * @license React
 * react-dom-client.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var T1;function Cg(){if(T1)return Xi;T1=1;var u=Ng(),i=kr(),f=Ug();function s(t){var e="https://react.dev/errors/"+t;if(1<arguments.length){e+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)e+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+t+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function r(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function o(t){var e=t,n=t;if(t.alternate)for(;e.return;)e=e.return;else{t=e;do e=t,(e.flags&4098)!==0&&(n=e.return),t=e.return;while(t)}return e.tag===3?n:null}function h(t){if(t.tag===13){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function v(t){if(t.tag===31){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function m(t){if(o(t)!==t)throw Error(s(188))}function y(t){var e=t.alternate;if(!e){if(e=o(t),e===null)throw Error(s(188));return e!==t?null:t}for(var n=t,a=e;;){var l=n.return;if(l===null)break;var c=l.alternate;if(c===null){if(a=l.return,a!==null){n=a;continue}break}if(l.child===c.child){for(c=l.child;c;){if(c===n)return m(l),t;if(c===a)return m(l),e;c=c.sibling}throw Error(s(188))}if(n.return!==a.return)n=l,a=c;else{for(var d=!1,g=l.child;g;){if(g===n){d=!0,n=l,a=c;break}if(g===a){d=!0,a=l,n=c;break}g=g.sibling}if(!d){for(g=c.child;g;){if(g===n){d=!0,n=c,a=l;break}if(g===a){d=!0,a=c,n=l;break}g=g.sibling}if(!d)throw Error(s(189))}}if(n.alternate!==a)throw Error(s(190))}if(n.tag!==3)throw Error(s(188));return n.stateNode.current===n?t:e}function _(t){var e=t.tag;if(e===5||e===26||e===27||e===6)return t;for(t=t.child;t!==null;){if(e=_(t),e!==null)return e;t=t.sibling}return null}var p=Object.assign,b=Symbol.for("react.element"),T=Symbol.for("react.transitional.element"),D=Symbol.for("react.portal"),G=Symbol.for("react.fragment"),W=Symbol.for("react.strict_mode"),J=Symbol.for("react.profiler"),Z=Symbol.for("react.consumer"),$=Symbol.for("react.context"),I=Symbol.for("react.forward_ref"),B=Symbol.for("react.suspense"),it=Symbol.for("react.suspense_list"),X=Symbol.for("react.memo"),et=Symbol.for("react.lazy"),ut=Symbol.for("react.activity"),st=Symbol.for("react.memo_cache_sentinel"),at=Symbol.iterator;function _t(t){return t===null||typeof t!="object"?null:(t=at&&t[at]||t["@@iterator"],typeof t=="function"?t:null)}var pt=Symbol.for("react.client.reference");function yt(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===pt?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case G:return"Fragment";case J:return"Profiler";case W:return"StrictMode";case B:return"Suspense";case it:return"SuspenseList";case ut:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case D:return"Portal";case $:return t.displayName||"Context";case Z:return(t._context.displayName||"Context")+".Consumer";case I:var e=t.render;return t=t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case X:return e=t.displayName||null,e!==null?e:yt(t.type)||"Memo";case et:e=t._payload,t=t._init;try{return yt(t(e))}catch{}}return null}var ot=Array.isArray,N=i.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,V=f.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,lt={pending:!1,data:null,method:null,action:null},rt=[],gt=-1;function E(t){return{current:t}}function R(t){0>gt||(t.current=rt[gt],rt[gt]=null,gt--)}function k(t,e){gt++,rt[gt]=t.current,t.current=e}var w=E(null),U=E(null),L=E(null),P=E(null);function H(t,e){switch(k(L,e),k(U,t),k(w,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?Bd(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=Bd(e),t=Yd(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}R(w),k(w,t)}function ht(){R(w),R(U),R(L)}function Yt(t){t.memoizedState!==null&&k(P,t);var e=w.current,n=Yd(e,t.type);e!==n&&(k(U,t),k(w,n))}function Ft(t){U.current===t&&(R(w),R(U)),P.current===t&&(R(P),Bi._currentValue=lt)}var ae,oe;function Jt(t){if(ae===void 0)try{throw Error()}catch(n){var e=n.stack.trim().match(/\n( *(at )?)/);ae=e&&e[1]||"",oe=-1<n.stack.indexOf(`
    at`)?" (<anonymous>)":-1<n.stack.indexOf("@")?"@unknown:0:0":""}return`
`+ae+t+oe}var Gt=!1;function kt(t,e){if(!t||Gt)return"";Gt=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var a={DetermineComponentFrameRoot:function(){try{if(e){var K=function(){throw Error()};if(Object.defineProperty(K.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(K,[])}catch(j){var C=j}Reflect.construct(t,[],K)}else{try{K.call()}catch(j){C=j}t.call(K.prototype)}}else{try{throw Error()}catch(j){C=j}(K=t())&&typeof K.catch=="function"&&K.catch(function(){})}}catch(j){if(j&&C&&typeof j.stack=="string")return[j.stack,C.stack]}return[null,null]}};a.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var l=Object.getOwnPropertyDescriptor(a.DetermineComponentFrameRoot,"name");l&&l.configurable&&Object.defineProperty(a.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var c=a.DetermineComponentFrameRoot(),d=c[0],g=c[1];if(d&&g){var S=d.split(`
`),M=g.split(`
`);for(l=a=0;a<S.length&&!S[a].includes("DetermineComponentFrameRoot");)a++;for(;l<M.length&&!M[l].includes("DetermineComponentFrameRoot");)l++;if(a===S.length||l===M.length)for(a=S.length-1,l=M.length-1;1<=a&&0<=l&&S[a]!==M[l];)l--;for(;1<=a&&0<=l;a--,l--)if(S[a]!==M[l]){if(a!==1||l!==1)do if(a--,l--,0>l||S[a]!==M[l]){var q=`
`+S[a].replace(" at new "," at ");return t.displayName&&q.includes("<anonymous>")&&(q=q.replace("<anonymous>",t.displayName)),q}while(1<=a&&0<=l);break}}}finally{Gt=!1,Error.prepareStackTrace=n}return(n=t?t.displayName||t.name:"")?Jt(n):""}function je(t,e){switch(t.tag){case 26:case 27:case 5:return Jt(t.type);case 16:return Jt("Lazy");case 13:return t.child!==e&&e!==null?Jt("Suspense Fallback"):Jt("Suspense");case 19:return Jt("SuspenseList");case 0:case 15:return kt(t.type,!1);case 11:return kt(t.type.render,!1);case 1:return kt(t.type,!0);case 31:return Jt("Activity");default:return""}}function Be(t){try{var e="",n=null;do e+=je(t,n),n=t,t=t.return;while(t);return e}catch(a){return`
Error generating stack: `+a.message+`
`+a.stack}}var qe=Object.prototype.hasOwnProperty,Ce=u.unstable_scheduleCallback,Ae=u.unstable_cancelCallback,wn=u.unstable_shouldYield,nl=u.unstable_requestPaint,xe=u.unstable_now,al=u.unstable_getCurrentPriorityLevel,ll=u.unstable_ImmediatePriority,_e=u.unstable_UserBlockingPriority,ea=u.unstable_NormalPriority,Jc=u.unstable_LowPriority,Wl=u.unstable_IdlePriority,kc=u.log,Ic=u.unstable_setDisableYieldValue,Ua=null,Y=null;function tt(t){if(typeof kc=="function"&&Ic(t),Y&&typeof Y.setStrictMode=="function")try{Y.setStrictMode(Ua,t)}catch{}}var F=Math.clz32?Math.clz32:St,nt=Math.log,ct=Math.LN2;function St(t){return t>>>=0,t===0?32:31-(nt(t)/ct|0)|0}var wt=256,de=262144,Le=4194304;function pn(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Ca(t,e,n){var a=t.pendingLanes;if(a===0)return 0;var l=0,c=t.suspendedLanes,d=t.pingedLanes;t=t.warmLanes;var g=a&134217727;return g!==0?(a=g&~c,a!==0?l=pn(a):(d&=g,d!==0?l=pn(d):n||(n=g&~t,n!==0&&(l=pn(n))))):(g=a&~c,g!==0?l=pn(g):d!==0?l=pn(d):n||(n=a&~t,n!==0&&(l=pn(n)))),l===0?0:e!==0&&e!==l&&(e&c)===0&&(c=l&-l,n=e&-e,c>=n||c===32&&(n&4194048)!==0)?e:l}function na(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function h3(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function po(){var t=Le;return Le<<=1,(Le&62914560)===0&&(Le=4194304),t}function Wc(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function $l(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function m3(t,e,n,a,l,c){var d=t.pendingLanes;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=n,t.entangledLanes&=n,t.errorRecoveryDisabledLanes&=n,t.shellSuspendCounter=0;var g=t.entanglements,S=t.expirationTimes,M=t.hiddenUpdates;for(n=d&~n;0<n;){var q=31-F(n),K=1<<q;g[q]=0,S[q]=-1;var C=M[q];if(C!==null)for(M[q]=null,q=0;q<C.length;q++){var j=C[q];j!==null&&(j.lane&=-536870913)}n&=~K}a!==0&&bo(t,a,0),c!==0&&l===0&&t.tag!==0&&(t.suspendedLanes|=c&~(d&~e))}function bo(t,e,n){t.pendingLanes|=e,t.suspendedLanes&=~e;var a=31-F(e);t.entangledLanes|=e,t.entanglements[a]=t.entanglements[a]|1073741824|n&261930}function So(t,e){var n=t.entangledLanes|=e;for(t=t.entanglements;n;){var a=31-F(n),l=1<<a;l&e|t[a]&e&&(t[a]|=e),n&=~l}}function Eo(t,e){var n=e&-e;return n=(n&42)!==0?1:$c(n),(n&(t.suspendedLanes|e))!==0?0:n}function $c(t){switch(t){case 2:t=1;break;case 8:t=4;break;case 32:t=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:t=128;break;case 268435456:t=134217728;break;default:t=0}return t}function Pc(t){return t&=-t,2<t?8<t?(t&134217727)!==0?32:268435456:8:2}function To(){var t=V.p;return t!==0?t:(t=window.event,t===void 0?32:s1(t.type))}function Ao(t,e){var n=V.p;try{return V.p=t,e()}finally{V.p=n}}var aa=Math.random().toString(36).slice(2),we="__reactFiber$"+aa,Ze="__reactProps$"+aa,il="__reactContainer$"+aa,ts="__reactEvents$"+aa,y3="__reactListeners$"+aa,g3="__reactHandles$"+aa,xo="__reactResources$"+aa,Pl="__reactMarker$"+aa;function es(t){delete t[we],delete t[Ze],delete t[ts],delete t[y3],delete t[g3]}function ul(t){var e=t[we];if(e)return e;for(var n=t.parentNode;n;){if(e=n[il]||n[we]){if(n=e.alternate,e.child!==null||n!==null&&n.child!==null)for(t=Fd(t);t!==null;){if(n=t[we])return n;t=Fd(t)}return e}t=n,n=t.parentNode}return null}function cl(t){if(t=t[we]||t[il]){var e=t.tag;if(e===5||e===6||e===13||e===31||e===26||e===27||e===3)return t}return null}function ti(t){var e=t.tag;if(e===5||e===26||e===27||e===6)return t.stateNode;throw Error(s(33))}function sl(t){var e=t[xo];return e||(e=t[xo]={hoistableStyles:new Map,hoistableScripts:new Map}),e}function be(t){t[Pl]=!0}var wo=new Set,Oo={};function La(t,e){fl(t,e),fl(t+"Capture",e)}function fl(t,e){for(Oo[t]=e,t=0;t<e.length;t++)wo.add(e[t])}var v3=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),Ro={},Do={};function _3(t){return qe.call(Do,t)?!0:qe.call(Ro,t)?!1:v3.test(t)?Do[t]=!0:(Ro[t]=!0,!1)}function uu(t,e,n){if(_3(e))if(n===null)t.removeAttribute(e);else{switch(typeof n){case"undefined":case"function":case"symbol":t.removeAttribute(e);return;case"boolean":var a=e.toLowerCase().slice(0,5);if(a!=="data-"&&a!=="aria-"){t.removeAttribute(e);return}}t.setAttribute(e,""+n)}}function cu(t,e,n){if(n===null)t.removeAttribute(e);else{switch(typeof n){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(e);return}t.setAttribute(e,""+n)}}function Un(t,e,n,a){if(a===null)t.removeAttribute(n);else{switch(typeof a){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(n);return}t.setAttributeNS(e,n,""+a)}}function un(t){switch(typeof t){case"bigint":case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function zo(t){var e=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(e==="checkbox"||e==="radio")}function p3(t,e,n){var a=Object.getOwnPropertyDescriptor(t.constructor.prototype,e);if(!t.hasOwnProperty(e)&&typeof a<"u"&&typeof a.get=="function"&&typeof a.set=="function"){var l=a.get,c=a.set;return Object.defineProperty(t,e,{configurable:!0,get:function(){return l.call(this)},set:function(d){n=""+d,c.call(this,d)}}),Object.defineProperty(t,e,{enumerable:a.enumerable}),{getValue:function(){return n},setValue:function(d){n=""+d},stopTracking:function(){t._valueTracker=null,delete t[e]}}}}function ns(t){if(!t._valueTracker){var e=zo(t)?"checked":"value";t._valueTracker=p3(t,e,""+t[e])}}function No(t){if(!t)return!1;var e=t._valueTracker;if(!e)return!0;var n=e.getValue(),a="";return t&&(a=zo(t)?t.checked?"true":"false":t.value),t=a,t!==n?(e.setValue(t),!0):!1}function su(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var b3=/[\n"\\]/g;function cn(t){return t.replace(b3,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function as(t,e,n,a,l,c,d,g){t.name="",d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?t.type=d:t.removeAttribute("type"),e!=null?d==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+un(e)):t.value!==""+un(e)&&(t.value=""+un(e)):d!=="submit"&&d!=="reset"||t.removeAttribute("value"),e!=null?ls(t,d,un(e)):n!=null?ls(t,d,un(n)):a!=null&&t.removeAttribute("value"),l==null&&c!=null&&(t.defaultChecked=!!c),l!=null&&(t.checked=l&&typeof l!="function"&&typeof l!="symbol"),g!=null&&typeof g!="function"&&typeof g!="symbol"&&typeof g!="boolean"?t.name=""+un(g):t.removeAttribute("name")}function Mo(t,e,n,a,l,c,d,g){if(c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.type=c),e!=null||n!=null){if(!(c!=="submit"&&c!=="reset"||e!=null)){ns(t);return}n=n!=null?""+un(n):"",e=e!=null?""+un(e):n,g||e===t.value||(t.value=e),t.defaultValue=e}a=a??l,a=typeof a!="function"&&typeof a!="symbol"&&!!a,t.checked=g?t.checked:!!a,t.defaultChecked=!!a,d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"&&(t.name=d),ns(t)}function ls(t,e,n){e==="number"&&su(t.ownerDocument)===t||t.defaultValue===""+n||(t.defaultValue=""+n)}function rl(t,e,n,a){if(t=t.options,e){e={};for(var l=0;l<n.length;l++)e["$"+n[l]]=!0;for(n=0;n<t.length;n++)l=e.hasOwnProperty("$"+t[n].value),t[n].selected!==l&&(t[n].selected=l),l&&a&&(t[n].defaultSelected=!0)}else{for(n=""+un(n),e=null,l=0;l<t.length;l++){if(t[l].value===n){t[l].selected=!0,a&&(t[l].defaultSelected=!0);return}e!==null||t[l].disabled||(e=t[l])}e!==null&&(e.selected=!0)}}function Uo(t,e,n){if(e!=null&&(e=""+un(e),e!==t.value&&(t.value=e),n==null)){t.defaultValue!==e&&(t.defaultValue=e);return}t.defaultValue=n!=null?""+un(n):""}function Co(t,e,n,a){if(e==null){if(a!=null){if(n!=null)throw Error(s(92));if(ot(a)){if(1<a.length)throw Error(s(93));a=a[0]}n=a}n==null&&(n=""),e=n}n=un(e),t.defaultValue=n,a=t.textContent,a===n&&a!==""&&a!==null&&(t.value=a),ns(t)}function ol(t,e){if(e){var n=t.firstChild;if(n&&n===t.lastChild&&n.nodeType===3){n.nodeValue=e;return}}t.textContent=e}var S3=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function Lo(t,e,n){var a=e.indexOf("--")===0;n==null||typeof n=="boolean"||n===""?a?t.setProperty(e,""):e==="float"?t.cssFloat="":t[e]="":a?t.setProperty(e,n):typeof n!="number"||n===0||S3.has(e)?e==="float"?t.cssFloat=n:t[e]=(""+n).trim():t[e]=n+"px"}function Ho(t,e,n){if(e!=null&&typeof e!="object")throw Error(s(62));if(t=t.style,n!=null){for(var a in n)!n.hasOwnProperty(a)||e!=null&&e.hasOwnProperty(a)||(a.indexOf("--")===0?t.setProperty(a,""):a==="float"?t.cssFloat="":t[a]="");for(var l in e)a=e[l],e.hasOwnProperty(l)&&n[l]!==a&&Lo(t,l,a)}else for(var c in e)e.hasOwnProperty(c)&&Lo(t,c,e[c])}function is(t){if(t.indexOf("-")===-1)return!1;switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var E3=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),T3=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function fu(t){return T3.test(""+t)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":t}function Cn(){}var us=null;function cs(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var dl=null,hl=null;function jo(t){var e=cl(t);if(e&&(t=e.stateNode)){var n=t[Ze]||null;t:switch(t=e.stateNode,e.type){case"input":if(as(t,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),e=n.name,n.type==="radio"&&e!=null){for(n=t;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll('input[name="'+cn(""+e)+'"][type="radio"]'),e=0;e<n.length;e++){var a=n[e];if(a!==t&&a.form===t.form){var l=a[Ze]||null;if(!l)throw Error(s(90));as(a,l.value,l.defaultValue,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name)}}for(e=0;e<n.length;e++)a=n[e],a.form===t.form&&No(a)}break t;case"textarea":Uo(t,n.value,n.defaultValue);break t;case"select":e=n.value,e!=null&&rl(t,!!n.multiple,e,!1)}}}var ss=!1;function Bo(t,e,n){if(ss)return t(e,n);ss=!0;try{var a=t(e);return a}finally{if(ss=!1,(dl!==null||hl!==null)&&(Iu(),dl&&(e=dl,t=hl,hl=dl=null,jo(e),t)))for(e=0;e<t.length;e++)jo(t[e])}}function ei(t,e){var n=t.stateNode;if(n===null)return null;var a=n[Ze]||null;if(a===null)return null;n=a[e];t:switch(e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(a=!a.disabled)||(t=t.type,a=!(t==="button"||t==="input"||t==="select"||t==="textarea")),t=!a;break t;default:t=!1}if(t)return null;if(n&&typeof n!="function")throw Error(s(231,e,typeof n));return n}var Ln=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),fs=!1;if(Ln)try{var ni={};Object.defineProperty(ni,"passive",{get:function(){fs=!0}}),window.addEventListener("test",ni,ni),window.removeEventListener("test",ni,ni)}catch{fs=!1}var la=null,rs=null,ru=null;function Yo(){if(ru)return ru;var t,e=rs,n=e.length,a,l="value"in la?la.value:la.textContent,c=l.length;for(t=0;t<n&&e[t]===l[t];t++);var d=n-t;for(a=1;a<=d&&e[n-a]===l[c-a];a++);return ru=l.slice(t,1<a?1-a:void 0)}function ou(t){var e=t.keyCode;return"charCode"in t?(t=t.charCode,t===0&&e===13&&(t=13)):t=e,t===10&&(t=13),32<=t||t===13?t:0}function du(){return!0}function Go(){return!1}function Xe(t){function e(n,a,l,c,d){this._reactName=n,this._targetInst=l,this.type=a,this.nativeEvent=c,this.target=d,this.currentTarget=null;for(var g in t)t.hasOwnProperty(g)&&(n=t[g],this[g]=n?n(c):c[g]);return this.isDefaultPrevented=(c.defaultPrevented!=null?c.defaultPrevented:c.returnValue===!1)?du:Go,this.isPropagationStopped=Go,this}return p(e.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=du)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=du)},persist:function(){},isPersistent:du}),e}var Ha={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},hu=Xe(Ha),ai=p({},Ha,{view:0,detail:0}),A3=Xe(ai),os,ds,li,mu=p({},ai,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:ms,button:0,buttons:0,relatedTarget:function(t){return t.relatedTarget===void 0?t.fromElement===t.srcElement?t.toElement:t.fromElement:t.relatedTarget},movementX:function(t){return"movementX"in t?t.movementX:(t!==li&&(li&&t.type==="mousemove"?(os=t.screenX-li.screenX,ds=t.screenY-li.screenY):ds=os=0,li=t),os)},movementY:function(t){return"movementY"in t?t.movementY:ds}}),qo=Xe(mu),x3=p({},mu,{dataTransfer:0}),w3=Xe(x3),O3=p({},ai,{relatedTarget:0}),hs=Xe(O3),R3=p({},Ha,{animationName:0,elapsedTime:0,pseudoElement:0}),D3=Xe(R3),z3=p({},Ha,{clipboardData:function(t){return"clipboardData"in t?t.clipboardData:window.clipboardData}}),N3=Xe(z3),M3=p({},Ha,{data:0}),Zo=Xe(M3),U3={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},C3={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},L3={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function H3(t){var e=this.nativeEvent;return e.getModifierState?e.getModifierState(t):(t=L3[t])?!!e[t]:!1}function ms(){return H3}var j3=p({},ai,{key:function(t){if(t.key){var e=U3[t.key]||t.key;if(e!=="Unidentified")return e}return t.type==="keypress"?(t=ou(t),t===13?"Enter":String.fromCharCode(t)):t.type==="keydown"||t.type==="keyup"?C3[t.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:ms,charCode:function(t){return t.type==="keypress"?ou(t):0},keyCode:function(t){return t.type==="keydown"||t.type==="keyup"?t.keyCode:0},which:function(t){return t.type==="keypress"?ou(t):t.type==="keydown"||t.type==="keyup"?t.keyCode:0}}),B3=Xe(j3),Y3=p({},mu,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Xo=Xe(Y3),G3=p({},ai,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:ms}),q3=Xe(G3),Z3=p({},Ha,{propertyName:0,elapsedTime:0,pseudoElement:0}),X3=Xe(Z3),V3=p({},mu,{deltaX:function(t){return"deltaX"in t?t.deltaX:"wheelDeltaX"in t?-t.wheelDeltaX:0},deltaY:function(t){return"deltaY"in t?t.deltaY:"wheelDeltaY"in t?-t.wheelDeltaY:"wheelDelta"in t?-t.wheelDelta:0},deltaZ:0,deltaMode:0}),Q3=Xe(V3),F3=p({},Ha,{newState:0,oldState:0}),K3=Xe(F3),J3=[9,13,27,32],ys=Ln&&"CompositionEvent"in window,ii=null;Ln&&"documentMode"in document&&(ii=document.documentMode);var k3=Ln&&"TextEvent"in window&&!ii,Vo=Ln&&(!ys||ii&&8<ii&&11>=ii),Qo=" ",Fo=!1;function Ko(t,e){switch(t){case"keyup":return J3.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Jo(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var ml=!1;function I3(t,e){switch(t){case"compositionend":return Jo(e);case"keypress":return e.which!==32?null:(Fo=!0,Qo);case"textInput":return t=e.data,t===Qo&&Fo?null:t;default:return null}}function W3(t,e){if(ml)return t==="compositionend"||!ys&&Ko(t,e)?(t=Yo(),ru=rs=la=null,ml=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1<e.char.length)return e.char;if(e.which)return String.fromCharCode(e.which)}return null;case"compositionend":return Vo&&e.locale!=="ko"?null:e.data;default:return null}}var $3={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function ko(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e==="input"?!!$3[t.type]:e==="textarea"}function Io(t,e,n,a){dl?hl?hl.push(a):hl=[a]:dl=a,e=ac(e,"onChange"),0<e.length&&(n=new hu("onChange","change",null,n,a),t.push({event:n,listeners:e}))}var ui=null,ci=null;function P3(t){Md(t,0)}function yu(t){var e=ti(t);if(No(e))return t}function Wo(t,e){if(t==="change")return e}var $o=!1;if(Ln){var gs;if(Ln){var vs="oninput"in document;if(!vs){var Po=document.createElement("div");Po.setAttribute("oninput","return;"),vs=typeof Po.oninput=="function"}gs=vs}else gs=!1;$o=gs&&(!document.documentMode||9<document.documentMode)}function t0(){ui&&(ui.detachEvent("onpropertychange",e0),ci=ui=null)}function e0(t){if(t.propertyName==="value"&&yu(ci)){var e=[];Io(e,ci,t,cs(t)),Bo(P3,e)}}function ty(t,e,n){t==="focusin"?(t0(),ui=e,ci=n,ui.attachEvent("onpropertychange",e0)):t==="focusout"&&t0()}function ey(t){if(t==="selectionchange"||t==="keyup"||t==="keydown")return yu(ci)}function ny(t,e){if(t==="click")return yu(e)}function ay(t,e){if(t==="input"||t==="change")return yu(e)}function ly(t,e){return t===e&&(t!==0||1/t===1/e)||t!==t&&e!==e}var Ie=typeof Object.is=="function"?Object.is:ly;function si(t,e){if(Ie(t,e))return!0;if(typeof t!="object"||t===null||typeof e!="object"||e===null)return!1;var n=Object.keys(t),a=Object.keys(e);if(n.length!==a.length)return!1;for(a=0;a<n.length;a++){var l=n[a];if(!qe.call(e,l)||!Ie(t[l],e[l]))return!1}return!0}function n0(t){for(;t&&t.firstChild;)t=t.firstChild;return t}function a0(t,e){var n=n0(t);t=0;for(var a;n;){if(n.nodeType===3){if(a=t+n.textContent.length,t<=e&&a>=e)return{node:n,offset:e-t};t=a}t:{for(;n;){if(n.nextSibling){n=n.nextSibling;break t}n=n.parentNode}n=void 0}n=n0(n)}}function l0(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?l0(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function i0(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=su(t.document);e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=su(t.document)}return e}function _s(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var iy=Ln&&"documentMode"in document&&11>=document.documentMode,yl=null,ps=null,fi=null,bs=!1;function u0(t,e,n){var a=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;bs||yl==null||yl!==su(a)||(a=yl,"selectionStart"in a&&_s(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),fi&&si(fi,a)||(fi=a,a=ac(ps,"onSelect"),0<a.length&&(e=new hu("onSelect","select",null,e,n),t.push({event:e,listeners:a}),e.target=yl)))}function ja(t,e){var n={};return n[t.toLowerCase()]=e.toLowerCase(),n["Webkit"+t]="webkit"+e,n["Moz"+t]="moz"+e,n}var gl={animationend:ja("Animation","AnimationEnd"),animationiteration:ja("Animation","AnimationIteration"),animationstart:ja("Animation","AnimationStart"),transitionrun:ja("Transition","TransitionRun"),transitionstart:ja("Transition","TransitionStart"),transitioncancel:ja("Transition","TransitionCancel"),transitionend:ja("Transition","TransitionEnd")},Ss={},c0={};Ln&&(c0=document.createElement("div").style,"AnimationEvent"in window||(delete gl.animationend.animation,delete gl.animationiteration.animation,delete gl.animationstart.animation),"TransitionEvent"in window||delete gl.transitionend.transition);function Ba(t){if(Ss[t])return Ss[t];if(!gl[t])return t;var e=gl[t],n;for(n in e)if(e.hasOwnProperty(n)&&n in c0)return Ss[t]=e[n];return t}var s0=Ba("animationend"),f0=Ba("animationiteration"),r0=Ba("animationstart"),uy=Ba("transitionrun"),cy=Ba("transitionstart"),sy=Ba("transitioncancel"),o0=Ba("transitionend"),d0=new Map,Es="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Es.push("scrollEnd");function bn(t,e){d0.set(t,e),La(e,[t])}var gu=typeof reportError=="function"?reportError:function(t){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var e=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof t=="object"&&t!==null&&typeof t.message=="string"?String(t.message):String(t),error:t});if(!window.dispatchEvent(e))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",t);return}console.error(t)},sn=[],vl=0,Ts=0;function vu(){for(var t=vl,e=Ts=vl=0;e<t;){var n=sn[e];sn[e++]=null;var a=sn[e];sn[e++]=null;var l=sn[e];sn[e++]=null;var c=sn[e];if(sn[e++]=null,a!==null&&l!==null){var d=a.pending;d===null?l.next=l:(l.next=d.next,d.next=l),a.pending=l}c!==0&&h0(n,l,c)}}function _u(t,e,n,a){sn[vl++]=t,sn[vl++]=e,sn[vl++]=n,sn[vl++]=a,Ts|=a,t.lanes|=a,t=t.alternate,t!==null&&(t.lanes|=a)}function As(t,e,n,a){return _u(t,e,n,a),pu(t)}function Ya(t,e){return _u(t,null,null,e),pu(t)}function h0(t,e,n){t.lanes|=n;var a=t.alternate;a!==null&&(a.lanes|=n);for(var l=!1,c=t.return;c!==null;)c.childLanes|=n,a=c.alternate,a!==null&&(a.childLanes|=n),c.tag===22&&(t=c.stateNode,t===null||t._visibility&1||(l=!0)),t=c,c=c.return;return t.tag===3?(c=t.stateNode,l&&e!==null&&(l=31-F(n),t=c.hiddenUpdates,a=t[l],a===null?t[l]=[e]:a.push(e),e.lane=n|536870912),c):null}function pu(t){if(50<Ni)throw Ni=0,Cf=null,Error(s(185));for(var e=t.return;e!==null;)t=e,e=t.return;return t.tag===3?t.stateNode:null}var _l={};function fy(t,e,n,a){this.tag=t,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function We(t,e,n,a){return new fy(t,e,n,a)}function xs(t){return t=t.prototype,!(!t||!t.isReactComponent)}function Hn(t,e){var n=t.alternate;return n===null?(n=We(t.tag,e,t.key,t.mode),n.elementType=t.elementType,n.type=t.type,n.stateNode=t.stateNode,n.alternate=t,t.alternate=n):(n.pendingProps=e,n.type=t.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=t.flags&65011712,n.childLanes=t.childLanes,n.lanes=t.lanes,n.child=t.child,n.memoizedProps=t.memoizedProps,n.memoizedState=t.memoizedState,n.updateQueue=t.updateQueue,e=t.dependencies,n.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},n.sibling=t.sibling,n.index=t.index,n.ref=t.ref,n.refCleanup=t.refCleanup,n}function m0(t,e){t.flags&=65011714;var n=t.alternate;return n===null?(t.childLanes=0,t.lanes=e,t.child=null,t.subtreeFlags=0,t.memoizedProps=null,t.memoizedState=null,t.updateQueue=null,t.dependencies=null,t.stateNode=null):(t.childLanes=n.childLanes,t.lanes=n.lanes,t.child=n.child,t.subtreeFlags=0,t.deletions=null,t.memoizedProps=n.memoizedProps,t.memoizedState=n.memoizedState,t.updateQueue=n.updateQueue,t.type=n.type,e=n.dependencies,t.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),t}function bu(t,e,n,a,l,c){var d=0;if(a=t,typeof t=="function")xs(t)&&(d=1);else if(typeof t=="string")d=mg(t,n,w.current)?26:t==="html"||t==="head"||t==="body"?27:5;else t:switch(t){case ut:return t=We(31,n,e,l),t.elementType=ut,t.lanes=c,t;case G:return Ga(n.children,l,c,e);case W:d=8,l|=24;break;case J:return t=We(12,n,e,l|2),t.elementType=J,t.lanes=c,t;case B:return t=We(13,n,e,l),t.elementType=B,t.lanes=c,t;case it:return t=We(19,n,e,l),t.elementType=it,t.lanes=c,t;default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case $:d=10;break t;case Z:d=9;break t;case I:d=11;break t;case X:d=14;break t;case et:d=16,a=null;break t}d=29,n=Error(s(130,t===null?"null":typeof t,"")),a=null}return e=We(d,n,e,l),e.elementType=t,e.type=a,e.lanes=c,e}function Ga(t,e,n,a){return t=We(7,t,a,e),t.lanes=n,t}function ws(t,e,n){return t=We(6,t,null,e),t.lanes=n,t}function y0(t){var e=We(18,null,null,0);return e.stateNode=t,e}function Os(t,e,n){return e=We(4,t.children!==null?t.children:[],t.key,e),e.lanes=n,e.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},e}var g0=new WeakMap;function fn(t,e){if(typeof t=="object"&&t!==null){var n=g0.get(t);return n!==void 0?n:(e={value:t,source:e,stack:Be(e)},g0.set(t,e),e)}return{value:t,source:e,stack:Be(e)}}var pl=[],bl=0,Su=null,ri=0,rn=[],on=0,ia=null,On=1,Rn="";function jn(t,e){pl[bl++]=ri,pl[bl++]=Su,Su=t,ri=e}function v0(t,e,n){rn[on++]=On,rn[on++]=Rn,rn[on++]=ia,ia=t;var a=On;t=Rn;var l=32-F(a)-1;a&=~(1<<l),n+=1;var c=32-F(e)+l;if(30<c){var d=l-l%5;c=(a&(1<<d)-1).toString(32),a>>=d,l-=d,On=1<<32-F(e)+l|n<<l|a,Rn=c+t}else On=1<<c|n<<l|a,Rn=t}function Rs(t){t.return!==null&&(jn(t,1),v0(t,1,0))}function Ds(t){for(;t===Su;)Su=pl[--bl],pl[bl]=null,ri=pl[--bl],pl[bl]=null;for(;t===ia;)ia=rn[--on],rn[on]=null,Rn=rn[--on],rn[on]=null,On=rn[--on],rn[on]=null}function _0(t,e){rn[on++]=On,rn[on++]=Rn,rn[on++]=ia,On=e.id,Rn=e.overflow,ia=t}var Oe=null,It=null,Ut=!1,ua=null,dn=!1,zs=Error(s(519));function ca(t){var e=Error(s(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw oi(fn(e,t)),zs}function p0(t){var e=t.stateNode,n=t.type,a=t.memoizedProps;switch(e[we]=t,e[Ze]=a,n){case"dialog":Rt("cancel",e),Rt("close",e);break;case"iframe":case"object":case"embed":Rt("load",e);break;case"video":case"audio":for(n=0;n<Ui.length;n++)Rt(Ui[n],e);break;case"source":Rt("error",e);break;case"img":case"image":case"link":Rt("error",e),Rt("load",e);break;case"details":Rt("toggle",e);break;case"input":Rt("invalid",e),Mo(e,a.value,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name,!0);break;case"select":Rt("invalid",e);break;case"textarea":Rt("invalid",e),Co(e,a.value,a.defaultValue,a.children)}n=a.children,typeof n!="string"&&typeof n!="number"&&typeof n!="bigint"||e.textContent===""+n||a.suppressHydrationWarning===!0||Hd(e.textContent,n)?(a.popover!=null&&(Rt("beforetoggle",e),Rt("toggle",e)),a.onScroll!=null&&Rt("scroll",e),a.onScrollEnd!=null&&Rt("scrollend",e),a.onClick!=null&&(e.onclick=Cn),e=!0):e=!1,e||ca(t,!0)}function b0(t){for(Oe=t.return;Oe;)switch(Oe.tag){case 5:case 31:case 13:dn=!1;return;case 27:case 3:dn=!0;return;default:Oe=Oe.return}}function Sl(t){if(t!==Oe)return!1;if(!Ut)return b0(t),Ut=!0,!1;var e=t.tag,n;if((n=e!==3&&e!==27)&&((n=e===5)&&(n=t.type,n=!(n!=="form"&&n!=="button")||kf(t.type,t.memoizedProps)),n=!n),n&&It&&ca(t),b0(t),e===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(317));It=Qd(t)}else if(e===31){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(317));It=Qd(t)}else e===27?(e=It,Sa(t.type)?(t=tr,tr=null,It=t):It=e):It=Oe?mn(t.stateNode.nextSibling):null;return!0}function qa(){It=Oe=null,Ut=!1}function Ns(){var t=ua;return t!==null&&(Ke===null?Ke=t:Ke.push.apply(Ke,t),ua=null),t}function oi(t){ua===null?ua=[t]:ua.push(t)}var Ms=E(null),Za=null,Bn=null;function sa(t,e,n){k(Ms,e._currentValue),e._currentValue=n}function Yn(t){t._currentValue=Ms.current,R(Ms)}function Us(t,e,n){for(;t!==null;){var a=t.alternate;if((t.childLanes&e)!==e?(t.childLanes|=e,a!==null&&(a.childLanes|=e)):a!==null&&(a.childLanes&e)!==e&&(a.childLanes|=e),t===n)break;t=t.return}}function Cs(t,e,n,a){var l=t.child;for(l!==null&&(l.return=t);l!==null;){var c=l.dependencies;if(c!==null){var d=l.child;c=c.firstContext;t:for(;c!==null;){var g=c;c=l;for(var S=0;S<e.length;S++)if(g.context===e[S]){c.lanes|=n,g=c.alternate,g!==null&&(g.lanes|=n),Us(c.return,n,t),a||(d=null);break t}c=g.next}}else if(l.tag===18){if(d=l.return,d===null)throw Error(s(341));d.lanes|=n,c=d.alternate,c!==null&&(c.lanes|=n),Us(d,n,t),d=null}else d=l.child;if(d!==null)d.return=l;else for(d=l;d!==null;){if(d===t){d=null;break}if(l=d.sibling,l!==null){l.return=d.return,d=l;break}d=d.return}l=d}}function El(t,e,n,a){t=null;for(var l=e,c=!1;l!==null;){if(!c){if((l.flags&524288)!==0)c=!0;else if((l.flags&262144)!==0)break}if(l.tag===10){var d=l.alternate;if(d===null)throw Error(s(387));if(d=d.memoizedProps,d!==null){var g=l.type;Ie(l.pendingProps.value,d.value)||(t!==null?t.push(g):t=[g])}}else if(l===P.current){if(d=l.alternate,d===null)throw Error(s(387));d.memoizedState.memoizedState!==l.memoizedState.memoizedState&&(t!==null?t.push(Bi):t=[Bi])}l=l.return}t!==null&&Cs(e,t,n,a),e.flags|=262144}function Eu(t){for(t=t.firstContext;t!==null;){if(!Ie(t.context._currentValue,t.memoizedValue))return!0;t=t.next}return!1}function Xa(t){Za=t,Bn=null,t=t.dependencies,t!==null&&(t.firstContext=null)}function Re(t){return S0(Za,t)}function Tu(t,e){return Za===null&&Xa(t),S0(t,e)}function S0(t,e){var n=e._currentValue;if(e={context:e,memoizedValue:n,next:null},Bn===null){if(t===null)throw Error(s(308));Bn=e,t.dependencies={lanes:0,firstContext:e},t.flags|=524288}else Bn=Bn.next=e;return n}var ry=typeof AbortController<"u"?AbortController:function(){var t=[],e=this.signal={aborted:!1,addEventListener:function(n,a){t.push(a)}};this.abort=function(){e.aborted=!0,t.forEach(function(n){return n()})}},oy=u.unstable_scheduleCallback,dy=u.unstable_NormalPriority,he={$$typeof:$,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Ls(){return{controller:new ry,data:new Map,refCount:0}}function di(t){t.refCount--,t.refCount===0&&oy(dy,function(){t.controller.abort()})}var hi=null,Hs=0,Tl=0,Al=null;function hy(t,e){if(hi===null){var n=hi=[];Hs=0,Tl=Gf(),Al={status:"pending",value:void 0,then:function(a){n.push(a)}}}return Hs++,e.then(E0,E0),e}function E0(){if(--Hs===0&&hi!==null){Al!==null&&(Al.status="fulfilled");var t=hi;hi=null,Tl=0,Al=null;for(var e=0;e<t.length;e++)(0,t[e])()}}function my(t,e){var n=[],a={status:"pending",value:null,reason:null,then:function(l){n.push(l)}};return t.then(function(){a.status="fulfilled",a.value=e;for(var l=0;l<n.length;l++)(0,n[l])(e)},function(l){for(a.status="rejected",a.reason=l,l=0;l<n.length;l++)(0,n[l])(void 0)}),a}var T0=N.S;N.S=function(t,e){ud=xe(),typeof e=="object"&&e!==null&&typeof e.then=="function"&&hy(t,e),T0!==null&&T0(t,e)};var Va=E(null);function js(){var t=Va.current;return t!==null?t:Kt.pooledCache}function Au(t,e){e===null?k(Va,Va.current):k(Va,e.pool)}function A0(){var t=js();return t===null?null:{parent:he._currentValue,pool:t}}var xl=Error(s(460)),Bs=Error(s(474)),xu=Error(s(542)),wu={then:function(){}};function x0(t){return t=t.status,t==="fulfilled"||t==="rejected"}function w0(t,e,n){switch(n=t[n],n===void 0?t.push(e):n!==e&&(e.then(Cn,Cn),e=n),e.status){case"fulfilled":return e.value;case"rejected":throw t=e.reason,R0(t),t;default:if(typeof e.status=="string")e.then(Cn,Cn);else{if(t=Kt,t!==null&&100<t.shellSuspendCounter)throw Error(s(482));t=e,t.status="pending",t.then(function(a){if(e.status==="pending"){var l=e;l.status="fulfilled",l.value=a}},function(a){if(e.status==="pending"){var l=e;l.status="rejected",l.reason=a}})}switch(e.status){case"fulfilled":return e.value;case"rejected":throw t=e.reason,R0(t),t}throw Fa=e,xl}}function Qa(t){try{var e=t._init;return e(t._payload)}catch(n){throw n!==null&&typeof n=="object"&&typeof n.then=="function"?(Fa=n,xl):n}}var Fa=null;function O0(){if(Fa===null)throw Error(s(459));var t=Fa;return Fa=null,t}function R0(t){if(t===xl||t===xu)throw Error(s(483))}var wl=null,mi=0;function Ou(t){var e=mi;return mi+=1,wl===null&&(wl=[]),w0(wl,t,e)}function yi(t,e){e=e.props.ref,t.ref=e!==void 0?e:null}function Ru(t,e){throw e.$$typeof===b?Error(s(525)):(t=Object.prototype.toString.call(e),Error(s(31,t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)))}function D0(t){function e(x,A){if(t){var z=x.deletions;z===null?(x.deletions=[A],x.flags|=16):z.push(A)}}function n(x,A){if(!t)return null;for(;A!==null;)e(x,A),A=A.sibling;return null}function a(x){for(var A=new Map;x!==null;)x.key!==null?A.set(x.key,x):A.set(x.index,x),x=x.sibling;return A}function l(x,A){return x=Hn(x,A),x.index=0,x.sibling=null,x}function c(x,A,z){return x.index=z,t?(z=x.alternate,z!==null?(z=z.index,z<A?(x.flags|=67108866,A):z):(x.flags|=67108866,A)):(x.flags|=1048576,A)}function d(x){return t&&x.alternate===null&&(x.flags|=67108866),x}function g(x,A,z,Q){return A===null||A.tag!==6?(A=ws(z,x.mode,Q),A.return=x,A):(A=l(A,z),A.return=x,A)}function S(x,A,z,Q){var vt=z.type;return vt===G?q(x,A,z.props.children,Q,z.key):A!==null&&(A.elementType===vt||typeof vt=="object"&&vt!==null&&vt.$$typeof===et&&Qa(vt)===A.type)?(A=l(A,z.props),yi(A,z),A.return=x,A):(A=bu(z.type,z.key,z.props,null,x.mode,Q),yi(A,z),A.return=x,A)}function M(x,A,z,Q){return A===null||A.tag!==4||A.stateNode.containerInfo!==z.containerInfo||A.stateNode.implementation!==z.implementation?(A=Os(z,x.mode,Q),A.return=x,A):(A=l(A,z.children||[]),A.return=x,A)}function q(x,A,z,Q,vt){return A===null||A.tag!==7?(A=Ga(z,x.mode,Q,vt),A.return=x,A):(A=l(A,z),A.return=x,A)}function K(x,A,z){if(typeof A=="string"&&A!==""||typeof A=="number"||typeof A=="bigint")return A=ws(""+A,x.mode,z),A.return=x,A;if(typeof A=="object"&&A!==null){switch(A.$$typeof){case T:return z=bu(A.type,A.key,A.props,null,x.mode,z),yi(z,A),z.return=x,z;case D:return A=Os(A,x.mode,z),A.return=x,A;case et:return A=Qa(A),K(x,A,z)}if(ot(A)||_t(A))return A=Ga(A,x.mode,z,null),A.return=x,A;if(typeof A.then=="function")return K(x,Ou(A),z);if(A.$$typeof===$)return K(x,Tu(x,A),z);Ru(x,A)}return null}function C(x,A,z,Q){var vt=A!==null?A.key:null;if(typeof z=="string"&&z!==""||typeof z=="number"||typeof z=="bigint")return vt!==null?null:g(x,A,""+z,Q);if(typeof z=="object"&&z!==null){switch(z.$$typeof){case T:return z.key===vt?S(x,A,z,Q):null;case D:return z.key===vt?M(x,A,z,Q):null;case et:return z=Qa(z),C(x,A,z,Q)}if(ot(z)||_t(z))return vt!==null?null:q(x,A,z,Q,null);if(typeof z.then=="function")return C(x,A,Ou(z),Q);if(z.$$typeof===$)return C(x,A,Tu(x,z),Q);Ru(x,z)}return null}function j(x,A,z,Q,vt){if(typeof Q=="string"&&Q!==""||typeof Q=="number"||typeof Q=="bigint")return x=x.get(z)||null,g(A,x,""+Q,vt);if(typeof Q=="object"&&Q!==null){switch(Q.$$typeof){case T:return x=x.get(Q.key===null?z:Q.key)||null,S(A,x,Q,vt);case D:return x=x.get(Q.key===null?z:Q.key)||null,M(A,x,Q,vt);case et:return Q=Qa(Q),j(x,A,z,Q,vt)}if(ot(Q)||_t(Q))return x=x.get(z)||null,q(A,x,Q,vt,null);if(typeof Q.then=="function")return j(x,A,z,Ou(Q),vt);if(Q.$$typeof===$)return j(x,A,z,Tu(A,Q),vt);Ru(A,Q)}return null}function ft(x,A,z,Q){for(var vt=null,Ht=null,dt=A,xt=A=0,Mt=null;dt!==null&&xt<z.length;xt++){dt.index>xt?(Mt=dt,dt=null):Mt=dt.sibling;var jt=C(x,dt,z[xt],Q);if(jt===null){dt===null&&(dt=Mt);break}t&&dt&&jt.alternate===null&&e(x,dt),A=c(jt,A,xt),Ht===null?vt=jt:Ht.sibling=jt,Ht=jt,dt=Mt}if(xt===z.length)return n(x,dt),Ut&&jn(x,xt),vt;if(dt===null){for(;xt<z.length;xt++)dt=K(x,z[xt],Q),dt!==null&&(A=c(dt,A,xt),Ht===null?vt=dt:Ht.sibling=dt,Ht=dt);return Ut&&jn(x,xt),vt}for(dt=a(dt);xt<z.length;xt++)Mt=j(dt,x,xt,z[xt],Q),Mt!==null&&(t&&Mt.alternate!==null&&dt.delete(Mt.key===null?xt:Mt.key),A=c(Mt,A,xt),Ht===null?vt=Mt:Ht.sibling=Mt,Ht=Mt);return t&&dt.forEach(function(wa){return e(x,wa)}),Ut&&jn(x,xt),vt}function bt(x,A,z,Q){if(z==null)throw Error(s(151));for(var vt=null,Ht=null,dt=A,xt=A=0,Mt=null,jt=z.next();dt!==null&&!jt.done;xt++,jt=z.next()){dt.index>xt?(Mt=dt,dt=null):Mt=dt.sibling;var wa=C(x,dt,jt.value,Q);if(wa===null){dt===null&&(dt=Mt);break}t&&dt&&wa.alternate===null&&e(x,dt),A=c(wa,A,xt),Ht===null?vt=wa:Ht.sibling=wa,Ht=wa,dt=Mt}if(jt.done)return n(x,dt),Ut&&jn(x,xt),vt;if(dt===null){for(;!jt.done;xt++,jt=z.next())jt=K(x,jt.value,Q),jt!==null&&(A=c(jt,A,xt),Ht===null?vt=jt:Ht.sibling=jt,Ht=jt);return Ut&&jn(x,xt),vt}for(dt=a(dt);!jt.done;xt++,jt=z.next())jt=j(dt,x,xt,jt.value,Q),jt!==null&&(t&&jt.alternate!==null&&dt.delete(jt.key===null?xt:jt.key),A=c(jt,A,xt),Ht===null?vt=jt:Ht.sibling=jt,Ht=jt);return t&&dt.forEach(function(xg){return e(x,xg)}),Ut&&jn(x,xt),vt}function Qt(x,A,z,Q){if(typeof z=="object"&&z!==null&&z.type===G&&z.key===null&&(z=z.props.children),typeof z=="object"&&z!==null){switch(z.$$typeof){case T:t:{for(var vt=z.key;A!==null;){if(A.key===vt){if(vt=z.type,vt===G){if(A.tag===7){n(x,A.sibling),Q=l(A,z.props.children),Q.return=x,x=Q;break t}}else if(A.elementType===vt||typeof vt=="object"&&vt!==null&&vt.$$typeof===et&&Qa(vt)===A.type){n(x,A.sibling),Q=l(A,z.props),yi(Q,z),Q.return=x,x=Q;break t}n(x,A);break}else e(x,A);A=A.sibling}z.type===G?(Q=Ga(z.props.children,x.mode,Q,z.key),Q.return=x,x=Q):(Q=bu(z.type,z.key,z.props,null,x.mode,Q),yi(Q,z),Q.return=x,x=Q)}return d(x);case D:t:{for(vt=z.key;A!==null;){if(A.key===vt)if(A.tag===4&&A.stateNode.containerInfo===z.containerInfo&&A.stateNode.implementation===z.implementation){n(x,A.sibling),Q=l(A,z.children||[]),Q.return=x,x=Q;break t}else{n(x,A);break}else e(x,A);A=A.sibling}Q=Os(z,x.mode,Q),Q.return=x,x=Q}return d(x);case et:return z=Qa(z),Qt(x,A,z,Q)}if(ot(z))return ft(x,A,z,Q);if(_t(z)){if(vt=_t(z),typeof vt!="function")throw Error(s(150));return z=vt.call(z),bt(x,A,z,Q)}if(typeof z.then=="function")return Qt(x,A,Ou(z),Q);if(z.$$typeof===$)return Qt(x,A,Tu(x,z),Q);Ru(x,z)}return typeof z=="string"&&z!==""||typeof z=="number"||typeof z=="bigint"?(z=""+z,A!==null&&A.tag===6?(n(x,A.sibling),Q=l(A,z),Q.return=x,x=Q):(n(x,A),Q=ws(z,x.mode,Q),Q.return=x,x=Q),d(x)):n(x,A)}return function(x,A,z,Q){try{mi=0;var vt=Qt(x,A,z,Q);return wl=null,vt}catch(dt){if(dt===xl||dt===xu)throw dt;var Ht=We(29,dt,null,x.mode);return Ht.lanes=Q,Ht.return=x,Ht}finally{}}}var Ka=D0(!0),z0=D0(!1),fa=!1;function Ys(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Gs(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ra(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function oa(t,e,n){var a=t.updateQueue;if(a===null)return null;if(a=a.shared,(Bt&2)!==0){var l=a.pending;return l===null?e.next=e:(e.next=l.next,l.next=e),a.pending=e,e=pu(t),h0(t,null,n),e}return _u(t,a,e,n),pu(t)}function gi(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194048)!==0)){var a=e.lanes;a&=t.pendingLanes,n|=a,e.lanes=n,So(t,n)}}function qs(t,e){var n=t.updateQueue,a=t.alternate;if(a!==null&&(a=a.updateQueue,n===a)){var l=null,c=null;if(n=n.firstBaseUpdate,n!==null){do{var d={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};c===null?l=c=d:c=c.next=d,n=n.next}while(n!==null);c===null?l=c=e:c=c.next=e}else l=c=e;n={baseState:a.baseState,firstBaseUpdate:l,lastBaseUpdate:c,shared:a.shared,callbacks:a.callbacks},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}var Zs=!1;function vi(){if(Zs){var t=Al;if(t!==null)throw t}}function _i(t,e,n,a){Zs=!1;var l=t.updateQueue;fa=!1;var c=l.firstBaseUpdate,d=l.lastBaseUpdate,g=l.shared.pending;if(g!==null){l.shared.pending=null;var S=g,M=S.next;S.next=null,d===null?c=M:d.next=M,d=S;var q=t.alternate;q!==null&&(q=q.updateQueue,g=q.lastBaseUpdate,g!==d&&(g===null?q.firstBaseUpdate=M:g.next=M,q.lastBaseUpdate=S))}if(c!==null){var K=l.baseState;d=0,q=M=S=null,g=c;do{var C=g.lane&-536870913,j=C!==g.lane;if(j?(Nt&C)===C:(a&C)===C){C!==0&&C===Tl&&(Zs=!0),q!==null&&(q=q.next={lane:0,tag:g.tag,payload:g.payload,callback:null,next:null});t:{var ft=t,bt=g;C=e;var Qt=n;switch(bt.tag){case 1:if(ft=bt.payload,typeof ft=="function"){K=ft.call(Qt,K,C);break t}K=ft;break t;case 3:ft.flags=ft.flags&-65537|128;case 0:if(ft=bt.payload,C=typeof ft=="function"?ft.call(Qt,K,C):ft,C==null)break t;K=p({},K,C);break t;case 2:fa=!0}}C=g.callback,C!==null&&(t.flags|=64,j&&(t.flags|=8192),j=l.callbacks,j===null?l.callbacks=[C]:j.push(C))}else j={lane:C,tag:g.tag,payload:g.payload,callback:g.callback,next:null},q===null?(M=q=j,S=K):q=q.next=j,d|=C;if(g=g.next,g===null){if(g=l.shared.pending,g===null)break;j=g,g=j.next,j.next=null,l.lastBaseUpdate=j,l.shared.pending=null}}while(!0);q===null&&(S=K),l.baseState=S,l.firstBaseUpdate=M,l.lastBaseUpdate=q,c===null&&(l.shared.lanes=0),ga|=d,t.lanes=d,t.memoizedState=K}}function N0(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function M0(t,e){var n=t.callbacks;if(n!==null)for(t.callbacks=null,t=0;t<n.length;t++)N0(n[t],e)}var Ol=E(null),Du=E(0);function U0(t,e){t=Jn,k(Du,t),k(Ol,e),Jn=t|e.baseLanes}function Xs(){k(Du,Jn),k(Ol,Ol.current)}function Vs(){Jn=Du.current,R(Ol),R(Du)}var $e=E(null),hn=null;function da(t){var e=t.alternate;k(se,se.current&1),k($e,t),hn===null&&(e===null||Ol.current!==null||e.memoizedState!==null)&&(hn=t)}function Qs(t){k(se,se.current),k($e,t),hn===null&&(hn=t)}function C0(t){t.tag===22?(k(se,se.current),k($e,t),hn===null&&(hn=t)):ha()}function ha(){k(se,se.current),k($e,$e.current)}function Pe(t){R($e),hn===t&&(hn=null),R(se)}var se=E(0);function zu(t){for(var e=t;e!==null;){if(e.tag===13){var n=e.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||$f(n)||Pf(n)))return e}else if(e.tag===19&&(e.memoizedProps.revealOrder==="forwards"||e.memoizedProps.revealOrder==="backwards"||e.memoizedProps.revealOrder==="unstable_legacy-backwards"||e.memoizedProps.revealOrder==="together")){if((e.flags&128)!==0)return e}else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return null;e=e.return}e.sibling.return=e.return,e=e.sibling}return null}var Gn=0,Tt=null,Xt=null,me=null,Nu=!1,Rl=!1,Ja=!1,Mu=0,pi=0,Dl=null,yy=0;function ie(){throw Error(s(321))}function Fs(t,e){if(e===null)return!1;for(var n=0;n<e.length&&n<t.length;n++)if(!Ie(t[n],e[n]))return!1;return!0}function Ks(t,e,n,a,l,c){return Gn=c,Tt=e,e.memoizedState=null,e.updateQueue=null,e.lanes=0,N.H=t===null||t.memoizedState===null?v2:ff,Ja=!1,c=n(a,l),Ja=!1,Rl&&(c=H0(e,n,a,l)),L0(t),c}function L0(t){N.H=Ei;var e=Xt!==null&&Xt.next!==null;if(Gn=0,me=Xt=Tt=null,Nu=!1,pi=0,Dl=null,e)throw Error(s(300));t===null||ye||(t=t.dependencies,t!==null&&Eu(t)&&(ye=!0))}function H0(t,e,n,a){Tt=t;var l=0;do{if(Rl&&(Dl=null),pi=0,Rl=!1,25<=l)throw Error(s(301));if(l+=1,me=Xt=null,t.updateQueue!=null){var c=t.updateQueue;c.lastEffect=null,c.events=null,c.stores=null,c.memoCache!=null&&(c.memoCache.index=0)}N.H=_2,c=e(n,a)}while(Rl);return c}function gy(){var t=N.H,e=t.useState()[0];return e=typeof e.then=="function"?bi(e):e,t=t.useState()[0],(Xt!==null?Xt.memoizedState:null)!==t&&(Tt.flags|=1024),e}function Js(){var t=Mu!==0;return Mu=0,t}function ks(t,e,n){e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~n}function Is(t){if(Nu){for(t=t.memoizedState;t!==null;){var e=t.queue;e!==null&&(e.pending=null),t=t.next}Nu=!1}Gn=0,me=Xt=Tt=null,Rl=!1,pi=Mu=0,Dl=null}function Ye(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return me===null?Tt.memoizedState=me=t:me=me.next=t,me}function fe(){if(Xt===null){var t=Tt.alternate;t=t!==null?t.memoizedState:null}else t=Xt.next;var e=me===null?Tt.memoizedState:me.next;if(e!==null)me=e,Xt=t;else{if(t===null)throw Tt.alternate===null?Error(s(467)):Error(s(310));Xt=t,t={memoizedState:Xt.memoizedState,baseState:Xt.baseState,baseQueue:Xt.baseQueue,queue:Xt.queue,next:null},me===null?Tt.memoizedState=me=t:me=me.next=t}return me}function Uu(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function bi(t){var e=pi;return pi+=1,Dl===null&&(Dl=[]),t=w0(Dl,t,e),e=Tt,(me===null?e.memoizedState:me.next)===null&&(e=e.alternate,N.H=e===null||e.memoizedState===null?v2:ff),t}function Cu(t){if(t!==null&&typeof t=="object"){if(typeof t.then=="function")return bi(t);if(t.$$typeof===$)return Re(t)}throw Error(s(438,String(t)))}function Ws(t){var e=null,n=Tt.updateQueue;if(n!==null&&(e=n.memoCache),e==null){var a=Tt.alternate;a!==null&&(a=a.updateQueue,a!==null&&(a=a.memoCache,a!=null&&(e={data:a.data.map(function(l){return l.slice()}),index:0})))}if(e==null&&(e={data:[],index:0}),n===null&&(n=Uu(),Tt.updateQueue=n),n.memoCache=e,n=e.data[e.index],n===void 0)for(n=e.data[e.index]=Array(t),a=0;a<t;a++)n[a]=st;return e.index++,n}function qn(t,e){return typeof e=="function"?e(t):e}function Lu(t){var e=fe();return $s(e,Xt,t)}function $s(t,e,n){var a=t.queue;if(a===null)throw Error(s(311));a.lastRenderedReducer=n;var l=t.baseQueue,c=a.pending;if(c!==null){if(l!==null){var d=l.next;l.next=c.next,c.next=d}e.baseQueue=l=c,a.pending=null}if(c=t.baseState,l===null)t.memoizedState=c;else{e=l.next;var g=d=null,S=null,M=e,q=!1;do{var K=M.lane&-536870913;if(K!==M.lane?(Nt&K)===K:(Gn&K)===K){var C=M.revertLane;if(C===0)S!==null&&(S=S.next={lane:0,revertLane:0,gesture:null,action:M.action,hasEagerState:M.hasEagerState,eagerState:M.eagerState,next:null}),K===Tl&&(q=!0);else if((Gn&C)===C){M=M.next,C===Tl&&(q=!0);continue}else K={lane:0,revertLane:M.revertLane,gesture:null,action:M.action,hasEagerState:M.hasEagerState,eagerState:M.eagerState,next:null},S===null?(g=S=K,d=c):S=S.next=K,Tt.lanes|=C,ga|=C;K=M.action,Ja&&n(c,K),c=M.hasEagerState?M.eagerState:n(c,K)}else C={lane:K,revertLane:M.revertLane,gesture:M.gesture,action:M.action,hasEagerState:M.hasEagerState,eagerState:M.eagerState,next:null},S===null?(g=S=C,d=c):S=S.next=C,Tt.lanes|=K,ga|=K;M=M.next}while(M!==null&&M!==e);if(S===null?d=c:S.next=g,!Ie(c,t.memoizedState)&&(ye=!0,q&&(n=Al,n!==null)))throw n;t.memoizedState=c,t.baseState=d,t.baseQueue=S,a.lastRenderedState=c}return l===null&&(a.lanes=0),[t.memoizedState,a.dispatch]}function Ps(t){var e=fe(),n=e.queue;if(n===null)throw Error(s(311));n.lastRenderedReducer=t;var a=n.dispatch,l=n.pending,c=e.memoizedState;if(l!==null){n.pending=null;var d=l=l.next;do c=t(c,d.action),d=d.next;while(d!==l);Ie(c,e.memoizedState)||(ye=!0),e.memoizedState=c,e.baseQueue===null&&(e.baseState=c),n.lastRenderedState=c}return[c,a]}function j0(t,e,n){var a=Tt,l=fe(),c=Ut;if(c){if(n===void 0)throw Error(s(407));n=n()}else n=e();var d=!Ie((Xt||l).memoizedState,n);if(d&&(l.memoizedState=n,ye=!0),l=l.queue,nf(G0.bind(null,a,l,t),[t]),l.getSnapshot!==e||d||me!==null&&me.memoizedState.tag&1){if(a.flags|=2048,zl(9,{destroy:void 0},Y0.bind(null,a,l,n,e),null),Kt===null)throw Error(s(349));c||(Gn&127)!==0||B0(a,e,n)}return n}function B0(t,e,n){t.flags|=16384,t={getSnapshot:e,value:n},e=Tt.updateQueue,e===null?(e=Uu(),Tt.updateQueue=e,e.stores=[t]):(n=e.stores,n===null?e.stores=[t]:n.push(t))}function Y0(t,e,n,a){e.value=n,e.getSnapshot=a,q0(e)&&Z0(t)}function G0(t,e,n){return n(function(){q0(e)&&Z0(t)})}function q0(t){var e=t.getSnapshot;t=t.value;try{var n=e();return!Ie(t,n)}catch{return!0}}function Z0(t){var e=Ya(t,2);e!==null&&Je(e,t,2)}function tf(t){var e=Ye();if(typeof t=="function"){var n=t;if(t=n(),Ja){tt(!0);try{n()}finally{tt(!1)}}}return e.memoizedState=e.baseState=t,e.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:qn,lastRenderedState:t},e}function X0(t,e,n,a){return t.baseState=n,$s(t,Xt,typeof a=="function"?a:qn)}function vy(t,e,n,a,l){if(Bu(t))throw Error(s(485));if(t=e.action,t!==null){var c={payload:l,action:t,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(d){c.listeners.push(d)}};N.T!==null?n(!0):c.isTransition=!1,a(c),n=e.pending,n===null?(c.next=e.pending=c,V0(e,c)):(c.next=n.next,e.pending=n.next=c)}}function V0(t,e){var n=e.action,a=e.payload,l=t.state;if(e.isTransition){var c=N.T,d={};N.T=d;try{var g=n(l,a),S=N.S;S!==null&&S(d,g),Q0(t,e,g)}catch(M){ef(t,e,M)}finally{c!==null&&d.types!==null&&(c.types=d.types),N.T=c}}else try{c=n(l,a),Q0(t,e,c)}catch(M){ef(t,e,M)}}function Q0(t,e,n){n!==null&&typeof n=="object"&&typeof n.then=="function"?n.then(function(a){F0(t,e,a)},function(a){return ef(t,e,a)}):F0(t,e,n)}function F0(t,e,n){e.status="fulfilled",e.value=n,K0(e),t.state=n,e=t.pending,e!==null&&(n=e.next,n===e?t.pending=null:(n=n.next,e.next=n,V0(t,n)))}function ef(t,e,n){var a=t.pending;if(t.pending=null,a!==null){a=a.next;do e.status="rejected",e.reason=n,K0(e),e=e.next;while(e!==a)}t.action=null}function K0(t){t=t.listeners;for(var e=0;e<t.length;e++)(0,t[e])()}function J0(t,e){return e}function k0(t,e){if(Ut){var n=Kt.formState;if(n!==null){t:{var a=Tt;if(Ut){if(It){e:{for(var l=It,c=dn;l.nodeType!==8;){if(!c){l=null;break e}if(l=mn(l.nextSibling),l===null){l=null;break e}}c=l.data,l=c==="F!"||c==="F"?l:null}if(l){It=mn(l.nextSibling),a=l.data==="F!";break t}}ca(a)}a=!1}a&&(e=n[0])}}return n=Ye(),n.memoizedState=n.baseState=e,a={pending:null,lanes:0,dispatch:null,lastRenderedReducer:J0,lastRenderedState:e},n.queue=a,n=m2.bind(null,Tt,a),a.dispatch=n,a=tf(!1),c=sf.bind(null,Tt,!1,a.queue),a=Ye(),l={state:e,dispatch:null,action:t,pending:null},a.queue=l,n=vy.bind(null,Tt,l,c,n),l.dispatch=n,a.memoizedState=t,[e,n,!1]}function I0(t){var e=fe();return W0(e,Xt,t)}function W0(t,e,n){if(e=$s(t,e,J0)[0],t=Lu(qn)[0],typeof e=="object"&&e!==null&&typeof e.then=="function")try{var a=bi(e)}catch(d){throw d===xl?xu:d}else a=e;e=fe();var l=e.queue,c=l.dispatch;return n!==e.memoizedState&&(Tt.flags|=2048,zl(9,{destroy:void 0},_y.bind(null,l,n),null)),[a,c,t]}function _y(t,e){t.action=e}function $0(t){var e=fe(),n=Xt;if(n!==null)return W0(e,n,t);fe(),e=e.memoizedState,n=fe();var a=n.queue.dispatch;return n.memoizedState=t,[e,a,!1]}function zl(t,e,n,a){return t={tag:t,create:n,deps:a,inst:e,next:null},e=Tt.updateQueue,e===null&&(e=Uu(),Tt.updateQueue=e),n=e.lastEffect,n===null?e.lastEffect=t.next=t:(a=n.next,n.next=t,t.next=a,e.lastEffect=t),t}function P0(){return fe().memoizedState}function Hu(t,e,n,a){var l=Ye();Tt.flags|=t,l.memoizedState=zl(1|e,{destroy:void 0},n,a===void 0?null:a)}function ju(t,e,n,a){var l=fe();a=a===void 0?null:a;var c=l.memoizedState.inst;Xt!==null&&a!==null&&Fs(a,Xt.memoizedState.deps)?l.memoizedState=zl(e,c,n,a):(Tt.flags|=t,l.memoizedState=zl(1|e,c,n,a))}function t2(t,e){Hu(8390656,8,t,e)}function nf(t,e){ju(2048,8,t,e)}function py(t){Tt.flags|=4;var e=Tt.updateQueue;if(e===null)e=Uu(),Tt.updateQueue=e,e.events=[t];else{var n=e.events;n===null?e.events=[t]:n.push(t)}}function e2(t){var e=fe().memoizedState;return py({ref:e,nextImpl:t}),function(){if((Bt&2)!==0)throw Error(s(440));return e.impl.apply(void 0,arguments)}}function n2(t,e){return ju(4,2,t,e)}function a2(t,e){return ju(4,4,t,e)}function l2(t,e){if(typeof e=="function"){t=t();var n=e(t);return function(){typeof n=="function"?n():e(null)}}if(e!=null)return t=t(),e.current=t,function(){e.current=null}}function i2(t,e,n){n=n!=null?n.concat([t]):null,ju(4,4,l2.bind(null,e,t),n)}function af(){}function u2(t,e){var n=fe();e=e===void 0?null:e;var a=n.memoizedState;return e!==null&&Fs(e,a[1])?a[0]:(n.memoizedState=[t,e],t)}function c2(t,e){var n=fe();e=e===void 0?null:e;var a=n.memoizedState;if(e!==null&&Fs(e,a[1]))return a[0];if(a=t(),Ja){tt(!0);try{t()}finally{tt(!1)}}return n.memoizedState=[a,e],a}function lf(t,e,n){return n===void 0||(Gn&1073741824)!==0&&(Nt&261930)===0?t.memoizedState=e:(t.memoizedState=n,t=sd(),Tt.lanes|=t,ga|=t,n)}function s2(t,e,n,a){return Ie(n,e)?n:Ol.current!==null?(t=lf(t,n,a),Ie(t,e)||(ye=!0),t):(Gn&42)===0||(Gn&1073741824)!==0&&(Nt&261930)===0?(ye=!0,t.memoizedState=n):(t=sd(),Tt.lanes|=t,ga|=t,e)}function f2(t,e,n,a,l){var c=V.p;V.p=c!==0&&8>c?c:8;var d=N.T,g={};N.T=g,sf(t,!1,e,n);try{var S=l(),M=N.S;if(M!==null&&M(g,S),S!==null&&typeof S=="object"&&typeof S.then=="function"){var q=my(S,a);Si(t,e,q,nn(t))}else Si(t,e,a,nn(t))}catch(K){Si(t,e,{then:function(){},status:"rejected",reason:K},nn())}finally{V.p=c,d!==null&&g.types!==null&&(d.types=g.types),N.T=d}}function by(){}function uf(t,e,n,a){if(t.tag!==5)throw Error(s(476));var l=r2(t).queue;f2(t,l,e,lt,n===null?by:function(){return o2(t),n(a)})}function r2(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:lt,baseState:lt,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:qn,lastRenderedState:lt},next:null};var n={};return e.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:qn,lastRenderedState:n},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function o2(t){var e=r2(t);e.next===null&&(e=t.alternate.memoizedState),Si(t,e.next.queue,{},nn())}function cf(){return Re(Bi)}function d2(){return fe().memoizedState}function h2(){return fe().memoizedState}function Sy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var n=nn();t=ra(n);var a=oa(e,t,n);a!==null&&(Je(a,e,n),gi(a,e,n)),e={cache:Ls()},t.payload=e;return}e=e.return}}function Ey(t,e,n){var a=nn();n={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Bu(t)?y2(e,n):(n=As(t,e,n,a),n!==null&&(Je(n,t,a),g2(n,e,a)))}function m2(t,e,n){var a=nn();Si(t,e,n,a)}function Si(t,e,n,a){var l={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Bu(t))y2(e,l);else{var c=t.alternate;if(t.lanes===0&&(c===null||c.lanes===0)&&(c=e.lastRenderedReducer,c!==null))try{var d=e.lastRenderedState,g=c(d,n);if(l.hasEagerState=!0,l.eagerState=g,Ie(g,d))return _u(t,e,l,0),Kt===null&&vu(),!1}catch{}finally{}if(n=As(t,e,l,a),n!==null)return Je(n,t,a),g2(n,e,a),!0}return!1}function sf(t,e,n,a){if(a={lane:2,revertLane:Gf(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Bu(t)){if(e)throw Error(s(479))}else e=As(t,n,a,2),e!==null&&Je(e,t,2)}function Bu(t){var e=t.alternate;return t===Tt||e!==null&&e===Tt}function y2(t,e){Rl=Nu=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function g2(t,e,n){if((n&4194048)!==0){var a=e.lanes;a&=t.pendingLanes,n|=a,e.lanes=n,So(t,n)}}var Ei={readContext:Re,use:Cu,useCallback:ie,useContext:ie,useEffect:ie,useImperativeHandle:ie,useLayoutEffect:ie,useInsertionEffect:ie,useMemo:ie,useReducer:ie,useRef:ie,useState:ie,useDebugValue:ie,useDeferredValue:ie,useTransition:ie,useSyncExternalStore:ie,useId:ie,useHostTransitionStatus:ie,useFormState:ie,useActionState:ie,useOptimistic:ie,useMemoCache:ie,useCacheRefresh:ie};Ei.useEffectEvent=ie;var v2={readContext:Re,use:Cu,useCallback:function(t,e){return Ye().memoizedState=[t,e===void 0?null:e],t},useContext:Re,useEffect:t2,useImperativeHandle:function(t,e,n){n=n!=null?n.concat([t]):null,Hu(4194308,4,l2.bind(null,e,t),n)},useLayoutEffect:function(t,e){return Hu(4194308,4,t,e)},useInsertionEffect:function(t,e){Hu(4,2,t,e)},useMemo:function(t,e){var n=Ye();e=e===void 0?null:e;var a=t();if(Ja){tt(!0);try{t()}finally{tt(!1)}}return n.memoizedState=[a,e],a},useReducer:function(t,e,n){var a=Ye();if(n!==void 0){var l=n(e);if(Ja){tt(!0);try{n(e)}finally{tt(!1)}}}else l=e;return a.memoizedState=a.baseState=l,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:l},a.queue=t,t=t.dispatch=Ey.bind(null,Tt,t),[a.memoizedState,t]},useRef:function(t){var e=Ye();return t={current:t},e.memoizedState=t},useState:function(t){t=tf(t);var e=t.queue,n=m2.bind(null,Tt,e);return e.dispatch=n,[t.memoizedState,n]},useDebugValue:af,useDeferredValue:function(t,e){var n=Ye();return lf(n,t,e)},useTransition:function(){var t=tf(!1);return t=f2.bind(null,Tt,t.queue,!0,!1),Ye().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,n){var a=Tt,l=Ye();if(Ut){if(n===void 0)throw Error(s(407));n=n()}else{if(n=e(),Kt===null)throw Error(s(349));(Nt&127)!==0||B0(a,e,n)}l.memoizedState=n;var c={value:n,getSnapshot:e};return l.queue=c,t2(G0.bind(null,a,c,t),[t]),a.flags|=2048,zl(9,{destroy:void 0},Y0.bind(null,a,c,n,e),null),n},useId:function(){var t=Ye(),e=Kt.identifierPrefix;if(Ut){var n=Rn,a=On;n=(a&~(1<<32-F(a)-1)).toString(32)+n,e="_"+e+"R_"+n,n=Mu++,0<n&&(e+="H"+n.toString(32)),e+="_"}else n=yy++,e="_"+e+"r_"+n.toString(32)+"_";return t.memoizedState=e},useHostTransitionStatus:cf,useFormState:k0,useActionState:k0,useOptimistic:function(t){var e=Ye();e.memoizedState=e.baseState=t;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return e.queue=n,e=sf.bind(null,Tt,!0,n),n.dispatch=e,[t,e]},useMemoCache:Ws,useCacheRefresh:function(){return Ye().memoizedState=Sy.bind(null,Tt)},useEffectEvent:function(t){var e=Ye(),n={impl:t};return e.memoizedState=n,function(){if((Bt&2)!==0)throw Error(s(440));return n.impl.apply(void 0,arguments)}}},ff={readContext:Re,use:Cu,useCallback:u2,useContext:Re,useEffect:nf,useImperativeHandle:i2,useInsertionEffect:n2,useLayoutEffect:a2,useMemo:c2,useReducer:Lu,useRef:P0,useState:function(){return Lu(qn)},useDebugValue:af,useDeferredValue:function(t,e){var n=fe();return s2(n,Xt.memoizedState,t,e)},useTransition:function(){var t=Lu(qn)[0],e=fe().memoizedState;return[typeof t=="boolean"?t:bi(t),e]},useSyncExternalStore:j0,useId:d2,useHostTransitionStatus:cf,useFormState:I0,useActionState:I0,useOptimistic:function(t,e){var n=fe();return X0(n,Xt,t,e)},useMemoCache:Ws,useCacheRefresh:h2};ff.useEffectEvent=e2;var _2={readContext:Re,use:Cu,useCallback:u2,useContext:Re,useEffect:nf,useImperativeHandle:i2,useInsertionEffect:n2,useLayoutEffect:a2,useMemo:c2,useReducer:Ps,useRef:P0,useState:function(){return Ps(qn)},useDebugValue:af,useDeferredValue:function(t,e){var n=fe();return Xt===null?lf(n,t,e):s2(n,Xt.memoizedState,t,e)},useTransition:function(){var t=Ps(qn)[0],e=fe().memoizedState;return[typeof t=="boolean"?t:bi(t),e]},useSyncExternalStore:j0,useId:d2,useHostTransitionStatus:cf,useFormState:$0,useActionState:$0,useOptimistic:function(t,e){var n=fe();return Xt!==null?X0(n,Xt,t,e):(n.baseState=t,[t,n.queue.dispatch])},useMemoCache:Ws,useCacheRefresh:h2};_2.useEffectEvent=e2;function rf(t,e,n,a){e=t.memoizedState,n=n(a,e),n=n==null?e:p({},e,n),t.memoizedState=n,t.lanes===0&&(t.updateQueue.baseState=n)}var of={enqueueSetState:function(t,e,n){t=t._reactInternals;var a=nn(),l=ra(a);l.payload=e,n!=null&&(l.callback=n),e=oa(t,l,a),e!==null&&(Je(e,t,a),gi(e,t,a))},enqueueReplaceState:function(t,e,n){t=t._reactInternals;var a=nn(),l=ra(a);l.tag=1,l.payload=e,n!=null&&(l.callback=n),e=oa(t,l,a),e!==null&&(Je(e,t,a),gi(e,t,a))},enqueueForceUpdate:function(t,e){t=t._reactInternals;var n=nn(),a=ra(n);a.tag=2,e!=null&&(a.callback=e),e=oa(t,a,n),e!==null&&(Je(e,t,n),gi(e,t,n))}};function p2(t,e,n,a,l,c,d){return t=t.stateNode,typeof t.shouldComponentUpdate=="function"?t.shouldComponentUpdate(a,c,d):e.prototype&&e.prototype.isPureReactComponent?!si(n,a)||!si(l,c):!0}function b2(t,e,n,a){t=e.state,typeof e.componentWillReceiveProps=="function"&&e.componentWillReceiveProps(n,a),typeof e.UNSAFE_componentWillReceiveProps=="function"&&e.UNSAFE_componentWillReceiveProps(n,a),e.state!==t&&of.enqueueReplaceState(e,e.state,null)}function ka(t,e){var n=e;if("ref"in e){n={};for(var a in e)a!=="ref"&&(n[a]=e[a])}if(t=t.defaultProps){n===e&&(n=p({},n));for(var l in t)n[l]===void 0&&(n[l]=t[l])}return n}function S2(t){gu(t)}function E2(t){console.error(t)}function T2(t){gu(t)}function Yu(t,e){try{var n=t.onUncaughtError;n(e.value,{componentStack:e.stack})}catch(a){setTimeout(function(){throw a})}}function A2(t,e,n){try{var a=t.onCaughtError;a(n.value,{componentStack:n.stack,errorBoundary:e.tag===1?e.stateNode:null})}catch(l){setTimeout(function(){throw l})}}function df(t,e,n){return n=ra(n),n.tag=3,n.payload={element:null},n.callback=function(){Yu(t,e)},n}function x2(t){return t=ra(t),t.tag=3,t}function w2(t,e,n,a){var l=n.type.getDerivedStateFromError;if(typeof l=="function"){var c=a.value;t.payload=function(){return l(c)},t.callback=function(){A2(e,n,a)}}var d=n.stateNode;d!==null&&typeof d.componentDidCatch=="function"&&(t.callback=function(){A2(e,n,a),typeof l!="function"&&(va===null?va=new Set([this]):va.add(this));var g=a.stack;this.componentDidCatch(a.value,{componentStack:g!==null?g:""})})}function Ty(t,e,n,a,l){if(n.flags|=32768,a!==null&&typeof a=="object"&&typeof a.then=="function"){if(e=n.alternate,e!==null&&El(e,n,l,!0),n=$e.current,n!==null){switch(n.tag){case 31:case 13:return hn===null?Wu():n.alternate===null&&ue===0&&(ue=3),n.flags&=-257,n.flags|=65536,n.lanes=l,a===wu?n.flags|=16384:(e=n.updateQueue,e===null?n.updateQueue=new Set([a]):e.add(a),jf(t,a,l)),!1;case 22:return n.flags|=65536,a===wu?n.flags|=16384:(e=n.updateQueue,e===null?(e={transitions:null,markerInstances:null,retryQueue:new Set([a])},n.updateQueue=e):(n=e.retryQueue,n===null?e.retryQueue=new Set([a]):n.add(a)),jf(t,a,l)),!1}throw Error(s(435,n.tag))}return jf(t,a,l),Wu(),!1}if(Ut)return e=$e.current,e!==null?((e.flags&65536)===0&&(e.flags|=256),e.flags|=65536,e.lanes=l,a!==zs&&(t=Error(s(422),{cause:a}),oi(fn(t,n)))):(a!==zs&&(e=Error(s(423),{cause:a}),oi(fn(e,n))),t=t.current.alternate,t.flags|=65536,l&=-l,t.lanes|=l,a=fn(a,n),l=df(t.stateNode,a,l),qs(t,l),ue!==4&&(ue=2)),!1;var c=Error(s(520),{cause:a});if(c=fn(c,n),zi===null?zi=[c]:zi.push(c),ue!==4&&(ue=2),e===null)return!0;a=fn(a,n),n=e;do{switch(n.tag){case 3:return n.flags|=65536,t=l&-l,n.lanes|=t,t=df(n.stateNode,a,t),qs(n,t),!1;case 1:if(e=n.type,c=n.stateNode,(n.flags&128)===0&&(typeof e.getDerivedStateFromError=="function"||c!==null&&typeof c.componentDidCatch=="function"&&(va===null||!va.has(c))))return n.flags|=65536,l&=-l,n.lanes|=l,l=x2(l),w2(l,t,n,a),qs(n,l),!1}n=n.return}while(n!==null);return!1}var hf=Error(s(461)),ye=!1;function De(t,e,n,a){e.child=t===null?z0(e,null,n,a):Ka(e,t.child,n,a)}function O2(t,e,n,a,l){n=n.render;var c=e.ref;if("ref"in a){var d={};for(var g in a)g!=="ref"&&(d[g]=a[g])}else d=a;return Xa(e),a=Ks(t,e,n,d,c,l),g=Js(),t!==null&&!ye?(ks(t,e,l),Zn(t,e,l)):(Ut&&g&&Rs(e),e.flags|=1,De(t,e,a,l),e.child)}function R2(t,e,n,a,l){if(t===null){var c=n.type;return typeof c=="function"&&!xs(c)&&c.defaultProps===void 0&&n.compare===null?(e.tag=15,e.type=c,D2(t,e,c,a,l)):(t=bu(n.type,null,a,e,e.mode,l),t.ref=e.ref,t.return=e,e.child=t)}if(c=t.child,!Sf(t,l)){var d=c.memoizedProps;if(n=n.compare,n=n!==null?n:si,n(d,a)&&t.ref===e.ref)return Zn(t,e,l)}return e.flags|=1,t=Hn(c,a),t.ref=e.ref,t.return=e,e.child=t}function D2(t,e,n,a,l){if(t!==null){var c=t.memoizedProps;if(si(c,a)&&t.ref===e.ref)if(ye=!1,e.pendingProps=a=c,Sf(t,l))(t.flags&131072)!==0&&(ye=!0);else return e.lanes=t.lanes,Zn(t,e,l)}return mf(t,e,n,a,l)}function z2(t,e,n,a){var l=a.children,c=t!==null?t.memoizedState:null;if(t===null&&e.stateNode===null&&(e.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),a.mode==="hidden"){if((e.flags&128)!==0){if(c=c!==null?c.baseLanes|n:n,t!==null){for(a=e.child=t.child,l=0;a!==null;)l=l|a.lanes|a.childLanes,a=a.sibling;a=l&~c}else a=0,e.child=null;return N2(t,e,c,n,a)}if((n&536870912)!==0)e.memoizedState={baseLanes:0,cachePool:null},t!==null&&Au(e,c!==null?c.cachePool:null),c!==null?U0(e,c):Xs(),C0(e);else return a=e.lanes=536870912,N2(t,e,c!==null?c.baseLanes|n:n,n,a)}else c!==null?(Au(e,c.cachePool),U0(e,c),ha(),e.memoizedState=null):(t!==null&&Au(e,null),Xs(),ha());return De(t,e,l,n),e.child}function Ti(t,e){return t!==null&&t.tag===22||e.stateNode!==null||(e.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),e.sibling}function N2(t,e,n,a,l){var c=js();return c=c===null?null:{parent:he._currentValue,pool:c},e.memoizedState={baseLanes:n,cachePool:c},t!==null&&Au(e,null),Xs(),C0(e),t!==null&&El(t,e,a,!0),e.childLanes=l,null}function Gu(t,e){return e=Zu({mode:e.mode,children:e.children},t.mode),e.ref=t.ref,t.child=e,e.return=t,e}function M2(t,e,n){return Ka(e,t.child,null,n),t=Gu(e,e.pendingProps),t.flags|=2,Pe(e),e.memoizedState=null,t}function Ay(t,e,n){var a=e.pendingProps,l=(e.flags&128)!==0;if(e.flags&=-129,t===null){if(Ut){if(a.mode==="hidden")return t=Gu(e,a),e.lanes=536870912,Ti(null,t);if(Qs(e),(t=It)?(t=Vd(t,dn),t=t!==null&&t.data==="&"?t:null,t!==null&&(e.memoizedState={dehydrated:t,treeContext:ia!==null?{id:On,overflow:Rn}:null,retryLane:536870912,hydrationErrors:null},n=y0(t),n.return=e,e.child=n,Oe=e,It=null)):t=null,t===null)throw ca(e);return e.lanes=536870912,null}return Gu(e,a)}var c=t.memoizedState;if(c!==null){var d=c.dehydrated;if(Qs(e),l)if(e.flags&256)e.flags&=-257,e=M2(t,e,n);else if(e.memoizedState!==null)e.child=t.child,e.flags|=128,e=null;else throw Error(s(558));else if(ye||El(t,e,n,!1),l=(n&t.childLanes)!==0,ye||l){if(a=Kt,a!==null&&(d=Eo(a,n),d!==0&&d!==c.retryLane))throw c.retryLane=d,Ya(t,d),Je(a,t,d),hf;Wu(),e=M2(t,e,n)}else t=c.treeContext,It=mn(d.nextSibling),Oe=e,Ut=!0,ua=null,dn=!1,t!==null&&_0(e,t),e=Gu(e,a),e.flags|=4096;return e}return t=Hn(t.child,{mode:a.mode,children:a.children}),t.ref=e.ref,e.child=t,t.return=e,t}function qu(t,e){var n=e.ref;if(n===null)t!==null&&t.ref!==null&&(e.flags|=4194816);else{if(typeof n!="function"&&typeof n!="object")throw Error(s(284));(t===null||t.ref!==n)&&(e.flags|=4194816)}}function mf(t,e,n,a,l){return Xa(e),n=Ks(t,e,n,a,void 0,l),a=Js(),t!==null&&!ye?(ks(t,e,l),Zn(t,e,l)):(Ut&&a&&Rs(e),e.flags|=1,De(t,e,n,l),e.child)}function U2(t,e,n,a,l,c){return Xa(e),e.updateQueue=null,n=H0(e,a,n,l),L0(t),a=Js(),t!==null&&!ye?(ks(t,e,c),Zn(t,e,c)):(Ut&&a&&Rs(e),e.flags|=1,De(t,e,n,c),e.child)}function C2(t,e,n,a,l){if(Xa(e),e.stateNode===null){var c=_l,d=n.contextType;typeof d=="object"&&d!==null&&(c=Re(d)),c=new n(a,c),e.memoizedState=c.state!==null&&c.state!==void 0?c.state:null,c.updater=of,e.stateNode=c,c._reactInternals=e,c=e.stateNode,c.props=a,c.state=e.memoizedState,c.refs={},Ys(e),d=n.contextType,c.context=typeof d=="object"&&d!==null?Re(d):_l,c.state=e.memoizedState,d=n.getDerivedStateFromProps,typeof d=="function"&&(rf(e,n,d,a),c.state=e.memoizedState),typeof n.getDerivedStateFromProps=="function"||typeof c.getSnapshotBeforeUpdate=="function"||typeof c.UNSAFE_componentWillMount!="function"&&typeof c.componentWillMount!="function"||(d=c.state,typeof c.componentWillMount=="function"&&c.componentWillMount(),typeof c.UNSAFE_componentWillMount=="function"&&c.UNSAFE_componentWillMount(),d!==c.state&&of.enqueueReplaceState(c,c.state,null),_i(e,a,c,l),vi(),c.state=e.memoizedState),typeof c.componentDidMount=="function"&&(e.flags|=4194308),a=!0}else if(t===null){c=e.stateNode;var g=e.memoizedProps,S=ka(n,g);c.props=S;var M=c.context,q=n.contextType;d=_l,typeof q=="object"&&q!==null&&(d=Re(q));var K=n.getDerivedStateFromProps;q=typeof K=="function"||typeof c.getSnapshotBeforeUpdate=="function",g=e.pendingProps!==g,q||typeof c.UNSAFE_componentWillReceiveProps!="function"&&typeof c.componentWillReceiveProps!="function"||(g||M!==d)&&b2(e,c,a,d),fa=!1;var C=e.memoizedState;c.state=C,_i(e,a,c,l),vi(),M=e.memoizedState,g||C!==M||fa?(typeof K=="function"&&(rf(e,n,K,a),M=e.memoizedState),(S=fa||p2(e,n,S,a,C,M,d))?(q||typeof c.UNSAFE_componentWillMount!="function"&&typeof c.componentWillMount!="function"||(typeof c.componentWillMount=="function"&&c.componentWillMount(),typeof c.UNSAFE_componentWillMount=="function"&&c.UNSAFE_componentWillMount()),typeof c.componentDidMount=="function"&&(e.flags|=4194308)):(typeof c.componentDidMount=="function"&&(e.flags|=4194308),e.memoizedProps=a,e.memoizedState=M),c.props=a,c.state=M,c.context=d,a=S):(typeof c.componentDidMount=="function"&&(e.flags|=4194308),a=!1)}else{c=e.stateNode,Gs(t,e),d=e.memoizedProps,q=ka(n,d),c.props=q,K=e.pendingProps,C=c.context,M=n.contextType,S=_l,typeof M=="object"&&M!==null&&(S=Re(M)),g=n.getDerivedStateFromProps,(M=typeof g=="function"||typeof c.getSnapshotBeforeUpdate=="function")||typeof c.UNSAFE_componentWillReceiveProps!="function"&&typeof c.componentWillReceiveProps!="function"||(d!==K||C!==S)&&b2(e,c,a,S),fa=!1,C=e.memoizedState,c.state=C,_i(e,a,c,l),vi();var j=e.memoizedState;d!==K||C!==j||fa||t!==null&&t.dependencies!==null&&Eu(t.dependencies)?(typeof g=="function"&&(rf(e,n,g,a),j=e.memoizedState),(q=fa||p2(e,n,q,a,C,j,S)||t!==null&&t.dependencies!==null&&Eu(t.dependencies))?(M||typeof c.UNSAFE_componentWillUpdate!="function"&&typeof c.componentWillUpdate!="function"||(typeof c.componentWillUpdate=="function"&&c.componentWillUpdate(a,j,S),typeof c.UNSAFE_componentWillUpdate=="function"&&c.UNSAFE_componentWillUpdate(a,j,S)),typeof c.componentDidUpdate=="function"&&(e.flags|=4),typeof c.getSnapshotBeforeUpdate=="function"&&(e.flags|=1024)):(typeof c.componentDidUpdate!="function"||d===t.memoizedProps&&C===t.memoizedState||(e.flags|=4),typeof c.getSnapshotBeforeUpdate!="function"||d===t.memoizedProps&&C===t.memoizedState||(e.flags|=1024),e.memoizedProps=a,e.memoizedState=j),c.props=a,c.state=j,c.context=S,a=q):(typeof c.componentDidUpdate!="function"||d===t.memoizedProps&&C===t.memoizedState||(e.flags|=4),typeof c.getSnapshotBeforeUpdate!="function"||d===t.memoizedProps&&C===t.memoizedState||(e.flags|=1024),a=!1)}return c=a,qu(t,e),a=(e.flags&128)!==0,c||a?(c=e.stateNode,n=a&&typeof n.getDerivedStateFromError!="function"?null:c.render(),e.flags|=1,t!==null&&a?(e.child=Ka(e,t.child,null,l),e.child=Ka(e,null,n,l)):De(t,e,n,l),e.memoizedState=c.state,t=e.child):t=Zn(t,e,l),t}function L2(t,e,n,a){return qa(),e.flags|=256,De(t,e,n,a),e.child}var yf={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function gf(t){return{baseLanes:t,cachePool:A0()}}function vf(t,e,n){return t=t!==null?t.childLanes&~n:0,e&&(t|=en),t}function H2(t,e,n){var a=e.pendingProps,l=!1,c=(e.flags&128)!==0,d;if((d=c)||(d=t!==null&&t.memoizedState===null?!1:(se.current&2)!==0),d&&(l=!0,e.flags&=-129),d=(e.flags&32)!==0,e.flags&=-33,t===null){if(Ut){if(l?da(e):ha(),(t=It)?(t=Vd(t,dn),t=t!==null&&t.data!=="&"?t:null,t!==null&&(e.memoizedState={dehydrated:t,treeContext:ia!==null?{id:On,overflow:Rn}:null,retryLane:536870912,hydrationErrors:null},n=y0(t),n.return=e,e.child=n,Oe=e,It=null)):t=null,t===null)throw ca(e);return Pf(t)?e.lanes=32:e.lanes=536870912,null}var g=a.children;return a=a.fallback,l?(ha(),l=e.mode,g=Zu({mode:"hidden",children:g},l),a=Ga(a,l,n,null),g.return=e,a.return=e,g.sibling=a,e.child=g,a=e.child,a.memoizedState=gf(n),a.childLanes=vf(t,d,n),e.memoizedState=yf,Ti(null,a)):(da(e),_f(e,g))}var S=t.memoizedState;if(S!==null&&(g=S.dehydrated,g!==null)){if(c)e.flags&256?(da(e),e.flags&=-257,e=pf(t,e,n)):e.memoizedState!==null?(ha(),e.child=t.child,e.flags|=128,e=null):(ha(),g=a.fallback,l=e.mode,a=Zu({mode:"visible",children:a.children},l),g=Ga(g,l,n,null),g.flags|=2,a.return=e,g.return=e,a.sibling=g,e.child=a,Ka(e,t.child,null,n),a=e.child,a.memoizedState=gf(n),a.childLanes=vf(t,d,n),e.memoizedState=yf,e=Ti(null,a));else if(da(e),Pf(g)){if(d=g.nextSibling&&g.nextSibling.dataset,d)var M=d.dgst;d=M,a=Error(s(419)),a.stack="",a.digest=d,oi({value:a,source:null,stack:null}),e=pf(t,e,n)}else if(ye||El(t,e,n,!1),d=(n&t.childLanes)!==0,ye||d){if(d=Kt,d!==null&&(a=Eo(d,n),a!==0&&a!==S.retryLane))throw S.retryLane=a,Ya(t,a),Je(d,t,a),hf;$f(g)||Wu(),e=pf(t,e,n)}else $f(g)?(e.flags|=192,e.child=t.child,e=null):(t=S.treeContext,It=mn(g.nextSibling),Oe=e,Ut=!0,ua=null,dn=!1,t!==null&&_0(e,t),e=_f(e,a.children),e.flags|=4096);return e}return l?(ha(),g=a.fallback,l=e.mode,S=t.child,M=S.sibling,a=Hn(S,{mode:"hidden",children:a.children}),a.subtreeFlags=S.subtreeFlags&65011712,M!==null?g=Hn(M,g):(g=Ga(g,l,n,null),g.flags|=2),g.return=e,a.return=e,a.sibling=g,e.child=a,Ti(null,a),a=e.child,g=t.child.memoizedState,g===null?g=gf(n):(l=g.cachePool,l!==null?(S=he._currentValue,l=l.parent!==S?{parent:S,pool:S}:l):l=A0(),g={baseLanes:g.baseLanes|n,cachePool:l}),a.memoizedState=g,a.childLanes=vf(t,d,n),e.memoizedState=yf,Ti(t.child,a)):(da(e),n=t.child,t=n.sibling,n=Hn(n,{mode:"visible",children:a.children}),n.return=e,n.sibling=null,t!==null&&(d=e.deletions,d===null?(e.deletions=[t],e.flags|=16):d.push(t)),e.child=n,e.memoizedState=null,n)}function _f(t,e){return e=Zu({mode:"visible",children:e},t.mode),e.return=t,t.child=e}function Zu(t,e){return t=We(22,t,null,e),t.lanes=0,t}function pf(t,e,n){return Ka(e,t.child,null,n),t=_f(e,e.pendingProps.children),t.flags|=2,e.memoizedState=null,t}function j2(t,e,n){t.lanes|=e;var a=t.alternate;a!==null&&(a.lanes|=e),Us(t.return,e,n)}function bf(t,e,n,a,l,c){var d=t.memoizedState;d===null?t.memoizedState={isBackwards:e,rendering:null,renderingStartTime:0,last:a,tail:n,tailMode:l,treeForkCount:c}:(d.isBackwards=e,d.rendering=null,d.renderingStartTime=0,d.last=a,d.tail=n,d.tailMode=l,d.treeForkCount=c)}function B2(t,e,n){var a=e.pendingProps,l=a.revealOrder,c=a.tail;a=a.children;var d=se.current,g=(d&2)!==0;if(g?(d=d&1|2,e.flags|=128):d&=1,k(se,d),De(t,e,a,n),a=Ut?ri:0,!g&&t!==null&&(t.flags&128)!==0)t:for(t=e.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&j2(t,n,e);else if(t.tag===19)j2(t,n,e);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break t;for(;t.sibling===null;){if(t.return===null||t.return===e)break t;t=t.return}t.sibling.return=t.return,t=t.sibling}switch(l){case"forwards":for(n=e.child,l=null;n!==null;)t=n.alternate,t!==null&&zu(t)===null&&(l=n),n=n.sibling;n=l,n===null?(l=e.child,e.child=null):(l=n.sibling,n.sibling=null),bf(e,!1,l,n,c,a);break;case"backwards":case"unstable_legacy-backwards":for(n=null,l=e.child,e.child=null;l!==null;){if(t=l.alternate,t!==null&&zu(t)===null){e.child=l;break}t=l.sibling,l.sibling=n,n=l,l=t}bf(e,!0,n,null,c,a);break;case"together":bf(e,!1,null,null,void 0,a);break;default:e.memoizedState=null}return e.child}function Zn(t,e,n){if(t!==null&&(e.dependencies=t.dependencies),ga|=e.lanes,(n&e.childLanes)===0)if(t!==null){if(El(t,e,n,!1),(n&e.childLanes)===0)return null}else return null;if(t!==null&&e.child!==t.child)throw Error(s(153));if(e.child!==null){for(t=e.child,n=Hn(t,t.pendingProps),e.child=n,n.return=e;t.sibling!==null;)t=t.sibling,n=n.sibling=Hn(t,t.pendingProps),n.return=e;n.sibling=null}return e.child}function Sf(t,e){return(t.lanes&e)!==0?!0:(t=t.dependencies,!!(t!==null&&Eu(t)))}function xy(t,e,n){switch(e.tag){case 3:H(e,e.stateNode.containerInfo),sa(e,he,t.memoizedState.cache),qa();break;case 27:case 5:Yt(e);break;case 4:H(e,e.stateNode.containerInfo);break;case 10:sa(e,e.type,e.memoizedProps.value);break;case 31:if(e.memoizedState!==null)return e.flags|=128,Qs(e),null;break;case 13:var a=e.memoizedState;if(a!==null)return a.dehydrated!==null?(da(e),e.flags|=128,null):(n&e.child.childLanes)!==0?H2(t,e,n):(da(e),t=Zn(t,e,n),t!==null?t.sibling:null);da(e);break;case 19:var l=(t.flags&128)!==0;if(a=(n&e.childLanes)!==0,a||(El(t,e,n,!1),a=(n&e.childLanes)!==0),l){if(a)return B2(t,e,n);e.flags|=128}if(l=e.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),k(se,se.current),a)break;return null;case 22:return e.lanes=0,z2(t,e,n,e.pendingProps);case 24:sa(e,he,t.memoizedState.cache)}return Zn(t,e,n)}function Y2(t,e,n){if(t!==null)if(t.memoizedProps!==e.pendingProps)ye=!0;else{if(!Sf(t,n)&&(e.flags&128)===0)return ye=!1,xy(t,e,n);ye=(t.flags&131072)!==0}else ye=!1,Ut&&(e.flags&1048576)!==0&&v0(e,ri,e.index);switch(e.lanes=0,e.tag){case 16:t:{var a=e.pendingProps;if(t=Qa(e.elementType),e.type=t,typeof t=="function")xs(t)?(a=ka(t,a),e.tag=1,e=C2(null,e,t,a,n)):(e.tag=0,e=mf(null,e,t,a,n));else{if(t!=null){var l=t.$$typeof;if(l===I){e.tag=11,e=O2(null,e,t,a,n);break t}else if(l===X){e.tag=14,e=R2(null,e,t,a,n);break t}}throw e=yt(t)||t,Error(s(306,e,""))}}return e;case 0:return mf(t,e,e.type,e.pendingProps,n);case 1:return a=e.type,l=ka(a,e.pendingProps),C2(t,e,a,l,n);case 3:t:{if(H(e,e.stateNode.containerInfo),t===null)throw Error(s(387));a=e.pendingProps;var c=e.memoizedState;l=c.element,Gs(t,e),_i(e,a,null,n);var d=e.memoizedState;if(a=d.cache,sa(e,he,a),a!==c.cache&&Cs(e,[he],n,!0),vi(),a=d.element,c.isDehydrated)if(c={element:a,isDehydrated:!1,cache:d.cache},e.updateQueue.baseState=c,e.memoizedState=c,e.flags&256){e=L2(t,e,a,n);break t}else if(a!==l){l=fn(Error(s(424)),e),oi(l),e=L2(t,e,a,n);break t}else{switch(t=e.stateNode.containerInfo,t.nodeType){case 9:t=t.body;break;default:t=t.nodeName==="HTML"?t.ownerDocument.body:t}for(It=mn(t.firstChild),Oe=e,Ut=!0,ua=null,dn=!0,n=z0(e,null,a,n),e.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(qa(),a===l){e=Zn(t,e,n);break t}De(t,e,a,n)}e=e.child}return e;case 26:return qu(t,e),t===null?(n=Id(e.type,null,e.pendingProps,null))?e.memoizedState=n:Ut||(n=e.type,t=e.pendingProps,a=lc(L.current).createElement(n),a[we]=e,a[Ze]=t,ze(a,n,t),be(a),e.stateNode=a):e.memoizedState=Id(e.type,t.memoizedProps,e.pendingProps,t.memoizedState),null;case 27:return Yt(e),t===null&&Ut&&(a=e.stateNode=Kd(e.type,e.pendingProps,L.current),Oe=e,dn=!0,l=It,Sa(e.type)?(tr=l,It=mn(a.firstChild)):It=l),De(t,e,e.pendingProps.children,n),qu(t,e),t===null&&(e.flags|=4194304),e.child;case 5:return t===null&&Ut&&((l=a=It)&&(a=eg(a,e.type,e.pendingProps,dn),a!==null?(e.stateNode=a,Oe=e,It=mn(a.firstChild),dn=!1,l=!0):l=!1),l||ca(e)),Yt(e),l=e.type,c=e.pendingProps,d=t!==null?t.memoizedProps:null,a=c.children,kf(l,c)?a=null:d!==null&&kf(l,d)&&(e.flags|=32),e.memoizedState!==null&&(l=Ks(t,e,gy,null,null,n),Bi._currentValue=l),qu(t,e),De(t,e,a,n),e.child;case 6:return t===null&&Ut&&((t=n=It)&&(n=ng(n,e.pendingProps,dn),n!==null?(e.stateNode=n,Oe=e,It=null,t=!0):t=!1),t||ca(e)),null;case 13:return H2(t,e,n);case 4:return H(e,e.stateNode.containerInfo),a=e.pendingProps,t===null?e.child=Ka(e,null,a,n):De(t,e,a,n),e.child;case 11:return O2(t,e,e.type,e.pendingProps,n);case 7:return De(t,e,e.pendingProps,n),e.child;case 8:return De(t,e,e.pendingProps.children,n),e.child;case 12:return De(t,e,e.pendingProps.children,n),e.child;case 10:return a=e.pendingProps,sa(e,e.type,a.value),De(t,e,a.children,n),e.child;case 9:return l=e.type._context,a=e.pendingProps.children,Xa(e),l=Re(l),a=a(l),e.flags|=1,De(t,e,a,n),e.child;case 14:return R2(t,e,e.type,e.pendingProps,n);case 15:return D2(t,e,e.type,e.pendingProps,n);case 19:return B2(t,e,n);case 31:return Ay(t,e,n);case 22:return z2(t,e,n,e.pendingProps);case 24:return Xa(e),a=Re(he),t===null?(l=js(),l===null&&(l=Kt,c=Ls(),l.pooledCache=c,c.refCount++,c!==null&&(l.pooledCacheLanes|=n),l=c),e.memoizedState={parent:a,cache:l},Ys(e),sa(e,he,l)):((t.lanes&n)!==0&&(Gs(t,e),_i(e,null,null,n),vi()),l=t.memoizedState,c=e.memoizedState,l.parent!==a?(l={parent:a,cache:a},e.memoizedState=l,e.lanes===0&&(e.memoizedState=e.updateQueue.baseState=l),sa(e,he,a)):(a=c.cache,sa(e,he,a),a!==l.cache&&Cs(e,[he],n,!0))),De(t,e,e.pendingProps.children,n),e.child;case 29:throw e.pendingProps}throw Error(s(156,e.tag))}function Xn(t){t.flags|=4}function Ef(t,e,n,a,l){if((e=(t.mode&32)!==0)&&(e=!1),e){if(t.flags|=16777216,(l&335544128)===l)if(t.stateNode.complete)t.flags|=8192;else if(dd())t.flags|=8192;else throw Fa=wu,Bs}else t.flags&=-16777217}function G2(t,e){if(e.type!=="stylesheet"||(e.state.loading&4)!==0)t.flags&=-16777217;else if(t.flags|=16777216,!e1(e))if(dd())t.flags|=8192;else throw Fa=wu,Bs}function Xu(t,e){e!==null&&(t.flags|=4),t.flags&16384&&(e=t.tag!==22?po():536870912,t.lanes|=e,Cl|=e)}function Ai(t,e){if(!Ut)switch(t.tailMode){case"hidden":e=t.tail;for(var n=null;e!==null;)e.alternate!==null&&(n=e),e=e.sibling;n===null?t.tail=null:n.sibling=null;break;case"collapsed":n=t.tail;for(var a=null;n!==null;)n.alternate!==null&&(a=n),n=n.sibling;a===null?e||t.tail===null?t.tail=null:t.tail.sibling=null:a.sibling=null}}function Wt(t){var e=t.alternate!==null&&t.alternate.child===t.child,n=0,a=0;if(e)for(var l=t.child;l!==null;)n|=l.lanes|l.childLanes,a|=l.subtreeFlags&65011712,a|=l.flags&65011712,l.return=t,l=l.sibling;else for(l=t.child;l!==null;)n|=l.lanes|l.childLanes,a|=l.subtreeFlags,a|=l.flags,l.return=t,l=l.sibling;return t.subtreeFlags|=a,t.childLanes=n,e}function wy(t,e,n){var a=e.pendingProps;switch(Ds(e),e.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Wt(e),null;case 1:return Wt(e),null;case 3:return n=e.stateNode,a=null,t!==null&&(a=t.memoizedState.cache),e.memoizedState.cache!==a&&(e.flags|=2048),Yn(he),ht(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(t===null||t.child===null)&&(Sl(e)?Xn(e):t===null||t.memoizedState.isDehydrated&&(e.flags&256)===0||(e.flags|=1024,Ns())),Wt(e),null;case 26:var l=e.type,c=e.memoizedState;return t===null?(Xn(e),c!==null?(Wt(e),G2(e,c)):(Wt(e),Ef(e,l,null,a,n))):c?c!==t.memoizedState?(Xn(e),Wt(e),G2(e,c)):(Wt(e),e.flags&=-16777217):(t=t.memoizedProps,t!==a&&Xn(e),Wt(e),Ef(e,l,t,a,n)),null;case 27:if(Ft(e),n=L.current,l=e.type,t!==null&&e.stateNode!=null)t.memoizedProps!==a&&Xn(e);else{if(!a){if(e.stateNode===null)throw Error(s(166));return Wt(e),null}t=w.current,Sl(e)?p0(e):(t=Kd(l,a,n),e.stateNode=t,Xn(e))}return Wt(e),null;case 5:if(Ft(e),l=e.type,t!==null&&e.stateNode!=null)t.memoizedProps!==a&&Xn(e);else{if(!a){if(e.stateNode===null)throw Error(s(166));return Wt(e),null}if(c=w.current,Sl(e))p0(e);else{var d=lc(L.current);switch(c){case 1:c=d.createElementNS("http://www.w3.org/2000/svg",l);break;case 2:c=d.createElementNS("http://www.w3.org/1998/Math/MathML",l);break;default:switch(l){case"svg":c=d.createElementNS("http://www.w3.org/2000/svg",l);break;case"math":c=d.createElementNS("http://www.w3.org/1998/Math/MathML",l);break;case"script":c=d.createElement("div"),c.innerHTML="<script><\/script>",c=c.removeChild(c.firstChild);break;case"select":c=typeof a.is=="string"?d.createElement("select",{is:a.is}):d.createElement("select"),a.multiple?c.multiple=!0:a.size&&(c.size=a.size);break;default:c=typeof a.is=="string"?d.createElement(l,{is:a.is}):d.createElement(l)}}c[we]=e,c[Ze]=a;t:for(d=e.child;d!==null;){if(d.tag===5||d.tag===6)c.appendChild(d.stateNode);else if(d.tag!==4&&d.tag!==27&&d.child!==null){d.child.return=d,d=d.child;continue}if(d===e)break t;for(;d.sibling===null;){if(d.return===null||d.return===e)break t;d=d.return}d.sibling.return=d.return,d=d.sibling}e.stateNode=c;t:switch(ze(c,l,a),l){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break t;case"img":a=!0;break t;default:a=!1}a&&Xn(e)}}return Wt(e),Ef(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,n),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==a&&Xn(e);else{if(typeof a!="string"&&e.stateNode===null)throw Error(s(166));if(t=L.current,Sl(e)){if(t=e.stateNode,n=e.memoizedProps,a=null,l=Oe,l!==null)switch(l.tag){case 27:case 5:a=l.memoizedProps}t[we]=e,t=!!(t.nodeValue===n||a!==null&&a.suppressHydrationWarning===!0||Hd(t.nodeValue,n)),t||ca(e,!0)}else t=lc(t).createTextNode(a),t[we]=e,e.stateNode=t}return Wt(e),null;case 31:if(n=e.memoizedState,t===null||t.memoizedState!==null){if(a=Sl(e),n!==null){if(t===null){if(!a)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[we]=e}else qa(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Wt(e),t=!1}else n=Ns(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),t=!0;if(!t)return e.flags&256?(Pe(e),e):(Pe(e),null);if((e.flags&128)!==0)throw Error(s(558))}return Wt(e),null;case 13:if(a=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(l=Sl(e),a!==null&&a.dehydrated!==null){if(t===null){if(!l)throw Error(s(318));if(l=e.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(s(317));l[we]=e}else qa(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Wt(e),l=!1}else l=Ns(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),l=!0;if(!l)return e.flags&256?(Pe(e),e):(Pe(e),null)}return Pe(e),(e.flags&128)!==0?(e.lanes=n,e):(n=a!==null,t=t!==null&&t.memoizedState!==null,n&&(a=e.child,l=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(l=a.alternate.memoizedState.cachePool.pool),c=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(c=a.memoizedState.cachePool.pool),c!==l&&(a.flags|=2048)),n!==t&&n&&(e.child.flags|=8192),Xu(e,e.updateQueue),Wt(e),null);case 4:return ht(),t===null&&Vf(e.stateNode.containerInfo),Wt(e),null;case 10:return Yn(e.type),Wt(e),null;case 19:if(R(se),a=e.memoizedState,a===null)return Wt(e),null;if(l=(e.flags&128)!==0,c=a.rendering,c===null)if(l)Ai(a,!1);else{if(ue!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(c=zu(t),c!==null){for(e.flags|=128,Ai(a,!1),t=c.updateQueue,e.updateQueue=t,Xu(e,t),e.subtreeFlags=0,t=n,n=e.child;n!==null;)m0(n,t),n=n.sibling;return k(se,se.current&1|2),Ut&&jn(e,a.treeForkCount),e.child}t=t.sibling}a.tail!==null&&xe()>Ju&&(e.flags|=128,l=!0,Ai(a,!1),e.lanes=4194304)}else{if(!l)if(t=zu(c),t!==null){if(e.flags|=128,l=!0,t=t.updateQueue,e.updateQueue=t,Xu(e,t),Ai(a,!0),a.tail===null&&a.tailMode==="hidden"&&!c.alternate&&!Ut)return Wt(e),null}else 2*xe()-a.renderingStartTime>Ju&&n!==536870912&&(e.flags|=128,l=!0,Ai(a,!1),e.lanes=4194304);a.isBackwards?(c.sibling=e.child,e.child=c):(t=a.last,t!==null?t.sibling=c:e.child=c,a.last=c)}return a.tail!==null?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=xe(),t.sibling=null,n=se.current,k(se,l?n&1|2:n&1),Ut&&jn(e,a.treeForkCount),t):(Wt(e),null);case 22:case 23:return Pe(e),Vs(),a=e.memoizedState!==null,t!==null?t.memoizedState!==null!==a&&(e.flags|=8192):a&&(e.flags|=8192),a?(n&536870912)!==0&&(e.flags&128)===0&&(Wt(e),e.subtreeFlags&6&&(e.flags|=8192)):Wt(e),n=e.updateQueue,n!==null&&Xu(e,n.retryQueue),n=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),a=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),a!==n&&(e.flags|=2048),t!==null&&R(Va),null;case 24:return n=null,t!==null&&(n=t.memoizedState.cache),e.memoizedState.cache!==n&&(e.flags|=2048),Yn(he),Wt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function Oy(t,e){switch(Ds(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Yn(he),ht(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ft(e),null;case 31:if(e.memoizedState!==null){if(Pe(e),e.alternate===null)throw Error(s(340));qa()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(Pe(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));qa()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return R(se),null;case 4:return ht(),null;case 10:return Yn(e.type),null;case 22:case 23:return Pe(e),Vs(),t!==null&&R(Va),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Yn(he),null;case 25:return null;default:return null}}function q2(t,e){switch(Ds(e),e.tag){case 3:Yn(he),ht();break;case 26:case 27:case 5:Ft(e);break;case 4:ht();break;case 31:e.memoizedState!==null&&Pe(e);break;case 13:Pe(e);break;case 19:R(se);break;case 10:Yn(e.type);break;case 22:case 23:Pe(e),Vs(),t!==null&&R(Va);break;case 24:Yn(he)}}function xi(t,e){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var l=a.next;n=l;do{if((n.tag&t)===t){a=void 0;var c=n.create,d=n.inst;a=c(),d.destroy=a}n=n.next}while(n!==l)}}catch(g){Zt(e,e.return,g)}}function ma(t,e,n){try{var a=e.updateQueue,l=a!==null?a.lastEffect:null;if(l!==null){var c=l.next;a=c;do{if((a.tag&t)===t){var d=a.inst,g=d.destroy;if(g!==void 0){d.destroy=void 0,l=e;var S=n,M=g;try{M()}catch(q){Zt(l,S,q)}}}a=a.next}while(a!==c)}}catch(q){Zt(e,e.return,q)}}function Z2(t){var e=t.updateQueue;if(e!==null){var n=t.stateNode;try{M0(e,n)}catch(a){Zt(t,t.return,a)}}}function X2(t,e,n){n.props=ka(t.type,t.memoizedProps),n.state=t.memoizedState;try{n.componentWillUnmount()}catch(a){Zt(t,e,a)}}function wi(t,e){try{var n=t.ref;if(n!==null){switch(t.tag){case 26:case 27:case 5:var a=t.stateNode;break;case 30:a=t.stateNode;break;default:a=t.stateNode}typeof n=="function"?t.refCleanup=n(a):n.current=a}}catch(l){Zt(t,e,l)}}function Dn(t,e){var n=t.ref,a=t.refCleanup;if(n!==null)if(typeof a=="function")try{a()}catch(l){Zt(t,e,l)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(l){Zt(t,e,l)}else n.current=null}function V2(t){var e=t.type,n=t.memoizedProps,a=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":n.autoFocus&&a.focus();break t;case"img":n.src?a.src=n.src:n.srcSet&&(a.srcset=n.srcSet)}}catch(l){Zt(t,t.return,l)}}function Tf(t,e,n){try{var a=t.stateNode;ky(a,t.type,n,e),a[Ze]=e}catch(l){Zt(t,t.return,l)}}function Q2(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Sa(t.type)||t.tag===4}function Af(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Q2(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Sa(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function xf(t,e,n){var a=t.tag;if(a===5||a===6)t=t.stateNode,e?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(t,e):(e=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,e.appendChild(t),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=Cn));else if(a!==4&&(a===27&&Sa(t.type)&&(n=t.stateNode,e=null),t=t.child,t!==null))for(xf(t,e,n),t=t.sibling;t!==null;)xf(t,e,n),t=t.sibling}function Vu(t,e,n){var a=t.tag;if(a===5||a===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(a!==4&&(a===27&&Sa(t.type)&&(n=t.stateNode),t=t.child,t!==null))for(Vu(t,e,n),t=t.sibling;t!==null;)Vu(t,e,n),t=t.sibling}function F2(t){var e=t.stateNode,n=t.memoizedProps;try{for(var a=t.type,l=e.attributes;l.length;)e.removeAttributeNode(l[0]);ze(e,a,n),e[we]=t,e[Ze]=n}catch(c){Zt(t,t.return,c)}}var Vn=!1,ge=!1,wf=!1,K2=typeof WeakSet=="function"?WeakSet:Set,Se=null;function Ry(t,e){if(t=t.containerInfo,Kf=oc,t=i0(t),_s(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else t:{n=(n=t.ownerDocument)&&n.defaultView||window;var a=n.getSelection&&n.getSelection();if(a&&a.rangeCount!==0){n=a.anchorNode;var l=a.anchorOffset,c=a.focusNode;a=a.focusOffset;try{n.nodeType,c.nodeType}catch{n=null;break t}var d=0,g=-1,S=-1,M=0,q=0,K=t,C=null;e:for(;;){for(var j;K!==n||l!==0&&K.nodeType!==3||(g=d+l),K!==c||a!==0&&K.nodeType!==3||(S=d+a),K.nodeType===3&&(d+=K.nodeValue.length),(j=K.firstChild)!==null;)C=K,K=j;for(;;){if(K===t)break e;if(C===n&&++M===l&&(g=d),C===c&&++q===a&&(S=d),(j=K.nextSibling)!==null)break;K=C,C=K.parentNode}K=j}n=g===-1||S===-1?null:{start:g,end:S}}else n=null}n=n||{start:0,end:0}}else n=null;for(Jf={focusedElem:t,selectionRange:n},oc=!1,Se=e;Se!==null;)if(e=Se,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Se=t;else for(;Se!==null;){switch(e=Se,c=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(n=0;n<t.length;n++)l=t[n],l.ref.impl=l.nextImpl;break;case 11:case 15:break;case 1:if((t&1024)!==0&&c!==null){t=void 0,n=e,l=c.memoizedProps,c=c.memoizedState,a=n.stateNode;try{var ft=ka(n.type,l);t=a.getSnapshotBeforeUpdate(ft,c),a.__reactInternalSnapshotBeforeUpdate=t}catch(bt){Zt(n,n.return,bt)}}break;case 3:if((t&1024)!==0){if(t=e.stateNode.containerInfo,n=t.nodeType,n===9)Wf(t);else if(n===1)switch(t.nodeName){case"HEAD":case"HTML":case"BODY":Wf(t);break;default:t.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((t&1024)!==0)throw Error(s(163))}if(t=e.sibling,t!==null){t.return=e.return,Se=t;break}Se=e.return}}function J2(t,e,n){var a=n.flags;switch(n.tag){case 0:case 11:case 15:Fn(t,n),a&4&&xi(5,n);break;case 1:if(Fn(t,n),a&4)if(t=n.stateNode,e===null)try{t.componentDidMount()}catch(d){Zt(n,n.return,d)}else{var l=ka(n.type,e.memoizedProps);e=e.memoizedState;try{t.componentDidUpdate(l,e,t.__reactInternalSnapshotBeforeUpdate)}catch(d){Zt(n,n.return,d)}}a&64&&Z2(n),a&512&&wi(n,n.return);break;case 3:if(Fn(t,n),a&64&&(t=n.updateQueue,t!==null)){if(e=null,n.child!==null)switch(n.child.tag){case 27:case 5:e=n.child.stateNode;break;case 1:e=n.child.stateNode}try{M0(t,e)}catch(d){Zt(n,n.return,d)}}break;case 27:e===null&&a&4&&F2(n);case 26:case 5:Fn(t,n),e===null&&a&4&&V2(n),a&512&&wi(n,n.return);break;case 12:Fn(t,n);break;case 31:Fn(t,n),a&4&&W2(t,n);break;case 13:Fn(t,n),a&4&&$2(t,n),a&64&&(t=n.memoizedState,t!==null&&(t=t.dehydrated,t!==null&&(n=jy.bind(null,n),ag(t,n))));break;case 22:if(a=n.memoizedState!==null||Vn,!a){e=e!==null&&e.memoizedState!==null||ge,l=Vn;var c=ge;Vn=a,(ge=e)&&!c?Kn(t,n,(n.subtreeFlags&8772)!==0):Fn(t,n),Vn=l,ge=c}break;case 30:break;default:Fn(t,n)}}function k2(t){var e=t.alternate;e!==null&&(t.alternate=null,k2(e)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(e=t.stateNode,e!==null&&es(e)),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}var te=null,Ve=!1;function Qn(t,e,n){for(n=n.child;n!==null;)I2(t,e,n),n=n.sibling}function I2(t,e,n){if(Y&&typeof Y.onCommitFiberUnmount=="function")try{Y.onCommitFiberUnmount(Ua,n)}catch{}switch(n.tag){case 26:ge||Dn(n,e),Qn(t,e,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:ge||Dn(n,e);var a=te,l=Ve;Sa(n.type)&&(te=n.stateNode,Ve=!1),Qn(t,e,n),Li(n.stateNode),te=a,Ve=l;break;case 5:ge||Dn(n,e);case 6:if(a=te,l=Ve,te=null,Qn(t,e,n),te=a,Ve=l,te!==null)if(Ve)try{(te.nodeType===9?te.body:te.nodeName==="HTML"?te.ownerDocument.body:te).removeChild(n.stateNode)}catch(c){Zt(n,e,c)}else try{te.removeChild(n.stateNode)}catch(c){Zt(n,e,c)}break;case 18:te!==null&&(Ve?(t=te,Zd(t.nodeType===9?t.body:t.nodeName==="HTML"?t.ownerDocument.body:t,n.stateNode),Zl(t)):Zd(te,n.stateNode));break;case 4:a=te,l=Ve,te=n.stateNode.containerInfo,Ve=!0,Qn(t,e,n),te=a,Ve=l;break;case 0:case 11:case 14:case 15:ma(2,n,e),ge||ma(4,n,e),Qn(t,e,n);break;case 1:ge||(Dn(n,e),a=n.stateNode,typeof a.componentWillUnmount=="function"&&X2(n,e,a)),Qn(t,e,n);break;case 21:Qn(t,e,n);break;case 22:ge=(a=ge)||n.memoizedState!==null,Qn(t,e,n),ge=a;break;default:Qn(t,e,n)}}function W2(t,e){if(e.memoizedState===null&&(t=e.alternate,t!==null&&(t=t.memoizedState,t!==null))){t=t.dehydrated;try{Zl(t)}catch(n){Zt(e,e.return,n)}}}function $2(t,e){if(e.memoizedState===null&&(t=e.alternate,t!==null&&(t=t.memoizedState,t!==null&&(t=t.dehydrated,t!==null))))try{Zl(t)}catch(n){Zt(e,e.return,n)}}function Dy(t){switch(t.tag){case 31:case 13:case 19:var e=t.stateNode;return e===null&&(e=t.stateNode=new K2),e;case 22:return t=t.stateNode,e=t._retryCache,e===null&&(e=t._retryCache=new K2),e;default:throw Error(s(435,t.tag))}}function Qu(t,e){var n=Dy(t);e.forEach(function(a){if(!n.has(a)){n.add(a);var l=By.bind(null,t,a);a.then(l,l)}})}function Qe(t,e){var n=e.deletions;if(n!==null)for(var a=0;a<n.length;a++){var l=n[a],c=t,d=e,g=d;t:for(;g!==null;){switch(g.tag){case 27:if(Sa(g.type)){te=g.stateNode,Ve=!1;break t}break;case 5:te=g.stateNode,Ve=!1;break t;case 3:case 4:te=g.stateNode.containerInfo,Ve=!0;break t}g=g.return}if(te===null)throw Error(s(160));I2(c,d,l),te=null,Ve=!1,c=l.alternate,c!==null&&(c.return=null),l.return=null}if(e.subtreeFlags&13886)for(e=e.child;e!==null;)P2(e,t),e=e.sibling}var Sn=null;function P2(t,e){var n=t.alternate,a=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:Qe(e,t),Fe(t),a&4&&(ma(3,t,t.return),xi(3,t),ma(5,t,t.return));break;case 1:Qe(e,t),Fe(t),a&512&&(ge||n===null||Dn(n,n.return)),a&64&&Vn&&(t=t.updateQueue,t!==null&&(a=t.callbacks,a!==null&&(n=t.shared.hiddenCallbacks,t.shared.hiddenCallbacks=n===null?a:n.concat(a))));break;case 26:var l=Sn;if(Qe(e,t),Fe(t),a&512&&(ge||n===null||Dn(n,n.return)),a&4){var c=n!==null?n.memoizedState:null;if(a=t.memoizedState,n===null)if(a===null)if(t.stateNode===null){t:{a=t.type,n=t.memoizedProps,l=l.ownerDocument||l;e:switch(a){case"title":c=l.getElementsByTagName("title")[0],(!c||c[Pl]||c[we]||c.namespaceURI==="http://www.w3.org/2000/svg"||c.hasAttribute("itemprop"))&&(c=l.createElement(a),l.head.insertBefore(c,l.querySelector("head > title"))),ze(c,a,n),c[we]=t,be(c),a=c;break t;case"link":var d=Pd("link","href",l).get(a+(n.href||""));if(d){for(var g=0;g<d.length;g++)if(c=d[g],c.getAttribute("href")===(n.href==null||n.href===""?null:n.href)&&c.getAttribute("rel")===(n.rel==null?null:n.rel)&&c.getAttribute("title")===(n.title==null?null:n.title)&&c.getAttribute("crossorigin")===(n.crossOrigin==null?null:n.crossOrigin)){d.splice(g,1);break e}}c=l.createElement(a),ze(c,a,n),l.head.appendChild(c);break;case"meta":if(d=Pd("meta","content",l).get(a+(n.content||""))){for(g=0;g<d.length;g++)if(c=d[g],c.getAttribute("content")===(n.content==null?null:""+n.content)&&c.getAttribute("name")===(n.name==null?null:n.name)&&c.getAttribute("property")===(n.property==null?null:n.property)&&c.getAttribute("http-equiv")===(n.httpEquiv==null?null:n.httpEquiv)&&c.getAttribute("charset")===(n.charSet==null?null:n.charSet)){d.splice(g,1);break e}}c=l.createElement(a),ze(c,a,n),l.head.appendChild(c);break;default:throw Error(s(468,a))}c[we]=t,be(c),a=c}t.stateNode=a}else t1(l,t.type,t.stateNode);else t.stateNode=$d(l,a,t.memoizedProps);else c!==a?(c===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):c.count--,a===null?t1(l,t.type,t.stateNode):$d(l,a,t.memoizedProps)):a===null&&t.stateNode!==null&&Tf(t,t.memoizedProps,n.memoizedProps)}break;case 27:Qe(e,t),Fe(t),a&512&&(ge||n===null||Dn(n,n.return)),n!==null&&a&4&&Tf(t,t.memoizedProps,n.memoizedProps);break;case 5:if(Qe(e,t),Fe(t),a&512&&(ge||n===null||Dn(n,n.return)),t.flags&32){l=t.stateNode;try{ol(l,"")}catch(ft){Zt(t,t.return,ft)}}a&4&&t.stateNode!=null&&(l=t.memoizedProps,Tf(t,l,n!==null?n.memoizedProps:l)),a&1024&&(wf=!0);break;case 6:if(Qe(e,t),Fe(t),a&4){if(t.stateNode===null)throw Error(s(162));a=t.memoizedProps,n=t.stateNode;try{n.nodeValue=a}catch(ft){Zt(t,t.return,ft)}}break;case 3:if(cc=null,l=Sn,Sn=ic(e.containerInfo),Qe(e,t),Sn=l,Fe(t),a&4&&n!==null&&n.memoizedState.isDehydrated)try{Zl(e.containerInfo)}catch(ft){Zt(t,t.return,ft)}wf&&(wf=!1,td(t));break;case 4:a=Sn,Sn=ic(t.stateNode.containerInfo),Qe(e,t),Fe(t),Sn=a;break;case 12:Qe(e,t),Fe(t);break;case 31:Qe(e,t),Fe(t),a&4&&(a=t.updateQueue,a!==null&&(t.updateQueue=null,Qu(t,a)));break;case 13:Qe(e,t),Fe(t),t.child.flags&8192&&t.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(Ku=xe()),a&4&&(a=t.updateQueue,a!==null&&(t.updateQueue=null,Qu(t,a)));break;case 22:l=t.memoizedState!==null;var S=n!==null&&n.memoizedState!==null,M=Vn,q=ge;if(Vn=M||l,ge=q||S,Qe(e,t),ge=q,Vn=M,Fe(t),a&8192)t:for(e=t.stateNode,e._visibility=l?e._visibility&-2:e._visibility|1,l&&(n===null||S||Vn||ge||Ia(t)),n=null,e=t;;){if(e.tag===5||e.tag===26){if(n===null){S=n=e;try{if(c=S.stateNode,l)d=c.style,typeof d.setProperty=="function"?d.setProperty("display","none","important"):d.display="none";else{g=S.stateNode;var K=S.memoizedProps.style,C=K!=null&&K.hasOwnProperty("display")?K.display:null;g.style.display=C==null||typeof C=="boolean"?"":(""+C).trim()}}catch(ft){Zt(S,S.return,ft)}}}else if(e.tag===6){if(n===null){S=e;try{S.stateNode.nodeValue=l?"":S.memoizedProps}catch(ft){Zt(S,S.return,ft)}}}else if(e.tag===18){if(n===null){S=e;try{var j=S.stateNode;l?Xd(j,!0):Xd(S.stateNode,!1)}catch(ft){Zt(S,S.return,ft)}}}else if((e.tag!==22&&e.tag!==23||e.memoizedState===null||e===t)&&e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break t;for(;e.sibling===null;){if(e.return===null||e.return===t)break t;n===e&&(n=null),e=e.return}n===e&&(n=null),e.sibling.return=e.return,e=e.sibling}a&4&&(a=t.updateQueue,a!==null&&(n=a.retryQueue,n!==null&&(a.retryQueue=null,Qu(t,n))));break;case 19:Qe(e,t),Fe(t),a&4&&(a=t.updateQueue,a!==null&&(t.updateQueue=null,Qu(t,a)));break;case 30:break;case 21:break;default:Qe(e,t),Fe(t)}}function Fe(t){var e=t.flags;if(e&2){try{for(var n,a=t.return;a!==null;){if(Q2(a)){n=a;break}a=a.return}if(n==null)throw Error(s(160));switch(n.tag){case 27:var l=n.stateNode,c=Af(t);Vu(t,c,l);break;case 5:var d=n.stateNode;n.flags&32&&(ol(d,""),n.flags&=-33);var g=Af(t);Vu(t,g,d);break;case 3:case 4:var S=n.stateNode.containerInfo,M=Af(t);xf(t,M,S);break;default:throw Error(s(161))}}catch(q){Zt(t,t.return,q)}t.flags&=-3}e&4096&&(t.flags&=-4097)}function td(t){if(t.subtreeFlags&1024)for(t=t.child;t!==null;){var e=t;td(e),e.tag===5&&e.flags&1024&&e.stateNode.reset(),t=t.sibling}}function Fn(t,e){if(e.subtreeFlags&8772)for(e=e.child;e!==null;)J2(t,e.alternate,e),e=e.sibling}function Ia(t){for(t=t.child;t!==null;){var e=t;switch(e.tag){case 0:case 11:case 14:case 15:ma(4,e,e.return),Ia(e);break;case 1:Dn(e,e.return);var n=e.stateNode;typeof n.componentWillUnmount=="function"&&X2(e,e.return,n),Ia(e);break;case 27:Li(e.stateNode);case 26:case 5:Dn(e,e.return),Ia(e);break;case 22:e.memoizedState===null&&Ia(e);break;case 30:Ia(e);break;default:Ia(e)}t=t.sibling}}function Kn(t,e,n){for(n=n&&(e.subtreeFlags&8772)!==0,e=e.child;e!==null;){var a=e.alternate,l=t,c=e,d=c.flags;switch(c.tag){case 0:case 11:case 15:Kn(l,c,n),xi(4,c);break;case 1:if(Kn(l,c,n),a=c,l=a.stateNode,typeof l.componentDidMount=="function")try{l.componentDidMount()}catch(M){Zt(a,a.return,M)}if(a=c,l=a.updateQueue,l!==null){var g=a.stateNode;try{var S=l.shared.hiddenCallbacks;if(S!==null)for(l.shared.hiddenCallbacks=null,l=0;l<S.length;l++)N0(S[l],g)}catch(M){Zt(a,a.return,M)}}n&&d&64&&Z2(c),wi(c,c.return);break;case 27:F2(c);case 26:case 5:Kn(l,c,n),n&&a===null&&d&4&&V2(c),wi(c,c.return);break;case 12:Kn(l,c,n);break;case 31:Kn(l,c,n),n&&d&4&&W2(l,c);break;case 13:Kn(l,c,n),n&&d&4&&$2(l,c);break;case 22:c.memoizedState===null&&Kn(l,c,n),wi(c,c.return);break;case 30:break;default:Kn(l,c,n)}e=e.sibling}}function Of(t,e){var n=null;t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),t=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(t=e.memoizedState.cachePool.pool),t!==n&&(t!=null&&t.refCount++,n!=null&&di(n))}function Rf(t,e){t=null,e.alternate!==null&&(t=e.alternate.memoizedState.cache),e=e.memoizedState.cache,e!==t&&(e.refCount++,t!=null&&di(t))}function En(t,e,n,a){if(e.subtreeFlags&10256)for(e=e.child;e!==null;)ed(t,e,n,a),e=e.sibling}function ed(t,e,n,a){var l=e.flags;switch(e.tag){case 0:case 11:case 15:En(t,e,n,a),l&2048&&xi(9,e);break;case 1:En(t,e,n,a);break;case 3:En(t,e,n,a),l&2048&&(t=null,e.alternate!==null&&(t=e.alternate.memoizedState.cache),e=e.memoizedState.cache,e!==t&&(e.refCount++,t!=null&&di(t)));break;case 12:if(l&2048){En(t,e,n,a),t=e.stateNode;try{var c=e.memoizedProps,d=c.id,g=c.onPostCommit;typeof g=="function"&&g(d,e.alternate===null?"mount":"update",t.passiveEffectDuration,-0)}catch(S){Zt(e,e.return,S)}}else En(t,e,n,a);break;case 31:En(t,e,n,a);break;case 13:En(t,e,n,a);break;case 23:break;case 22:c=e.stateNode,d=e.alternate,e.memoizedState!==null?c._visibility&2?En(t,e,n,a):Oi(t,e):c._visibility&2?En(t,e,n,a):(c._visibility|=2,Nl(t,e,n,a,(e.subtreeFlags&10256)!==0||!1)),l&2048&&Of(d,e);break;case 24:En(t,e,n,a),l&2048&&Rf(e.alternate,e);break;default:En(t,e,n,a)}}function Nl(t,e,n,a,l){for(l=l&&((e.subtreeFlags&10256)!==0||!1),e=e.child;e!==null;){var c=t,d=e,g=n,S=a,M=d.flags;switch(d.tag){case 0:case 11:case 15:Nl(c,d,g,S,l),xi(8,d);break;case 23:break;case 22:var q=d.stateNode;d.memoizedState!==null?q._visibility&2?Nl(c,d,g,S,l):Oi(c,d):(q._visibility|=2,Nl(c,d,g,S,l)),l&&M&2048&&Of(d.alternate,d);break;case 24:Nl(c,d,g,S,l),l&&M&2048&&Rf(d.alternate,d);break;default:Nl(c,d,g,S,l)}e=e.sibling}}function Oi(t,e){if(e.subtreeFlags&10256)for(e=e.child;e!==null;){var n=t,a=e,l=a.flags;switch(a.tag){case 22:Oi(n,a),l&2048&&Of(a.alternate,a);break;case 24:Oi(n,a),l&2048&&Rf(a.alternate,a);break;default:Oi(n,a)}e=e.sibling}}var Ri=8192;function Ml(t,e,n){if(t.subtreeFlags&Ri)for(t=t.child;t!==null;)nd(t,e,n),t=t.sibling}function nd(t,e,n){switch(t.tag){case 26:Ml(t,e,n),t.flags&Ri&&t.memoizedState!==null&&yg(n,Sn,t.memoizedState,t.memoizedProps);break;case 5:Ml(t,e,n);break;case 3:case 4:var a=Sn;Sn=ic(t.stateNode.containerInfo),Ml(t,e,n),Sn=a;break;case 22:t.memoizedState===null&&(a=t.alternate,a!==null&&a.memoizedState!==null?(a=Ri,Ri=16777216,Ml(t,e,n),Ri=a):Ml(t,e,n));break;default:Ml(t,e,n)}}function ad(t){var e=t.alternate;if(e!==null&&(t=e.child,t!==null)){e.child=null;do e=t.sibling,t.sibling=null,t=e;while(t!==null)}}function Di(t){var e=t.deletions;if((t.flags&16)!==0){if(e!==null)for(var n=0;n<e.length;n++){var a=e[n];Se=a,id(a,t)}ad(t)}if(t.subtreeFlags&10256)for(t=t.child;t!==null;)ld(t),t=t.sibling}function ld(t){switch(t.tag){case 0:case 11:case 15:Di(t),t.flags&2048&&ma(9,t,t.return);break;case 3:Di(t);break;case 12:Di(t);break;case 22:var e=t.stateNode;t.memoizedState!==null&&e._visibility&2&&(t.return===null||t.return.tag!==13)?(e._visibility&=-3,Fu(t)):Di(t);break;default:Di(t)}}function Fu(t){var e=t.deletions;if((t.flags&16)!==0){if(e!==null)for(var n=0;n<e.length;n++){var a=e[n];Se=a,id(a,t)}ad(t)}for(t=t.child;t!==null;){switch(e=t,e.tag){case 0:case 11:case 15:ma(8,e,e.return),Fu(e);break;case 22:n=e.stateNode,n._visibility&2&&(n._visibility&=-3,Fu(e));break;default:Fu(e)}t=t.sibling}}function id(t,e){for(;Se!==null;){var n=Se;switch(n.tag){case 0:case 11:case 15:ma(8,n,e);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var a=n.memoizedState.cachePool.pool;a!=null&&a.refCount++}break;case 24:di(n.memoizedState.cache)}if(a=n.child,a!==null)a.return=n,Se=a;else t:for(n=t;Se!==null;){a=Se;var l=a.sibling,c=a.return;if(k2(a),a===n){Se=null;break t}if(l!==null){l.return=c,Se=l;break t}Se=c}}}var zy={getCacheForType:function(t){var e=Re(he),n=e.data.get(t);return n===void 0&&(n=t(),e.data.set(t,n)),n},cacheSignal:function(){return Re(he).controller.signal}},Ny=typeof WeakMap=="function"?WeakMap:Map,Bt=0,Kt=null,Ot=null,Nt=0,qt=0,tn=null,ya=!1,Ul=!1,Df=!1,Jn=0,ue=0,ga=0,Wa=0,zf=0,en=0,Cl=0,zi=null,Ke=null,Nf=!1,Ku=0,ud=0,Ju=1/0,ku=null,va=null,pe=0,_a=null,Ll=null,kn=0,Mf=0,Uf=null,cd=null,Ni=0,Cf=null;function nn(){return(Bt&2)!==0&&Nt!==0?Nt&-Nt:N.T!==null?Gf():To()}function sd(){if(en===0)if((Nt&536870912)===0||Ut){var t=de;de<<=1,(de&3932160)===0&&(de=262144),en=t}else en=536870912;return t=$e.current,t!==null&&(t.flags|=32),en}function Je(t,e,n){(t===Kt&&(qt===2||qt===9)||t.cancelPendingCommit!==null)&&(Hl(t,0),pa(t,Nt,en,!1)),$l(t,n),((Bt&2)===0||t!==Kt)&&(t===Kt&&((Bt&2)===0&&(Wa|=n),ue===4&&pa(t,Nt,en,!1)),zn(t))}function fd(t,e,n){if((Bt&6)!==0)throw Error(s(327));var a=!n&&(e&127)===0&&(e&t.expiredLanes)===0||na(t,e),l=a?Cy(t,e):Hf(t,e,!0),c=a;do{if(l===0){Ul&&!a&&pa(t,e,0,!1);break}else{if(n=t.current.alternate,c&&!My(n)){l=Hf(t,e,!1),c=!1;continue}if(l===2){if(c=e,t.errorRecoveryDisabledLanes&c)var d=0;else d=t.pendingLanes&-536870913,d=d!==0?d:d&536870912?536870912:0;if(d!==0){e=d;t:{var g=t;l=zi;var S=g.current.memoizedState.isDehydrated;if(S&&(Hl(g,d).flags|=256),d=Hf(g,d,!1),d!==2){if(Df&&!S){g.errorRecoveryDisabledLanes|=c,Wa|=c,l=4;break t}c=Ke,Ke=l,c!==null&&(Ke===null?Ke=c:Ke.push.apply(Ke,c))}l=d}if(c=!1,l!==2)continue}}if(l===1){Hl(t,0),pa(t,e,0,!0);break}t:{switch(a=t,c=l,c){case 0:case 1:throw Error(s(345));case 4:if((e&4194048)!==e)break;case 6:pa(a,e,en,!ya);break t;case 2:Ke=null;break;case 3:case 5:break;default:throw Error(s(329))}if((e&62914560)===e&&(l=Ku+300-xe(),10<l)){if(pa(a,e,en,!ya),Ca(a,0,!0)!==0)break t;kn=e,a.timeoutHandle=Gd(rd.bind(null,a,n,Ke,ku,Nf,e,en,Wa,Cl,ya,c,"Throttled",-0,0),l);break t}rd(a,n,Ke,ku,Nf,e,en,Wa,Cl,ya,c,null,-0,0)}}break}while(!0);zn(t)}function rd(t,e,n,a,l,c,d,g,S,M,q,K,C,j){if(t.timeoutHandle=-1,K=e.subtreeFlags,K&8192||(K&16785408)===16785408){K={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Cn},nd(e,c,K);var ft=(c&62914560)===c?Ku-xe():(c&4194048)===c?ud-xe():0;if(ft=gg(K,ft),ft!==null){kn=c,t.cancelPendingCommit=ft(_d.bind(null,t,e,c,n,a,l,d,g,S,q,K,null,C,j)),pa(t,c,d,!M);return}}_d(t,e,c,n,a,l,d,g,S)}function My(t){for(var e=t;;){var n=e.tag;if((n===0||n===11||n===15)&&e.flags&16384&&(n=e.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var a=0;a<n.length;a++){var l=n[a],c=l.getSnapshot;l=l.value;try{if(!Ie(c(),l))return!1}catch{return!1}}if(n=e.child,e.subtreeFlags&16384&&n!==null)n.return=e,e=n;else{if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return!0;e=e.return}e.sibling.return=e.return,e=e.sibling}}return!0}function pa(t,e,n,a){e&=~zf,e&=~Wa,t.suspendedLanes|=e,t.pingedLanes&=~e,a&&(t.warmLanes|=e),a=t.expirationTimes;for(var l=e;0<l;){var c=31-F(l),d=1<<c;a[c]=-1,l&=~d}n!==0&&bo(t,n,e)}function Iu(){return(Bt&6)===0?(Mi(0),!1):!0}function Lf(){if(Ot!==null){if(qt===0)var t=Ot.return;else t=Ot,Bn=Za=null,Is(t),wl=null,mi=0,t=Ot;for(;t!==null;)q2(t.alternate,t),t=t.return;Ot=null}}function Hl(t,e){var n=t.timeoutHandle;n!==-1&&(t.timeoutHandle=-1,$y(n)),n=t.cancelPendingCommit,n!==null&&(t.cancelPendingCommit=null,n()),kn=0,Lf(),Kt=t,Ot=n=Hn(t.current,null),Nt=e,qt=0,tn=null,ya=!1,Ul=na(t,e),Df=!1,Cl=en=zf=Wa=ga=ue=0,Ke=zi=null,Nf=!1,(e&8)!==0&&(e|=e&32);var a=t.entangledLanes;if(a!==0)for(t=t.entanglements,a&=e;0<a;){var l=31-F(a),c=1<<l;e|=t[l],a&=~c}return Jn=e,vu(),n}function od(t,e){Tt=null,N.H=Ei,e===xl||e===xu?(e=O0(),qt=3):e===Bs?(e=O0(),qt=4):qt=e===hf?8:e!==null&&typeof e=="object"&&typeof e.then=="function"?6:1,tn=e,Ot===null&&(ue=1,Yu(t,fn(e,t.current)))}function dd(){var t=$e.current;return t===null?!0:(Nt&4194048)===Nt?hn===null:(Nt&62914560)===Nt||(Nt&536870912)!==0?t===hn:!1}function hd(){var t=N.H;return N.H=Ei,t===null?Ei:t}function md(){var t=N.A;return N.A=zy,t}function Wu(){ue=4,ya||(Nt&4194048)!==Nt&&$e.current!==null||(Ul=!0),(ga&134217727)===0&&(Wa&134217727)===0||Kt===null||pa(Kt,Nt,en,!1)}function Hf(t,e,n){var a=Bt;Bt|=2;var l=hd(),c=md();(Kt!==t||Nt!==e)&&(ku=null,Hl(t,e)),e=!1;var d=ue;t:do try{if(qt!==0&&Ot!==null){var g=Ot,S=tn;switch(qt){case 8:Lf(),d=6;break t;case 3:case 2:case 9:case 6:$e.current===null&&(e=!0);var M=qt;if(qt=0,tn=null,jl(t,g,S,M),n&&Ul){d=0;break t}break;default:M=qt,qt=0,tn=null,jl(t,g,S,M)}}Uy(),d=ue;break}catch(q){od(t,q)}while(!0);return e&&t.shellSuspendCounter++,Bn=Za=null,Bt=a,N.H=l,N.A=c,Ot===null&&(Kt=null,Nt=0,vu()),d}function Uy(){for(;Ot!==null;)yd(Ot)}function Cy(t,e){var n=Bt;Bt|=2;var a=hd(),l=md();Kt!==t||Nt!==e?(ku=null,Ju=xe()+500,Hl(t,e)):Ul=na(t,e);t:do try{if(qt!==0&&Ot!==null){e=Ot;var c=tn;e:switch(qt){case 1:qt=0,tn=null,jl(t,e,c,1);break;case 2:case 9:if(x0(c)){qt=0,tn=null,gd(e);break}e=function(){qt!==2&&qt!==9||Kt!==t||(qt=7),zn(t)},c.then(e,e);break t;case 3:qt=7;break t;case 4:qt=5;break t;case 7:x0(c)?(qt=0,tn=null,gd(e)):(qt=0,tn=null,jl(t,e,c,7));break;case 5:var d=null;switch(Ot.tag){case 26:d=Ot.memoizedState;case 5:case 27:var g=Ot;if(d?e1(d):g.stateNode.complete){qt=0,tn=null;var S=g.sibling;if(S!==null)Ot=S;else{var M=g.return;M!==null?(Ot=M,$u(M)):Ot=null}break e}}qt=0,tn=null,jl(t,e,c,5);break;case 6:qt=0,tn=null,jl(t,e,c,6);break;case 8:Lf(),ue=6;break t;default:throw Error(s(462))}}Ly();break}catch(q){od(t,q)}while(!0);return Bn=Za=null,N.H=a,N.A=l,Bt=n,Ot!==null?0:(Kt=null,Nt=0,vu(),ue)}function Ly(){for(;Ot!==null&&!wn();)yd(Ot)}function yd(t){var e=Y2(t.alternate,t,Jn);t.memoizedProps=t.pendingProps,e===null?$u(t):Ot=e}function gd(t){var e=t,n=e.alternate;switch(e.tag){case 15:case 0:e=U2(n,e,e.pendingProps,e.type,void 0,Nt);break;case 11:e=U2(n,e,e.pendingProps,e.type.render,e.ref,Nt);break;case 5:Is(e);default:q2(n,e),e=Ot=m0(e,Jn),e=Y2(n,e,Jn)}t.memoizedProps=t.pendingProps,e===null?$u(t):Ot=e}function jl(t,e,n,a){Bn=Za=null,Is(e),wl=null,mi=0;var l=e.return;try{if(Ty(t,l,e,n,Nt)){ue=1,Yu(t,fn(n,t.current)),Ot=null;return}}catch(c){if(l!==null)throw Ot=l,c;ue=1,Yu(t,fn(n,t.current)),Ot=null;return}e.flags&32768?(Ut||a===1?t=!0:Ul||(Nt&536870912)!==0?t=!1:(ya=t=!0,(a===2||a===9||a===3||a===6)&&(a=$e.current,a!==null&&a.tag===13&&(a.flags|=16384))),vd(e,t)):$u(e)}function $u(t){var e=t;do{if((e.flags&32768)!==0){vd(e,ya);return}t=e.return;var n=wy(e.alternate,e,Jn);if(n!==null){Ot=n;return}if(e=e.sibling,e!==null){Ot=e;return}Ot=e=t}while(e!==null);ue===0&&(ue=5)}function vd(t,e){do{var n=Oy(t.alternate,t);if(n!==null){n.flags&=32767,Ot=n;return}if(n=t.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!e&&(t=t.sibling,t!==null)){Ot=t;return}Ot=t=n}while(t!==null);ue=6,Ot=null}function _d(t,e,n,a,l,c,d,g,S){t.cancelPendingCommit=null;do Pu();while(pe!==0);if((Bt&6)!==0)throw Error(s(327));if(e!==null){if(e===t.current)throw Error(s(177));if(c=e.lanes|e.childLanes,c|=Ts,m3(t,n,c,d,g,S),t===Kt&&(Ot=Kt=null,Nt=0),Ll=e,_a=t,kn=n,Mf=c,Uf=l,cd=a,(e.subtreeFlags&10256)!==0||(e.flags&10256)!==0?(t.callbackNode=null,t.callbackPriority=0,Yy(ea,function(){return Td(),null})):(t.callbackNode=null,t.callbackPriority=0),a=(e.flags&13878)!==0,(e.subtreeFlags&13878)!==0||a){a=N.T,N.T=null,l=V.p,V.p=2,d=Bt,Bt|=4;try{Ry(t,e,n)}finally{Bt=d,V.p=l,N.T=a}}pe=1,pd(),bd(),Sd()}}function pd(){if(pe===1){pe=0;var t=_a,e=Ll,n=(e.flags&13878)!==0;if((e.subtreeFlags&13878)!==0||n){n=N.T,N.T=null;var a=V.p;V.p=2;var l=Bt;Bt|=4;try{P2(e,t);var c=Jf,d=i0(t.containerInfo),g=c.focusedElem,S=c.selectionRange;if(d!==g&&g&&g.ownerDocument&&l0(g.ownerDocument.documentElement,g)){if(S!==null&&_s(g)){var M=S.start,q=S.end;if(q===void 0&&(q=M),"selectionStart"in g)g.selectionStart=M,g.selectionEnd=Math.min(q,g.value.length);else{var K=g.ownerDocument||document,C=K&&K.defaultView||window;if(C.getSelection){var j=C.getSelection(),ft=g.textContent.length,bt=Math.min(S.start,ft),Qt=S.end===void 0?bt:Math.min(S.end,ft);!j.extend&&bt>Qt&&(d=Qt,Qt=bt,bt=d);var x=a0(g,bt),A=a0(g,Qt);if(x&&A&&(j.rangeCount!==1||j.anchorNode!==x.node||j.anchorOffset!==x.offset||j.focusNode!==A.node||j.focusOffset!==A.offset)){var z=K.createRange();z.setStart(x.node,x.offset),j.removeAllRanges(),bt>Qt?(j.addRange(z),j.extend(A.node,A.offset)):(z.setEnd(A.node,A.offset),j.addRange(z))}}}}for(K=[],j=g;j=j.parentNode;)j.nodeType===1&&K.push({element:j,left:j.scrollLeft,top:j.scrollTop});for(typeof g.focus=="function"&&g.focus(),g=0;g<K.length;g++){var Q=K[g];Q.element.scrollLeft=Q.left,Q.element.scrollTop=Q.top}}oc=!!Kf,Jf=Kf=null}finally{Bt=l,V.p=a,N.T=n}}t.current=e,pe=2}}function bd(){if(pe===2){pe=0;var t=_a,e=Ll,n=(e.flags&8772)!==0;if((e.subtreeFlags&8772)!==0||n){n=N.T,N.T=null;var a=V.p;V.p=2;var l=Bt;Bt|=4;try{J2(t,e.alternate,e)}finally{Bt=l,V.p=a,N.T=n}}pe=3}}function Sd(){if(pe===4||pe===3){pe=0,nl();var t=_a,e=Ll,n=kn,a=cd;(e.subtreeFlags&10256)!==0||(e.flags&10256)!==0?pe=5:(pe=0,Ll=_a=null,Ed(t,t.pendingLanes));var l=t.pendingLanes;if(l===0&&(va=null),Pc(n),e=e.stateNode,Y&&typeof Y.onCommitFiberRoot=="function")try{Y.onCommitFiberRoot(Ua,e,void 0,(e.current.flags&128)===128)}catch{}if(a!==null){e=N.T,l=V.p,V.p=2,N.T=null;try{for(var c=t.onRecoverableError,d=0;d<a.length;d++){var g=a[d];c(g.value,{componentStack:g.stack})}}finally{N.T=e,V.p=l}}(kn&3)!==0&&Pu(),zn(t),l=t.pendingLanes,(n&261930)!==0&&(l&42)!==0?t===Cf?Ni++:(Ni=0,Cf=t):Ni=0,Mi(0)}}function Ed(t,e){(t.pooledCacheLanes&=e)===0&&(e=t.pooledCache,e!=null&&(t.pooledCache=null,di(e)))}function Pu(){return pd(),bd(),Sd(),Td()}function Td(){if(pe!==5)return!1;var t=_a,e=Mf;Mf=0;var n=Pc(kn),a=N.T,l=V.p;try{V.p=32>n?32:n,N.T=null,n=Uf,Uf=null;var c=_a,d=kn;if(pe=0,Ll=_a=null,kn=0,(Bt&6)!==0)throw Error(s(331));var g=Bt;if(Bt|=4,ld(c.current),ed(c,c.current,d,n),Bt=g,Mi(0,!1),Y&&typeof Y.onPostCommitFiberRoot=="function")try{Y.onPostCommitFiberRoot(Ua,c)}catch{}return!0}finally{V.p=l,N.T=a,Ed(t,e)}}function Ad(t,e,n){e=fn(n,e),e=df(t.stateNode,e,2),t=oa(t,e,2),t!==null&&($l(t,2),zn(t))}function Zt(t,e,n){if(t.tag===3)Ad(t,t,n);else for(;e!==null;){if(e.tag===3){Ad(e,t,n);break}else if(e.tag===1){var a=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(va===null||!va.has(a))){t=fn(n,t),n=x2(2),a=oa(e,n,2),a!==null&&(w2(n,a,e,t),$l(a,2),zn(a));break}}e=e.return}}function jf(t,e,n){var a=t.pingCache;if(a===null){a=t.pingCache=new Ny;var l=new Set;a.set(e,l)}else l=a.get(e),l===void 0&&(l=new Set,a.set(e,l));l.has(n)||(Df=!0,l.add(n),t=Hy.bind(null,t,e,n),e.then(t,t))}function Hy(t,e,n){var a=t.pingCache;a!==null&&a.delete(e),t.pingedLanes|=t.suspendedLanes&n,t.warmLanes&=~n,Kt===t&&(Nt&n)===n&&(ue===4||ue===3&&(Nt&62914560)===Nt&&300>xe()-Ku?(Bt&2)===0&&Hl(t,0):zf|=n,Cl===Nt&&(Cl=0)),zn(t)}function xd(t,e){e===0&&(e=po()),t=Ya(t,e),t!==null&&($l(t,e),zn(t))}function jy(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),xd(t,n)}function By(t,e){var n=0;switch(t.tag){case 31:case 13:var a=t.stateNode,l=t.memoizedState;l!==null&&(n=l.retryLane);break;case 19:a=t.stateNode;break;case 22:a=t.stateNode._retryCache;break;default:throw Error(s(314))}a!==null&&a.delete(e),xd(t,n)}function Yy(t,e){return Ce(t,e)}var tc=null,Bl=null,Bf=!1,ec=!1,Yf=!1,ba=0;function zn(t){t!==Bl&&t.next===null&&(Bl===null?tc=Bl=t:Bl=Bl.next=t),ec=!0,Bf||(Bf=!0,qy())}function Mi(t,e){if(!Yf&&ec){Yf=!0;do for(var n=!1,a=tc;a!==null;){if(t!==0){var l=a.pendingLanes;if(l===0)var c=0;else{var d=a.suspendedLanes,g=a.pingedLanes;c=(1<<31-F(42|t)+1)-1,c&=l&~(d&~g),c=c&201326741?c&201326741|1:c?c|2:0}c!==0&&(n=!0,Dd(a,c))}else c=Nt,c=Ca(a,a===Kt?c:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(c&3)===0||na(a,c)||(n=!0,Dd(a,c));a=a.next}while(n);Yf=!1}}function Gy(){wd()}function wd(){ec=Bf=!1;var t=0;ba!==0&&Wy()&&(t=ba);for(var e=xe(),n=null,a=tc;a!==null;){var l=a.next,c=Od(a,e);c===0?(a.next=null,n===null?tc=l:n.next=l,l===null&&(Bl=n)):(n=a,(t!==0||(c&3)!==0)&&(ec=!0)),a=l}pe!==0&&pe!==5||Mi(t),ba!==0&&(ba=0)}function Od(t,e){for(var n=t.suspendedLanes,a=t.pingedLanes,l=t.expirationTimes,c=t.pendingLanes&-62914561;0<c;){var d=31-F(c),g=1<<d,S=l[d];S===-1?((g&n)===0||(g&a)!==0)&&(l[d]=h3(g,e)):S<=e&&(t.expiredLanes|=g),c&=~g}if(e=Kt,n=Nt,n=Ca(t,t===e?n:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),a=t.callbackNode,n===0||t===e&&(qt===2||qt===9)||t.cancelPendingCommit!==null)return a!==null&&a!==null&&Ae(a),t.callbackNode=null,t.callbackPriority=0;if((n&3)===0||na(t,n)){if(e=n&-n,e===t.callbackPriority)return e;switch(a!==null&&Ae(a),Pc(n)){case 2:case 8:n=_e;break;case 32:n=ea;break;case 268435456:n=Wl;break;default:n=ea}return a=Rd.bind(null,t),n=Ce(n,a),t.callbackPriority=e,t.callbackNode=n,e}return a!==null&&a!==null&&Ae(a),t.callbackPriority=2,t.callbackNode=null,2}function Rd(t,e){if(pe!==0&&pe!==5)return t.callbackNode=null,t.callbackPriority=0,null;var n=t.callbackNode;if(Pu()&&t.callbackNode!==n)return null;var a=Nt;return a=Ca(t,t===Kt?a:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),a===0?null:(fd(t,a,e),Od(t,xe()),t.callbackNode!=null&&t.callbackNode===n?Rd.bind(null,t):null)}function Dd(t,e){if(Pu())return null;fd(t,e,!0)}function qy(){Py(function(){(Bt&6)!==0?Ce(ll,Gy):wd()})}function Gf(){if(ba===0){var t=Tl;t===0&&(t=wt,wt<<=1,(wt&261888)===0&&(wt=256)),ba=t}return ba}function zd(t){return t==null||typeof t=="symbol"||typeof t=="boolean"?null:typeof t=="function"?t:fu(""+t)}function Nd(t,e){var n=e.ownerDocument.createElement("input");return n.name=e.name,n.value=e.value,t.id&&n.setAttribute("form",t.id),e.parentNode.insertBefore(n,e),t=new FormData(t),n.parentNode.removeChild(n),t}function Zy(t,e,n,a,l){if(e==="submit"&&n&&n.stateNode===l){var c=zd((l[Ze]||null).action),d=a.submitter;d&&(e=(e=d[Ze]||null)?zd(e.formAction):d.getAttribute("formAction"),e!==null&&(c=e,d=null));var g=new hu("action","action",null,a,l);t.push({event:g,listeners:[{instance:null,listener:function(){if(a.defaultPrevented){if(ba!==0){var S=d?Nd(l,d):new FormData(l);uf(n,{pending:!0,data:S,method:l.method,action:c},null,S)}}else typeof c=="function"&&(g.preventDefault(),S=d?Nd(l,d):new FormData(l),uf(n,{pending:!0,data:S,method:l.method,action:c},c,S))},currentTarget:l}]})}}for(var qf=0;qf<Es.length;qf++){var Zf=Es[qf],Xy=Zf.toLowerCase(),Vy=Zf[0].toUpperCase()+Zf.slice(1);bn(Xy,"on"+Vy)}bn(s0,"onAnimationEnd"),bn(f0,"onAnimationIteration"),bn(r0,"onAnimationStart"),bn("dblclick","onDoubleClick"),bn("focusin","onFocus"),bn("focusout","onBlur"),bn(uy,"onTransitionRun"),bn(cy,"onTransitionStart"),bn(sy,"onTransitionCancel"),bn(o0,"onTransitionEnd"),fl("onMouseEnter",["mouseout","mouseover"]),fl("onMouseLeave",["mouseout","mouseover"]),fl("onPointerEnter",["pointerout","pointerover"]),fl("onPointerLeave",["pointerout","pointerover"]),La("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),La("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),La("onBeforeInput",["compositionend","keypress","textInput","paste"]),La("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),La("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),La("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Ui="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Qy=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(Ui));function Md(t,e){e=(e&4)!==0;for(var n=0;n<t.length;n++){var a=t[n],l=a.event;a=a.listeners;t:{var c=void 0;if(e)for(var d=a.length-1;0<=d;d--){var g=a[d],S=g.instance,M=g.currentTarget;if(g=g.listener,S!==c&&l.isPropagationStopped())break t;c=g,l.currentTarget=M;try{c(l)}catch(q){gu(q)}l.currentTarget=null,c=S}else for(d=0;d<a.length;d++){if(g=a[d],S=g.instance,M=g.currentTarget,g=g.listener,S!==c&&l.isPropagationStopped())break t;c=g,l.currentTarget=M;try{c(l)}catch(q){gu(q)}l.currentTarget=null,c=S}}}}function Rt(t,e){var n=e[ts];n===void 0&&(n=e[ts]=new Set);var a=t+"__bubble";n.has(a)||(Ud(e,t,2,!1),n.add(a))}function Xf(t,e,n){var a=0;e&&(a|=4),Ud(n,t,a,e)}var nc="_reactListening"+Math.random().toString(36).slice(2);function Vf(t){if(!t[nc]){t[nc]=!0,wo.forEach(function(n){n!=="selectionchange"&&(Qy.has(n)||Xf(n,!1,t),Xf(n,!0,t))});var e=t.nodeType===9?t:t.ownerDocument;e===null||e[nc]||(e[nc]=!0,Xf("selectionchange",!1,e))}}function Ud(t,e,n,a){switch(s1(e)){case 2:var l=pg;break;case 8:l=bg;break;default:l=ir}n=l.bind(null,e,n,t),l=void 0,!fs||e!=="touchstart"&&e!=="touchmove"&&e!=="wheel"||(l=!0),a?l!==void 0?t.addEventListener(e,n,{capture:!0,passive:l}):t.addEventListener(e,n,!0):l!==void 0?t.addEventListener(e,n,{passive:l}):t.addEventListener(e,n,!1)}function Qf(t,e,n,a,l){var c=a;if((e&1)===0&&(e&2)===0&&a!==null)t:for(;;){if(a===null)return;var d=a.tag;if(d===3||d===4){var g=a.stateNode.containerInfo;if(g===l)break;if(d===4)for(d=a.return;d!==null;){var S=d.tag;if((S===3||S===4)&&d.stateNode.containerInfo===l)return;d=d.return}for(;g!==null;){if(d=ul(g),d===null)return;if(S=d.tag,S===5||S===6||S===26||S===27){a=c=d;continue t}g=g.parentNode}}a=a.return}Bo(function(){var M=c,q=cs(n),K=[];t:{var C=d0.get(t);if(C!==void 0){var j=hu,ft=t;switch(t){case"keypress":if(ou(n)===0)break t;case"keydown":case"keyup":j=B3;break;case"focusin":ft="focus",j=hs;break;case"focusout":ft="blur",j=hs;break;case"beforeblur":case"afterblur":j=hs;break;case"click":if(n.button===2)break t;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":j=qo;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":j=w3;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":j=q3;break;case s0:case f0:case r0:j=D3;break;case o0:j=X3;break;case"scroll":case"scrollend":j=A3;break;case"wheel":j=Q3;break;case"copy":case"cut":case"paste":j=N3;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":j=Xo;break;case"toggle":case"beforetoggle":j=K3}var bt=(e&4)!==0,Qt=!bt&&(t==="scroll"||t==="scrollend"),x=bt?C!==null?C+"Capture":null:C;bt=[];for(var A=M,z;A!==null;){var Q=A;if(z=Q.stateNode,Q=Q.tag,Q!==5&&Q!==26&&Q!==27||z===null||x===null||(Q=ei(A,x),Q!=null&&bt.push(Ci(A,Q,z))),Qt)break;A=A.return}0<bt.length&&(C=new j(C,ft,null,n,q),K.push({event:C,listeners:bt}))}}if((e&7)===0){t:{if(C=t==="mouseover"||t==="pointerover",j=t==="mouseout"||t==="pointerout",C&&n!==us&&(ft=n.relatedTarget||n.fromElement)&&(ul(ft)||ft[il]))break t;if((j||C)&&(C=q.window===q?q:(C=q.ownerDocument)?C.defaultView||C.parentWindow:window,j?(ft=n.relatedTarget||n.toElement,j=M,ft=ft?ul(ft):null,ft!==null&&(Qt=o(ft),bt=ft.tag,ft!==Qt||bt!==5&&bt!==27&&bt!==6)&&(ft=null)):(j=null,ft=M),j!==ft)){if(bt=qo,Q="onMouseLeave",x="onMouseEnter",A="mouse",(t==="pointerout"||t==="pointerover")&&(bt=Xo,Q="onPointerLeave",x="onPointerEnter",A="pointer"),Qt=j==null?C:ti(j),z=ft==null?C:ti(ft),C=new bt(Q,A+"leave",j,n,q),C.target=Qt,C.relatedTarget=z,Q=null,ul(q)===M&&(bt=new bt(x,A+"enter",ft,n,q),bt.target=z,bt.relatedTarget=Qt,Q=bt),Qt=Q,j&&ft)e:{for(bt=Fy,x=j,A=ft,z=0,Q=x;Q;Q=bt(Q))z++;Q=0;for(var vt=A;vt;vt=bt(vt))Q++;for(;0<z-Q;)x=bt(x),z--;for(;0<Q-z;)A=bt(A),Q--;for(;z--;){if(x===A||A!==null&&x===A.alternate){bt=x;break e}x=bt(x),A=bt(A)}bt=null}else bt=null;j!==null&&Cd(K,C,j,bt,!1),ft!==null&&Qt!==null&&Cd(K,Qt,ft,bt,!0)}}t:{if(C=M?ti(M):window,j=C.nodeName&&C.nodeName.toLowerCase(),j==="select"||j==="input"&&C.type==="file")var Ht=Wo;else if(ko(C))if($o)Ht=ay;else{Ht=ey;var dt=ty}else j=C.nodeName,!j||j.toLowerCase()!=="input"||C.type!=="checkbox"&&C.type!=="radio"?M&&is(M.elementType)&&(Ht=Wo):Ht=ny;if(Ht&&(Ht=Ht(t,M))){Io(K,Ht,n,q);break t}dt&&dt(t,C,M),t==="focusout"&&M&&C.type==="number"&&M.memoizedProps.value!=null&&ls(C,"number",C.value)}switch(dt=M?ti(M):window,t){case"focusin":(ko(dt)||dt.contentEditable==="true")&&(yl=dt,ps=M,fi=null);break;case"focusout":fi=ps=yl=null;break;case"mousedown":bs=!0;break;case"contextmenu":case"mouseup":case"dragend":bs=!1,u0(K,n,q);break;case"selectionchange":if(iy)break;case"keydown":case"keyup":u0(K,n,q)}var xt;if(ys)t:{switch(t){case"compositionstart":var Mt="onCompositionStart";break t;case"compositionend":Mt="onCompositionEnd";break t;case"compositionupdate":Mt="onCompositionUpdate";break t}Mt=void 0}else ml?Ko(t,n)&&(Mt="onCompositionEnd"):t==="keydown"&&n.keyCode===229&&(Mt="onCompositionStart");Mt&&(Vo&&n.locale!=="ko"&&(ml||Mt!=="onCompositionStart"?Mt==="onCompositionEnd"&&ml&&(xt=Yo()):(la=q,rs="value"in la?la.value:la.textContent,ml=!0)),dt=ac(M,Mt),0<dt.length&&(Mt=new Zo(Mt,t,null,n,q),K.push({event:Mt,listeners:dt}),xt?Mt.data=xt:(xt=Jo(n),xt!==null&&(Mt.data=xt)))),(xt=k3?I3(t,n):W3(t,n))&&(Mt=ac(M,"onBeforeInput"),0<Mt.length&&(dt=new Zo("onBeforeInput","beforeinput",null,n,q),K.push({event:dt,listeners:Mt}),dt.data=xt)),Zy(K,t,M,n,q)}Md(K,e)})}function Ci(t,e,n){return{instance:t,listener:e,currentTarget:n}}function ac(t,e){for(var n=e+"Capture",a=[];t!==null;){var l=t,c=l.stateNode;if(l=l.tag,l!==5&&l!==26&&l!==27||c===null||(l=ei(t,n),l!=null&&a.unshift(Ci(t,l,c)),l=ei(t,e),l!=null&&a.push(Ci(t,l,c))),t.tag===3)return a;t=t.return}return[]}function Fy(t){if(t===null)return null;do t=t.return;while(t&&t.tag!==5&&t.tag!==27);return t||null}function Cd(t,e,n,a,l){for(var c=e._reactName,d=[];n!==null&&n!==a;){var g=n,S=g.alternate,M=g.stateNode;if(g=g.tag,S!==null&&S===a)break;g!==5&&g!==26&&g!==27||M===null||(S=M,l?(M=ei(n,c),M!=null&&d.unshift(Ci(n,M,S))):l||(M=ei(n,c),M!=null&&d.push(Ci(n,M,S)))),n=n.return}d.length!==0&&t.push({event:e,listeners:d})}var Ky=/\r\n?/g,Jy=/\u0000|\uFFFD/g;function Ld(t){return(typeof t=="string"?t:""+t).replace(Ky,`
`).replace(Jy,"")}function Hd(t,e){return e=Ld(e),Ld(t)===e}function Vt(t,e,n,a,l,c){switch(n){case"children":typeof a=="string"?e==="body"||e==="textarea"&&a===""||ol(t,a):(typeof a=="number"||typeof a=="bigint")&&e!=="body"&&ol(t,""+a);break;case"className":cu(t,"class",a);break;case"tabIndex":cu(t,"tabindex",a);break;case"dir":case"role":case"viewBox":case"width":case"height":cu(t,n,a);break;case"style":Ho(t,a,c);break;case"data":if(e!=="object"){cu(t,"data",a);break}case"src":case"href":if(a===""&&(e!=="a"||n!=="href")){t.removeAttribute(n);break}if(a==null||typeof a=="function"||typeof a=="symbol"||typeof a=="boolean"){t.removeAttribute(n);break}a=fu(""+a),t.setAttribute(n,a);break;case"action":case"formAction":if(typeof a=="function"){t.setAttribute(n,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof c=="function"&&(n==="formAction"?(e!=="input"&&Vt(t,e,"name",l.name,l,null),Vt(t,e,"formEncType",l.formEncType,l,null),Vt(t,e,"formMethod",l.formMethod,l,null),Vt(t,e,"formTarget",l.formTarget,l,null)):(Vt(t,e,"encType",l.encType,l,null),Vt(t,e,"method",l.method,l,null),Vt(t,e,"target",l.target,l,null)));if(a==null||typeof a=="symbol"||typeof a=="boolean"){t.removeAttribute(n);break}a=fu(""+a),t.setAttribute(n,a);break;case"onClick":a!=null&&(t.onclick=Cn);break;case"onScroll":a!=null&&Rt("scroll",t);break;case"onScrollEnd":a!=null&&Rt("scrollend",t);break;case"dangerouslySetInnerHTML":if(a!=null){if(typeof a!="object"||!("__html"in a))throw Error(s(61));if(n=a.__html,n!=null){if(l.children!=null)throw Error(s(60));t.innerHTML=n}}break;case"multiple":t.multiple=a&&typeof a!="function"&&typeof a!="symbol";break;case"muted":t.muted=a&&typeof a!="function"&&typeof a!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(a==null||typeof a=="function"||typeof a=="boolean"||typeof a=="symbol"){t.removeAttribute("xlink:href");break}n=fu(""+a),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",n);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":a!=null&&typeof a!="function"&&typeof a!="symbol"?t.setAttribute(n,""+a):t.removeAttribute(n);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":a&&typeof a!="function"&&typeof a!="symbol"?t.setAttribute(n,""):t.removeAttribute(n);break;case"capture":case"download":a===!0?t.setAttribute(n,""):a!==!1&&a!=null&&typeof a!="function"&&typeof a!="symbol"?t.setAttribute(n,a):t.removeAttribute(n);break;case"cols":case"rows":case"size":case"span":a!=null&&typeof a!="function"&&typeof a!="symbol"&&!isNaN(a)&&1<=a?t.setAttribute(n,a):t.removeAttribute(n);break;case"rowSpan":case"start":a==null||typeof a=="function"||typeof a=="symbol"||isNaN(a)?t.removeAttribute(n):t.setAttribute(n,a);break;case"popover":Rt("beforetoggle",t),Rt("toggle",t),uu(t,"popover",a);break;case"xlinkActuate":Un(t,"http://www.w3.org/1999/xlink","xlink:actuate",a);break;case"xlinkArcrole":Un(t,"http://www.w3.org/1999/xlink","xlink:arcrole",a);break;case"xlinkRole":Un(t,"http://www.w3.org/1999/xlink","xlink:role",a);break;case"xlinkShow":Un(t,"http://www.w3.org/1999/xlink","xlink:show",a);break;case"xlinkTitle":Un(t,"http://www.w3.org/1999/xlink","xlink:title",a);break;case"xlinkType":Un(t,"http://www.w3.org/1999/xlink","xlink:type",a);break;case"xmlBase":Un(t,"http://www.w3.org/XML/1998/namespace","xml:base",a);break;case"xmlLang":Un(t,"http://www.w3.org/XML/1998/namespace","xml:lang",a);break;case"xmlSpace":Un(t,"http://www.w3.org/XML/1998/namespace","xml:space",a);break;case"is":uu(t,"is",a);break;case"innerText":case"textContent":break;default:(!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!=="N")&&(n=E3.get(n)||n,uu(t,n,a))}}function Ff(t,e,n,a,l,c){switch(n){case"style":Ho(t,a,c);break;case"dangerouslySetInnerHTML":if(a!=null){if(typeof a!="object"||!("__html"in a))throw Error(s(61));if(n=a.__html,n!=null){if(l.children!=null)throw Error(s(60));t.innerHTML=n}}break;case"children":typeof a=="string"?ol(t,a):(typeof a=="number"||typeof a=="bigint")&&ol(t,""+a);break;case"onScroll":a!=null&&Rt("scroll",t);break;case"onScrollEnd":a!=null&&Rt("scrollend",t);break;case"onClick":a!=null&&(t.onclick=Cn);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!Oo.hasOwnProperty(n))t:{if(n[0]==="o"&&n[1]==="n"&&(l=n.endsWith("Capture"),e=n.slice(2,l?n.length-7:void 0),c=t[Ze]||null,c=c!=null?c[n]:null,typeof c=="function"&&t.removeEventListener(e,c,l),typeof a=="function")){typeof c!="function"&&c!==null&&(n in t?t[n]=null:t.hasAttribute(n)&&t.removeAttribute(n)),t.addEventListener(e,a,l);break t}n in t?t[n]=a:a===!0?t.setAttribute(n,""):uu(t,n,a)}}}function ze(t,e,n){switch(e){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":Rt("error",t),Rt("load",t);var a=!1,l=!1,c;for(c in n)if(n.hasOwnProperty(c)){var d=n[c];if(d!=null)switch(c){case"src":a=!0;break;case"srcSet":l=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(s(137,e));default:Vt(t,e,c,d,n,null)}}l&&Vt(t,e,"srcSet",n.srcSet,n,null),a&&Vt(t,e,"src",n.src,n,null);return;case"input":Rt("invalid",t);var g=c=d=l=null,S=null,M=null;for(a in n)if(n.hasOwnProperty(a)){var q=n[a];if(q!=null)switch(a){case"name":l=q;break;case"type":d=q;break;case"checked":S=q;break;case"defaultChecked":M=q;break;case"value":c=q;break;case"defaultValue":g=q;break;case"children":case"dangerouslySetInnerHTML":if(q!=null)throw Error(s(137,e));break;default:Vt(t,e,a,q,n,null)}}Mo(t,c,g,S,M,d,l,!1);return;case"select":Rt("invalid",t),a=d=c=null;for(l in n)if(n.hasOwnProperty(l)&&(g=n[l],g!=null))switch(l){case"value":c=g;break;case"defaultValue":d=g;break;case"multiple":a=g;default:Vt(t,e,l,g,n,null)}e=c,n=d,t.multiple=!!a,e!=null?rl(t,!!a,e,!1):n!=null&&rl(t,!!a,n,!0);return;case"textarea":Rt("invalid",t),c=l=a=null;for(d in n)if(n.hasOwnProperty(d)&&(g=n[d],g!=null))switch(d){case"value":a=g;break;case"defaultValue":l=g;break;case"children":c=g;break;case"dangerouslySetInnerHTML":if(g!=null)throw Error(s(91));break;default:Vt(t,e,d,g,n,null)}Co(t,a,l,c);return;case"option":for(S in n)if(n.hasOwnProperty(S)&&(a=n[S],a!=null))switch(S){case"selected":t.selected=a&&typeof a!="function"&&typeof a!="symbol";break;default:Vt(t,e,S,a,n,null)}return;case"dialog":Rt("beforetoggle",t),Rt("toggle",t),Rt("cancel",t),Rt("close",t);break;case"iframe":case"object":Rt("load",t);break;case"video":case"audio":for(a=0;a<Ui.length;a++)Rt(Ui[a],t);break;case"image":Rt("error",t),Rt("load",t);break;case"details":Rt("toggle",t);break;case"embed":case"source":case"link":Rt("error",t),Rt("load",t);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(M in n)if(n.hasOwnProperty(M)&&(a=n[M],a!=null))switch(M){case"children":case"dangerouslySetInnerHTML":throw Error(s(137,e));default:Vt(t,e,M,a,n,null)}return;default:if(is(e)){for(q in n)n.hasOwnProperty(q)&&(a=n[q],a!==void 0&&Ff(t,e,q,a,n,void 0));return}}for(g in n)n.hasOwnProperty(g)&&(a=n[g],a!=null&&Vt(t,e,g,a,n,null))}function ky(t,e,n,a){switch(e){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var l=null,c=null,d=null,g=null,S=null,M=null,q=null;for(j in n){var K=n[j];if(n.hasOwnProperty(j)&&K!=null)switch(j){case"checked":break;case"value":break;case"defaultValue":S=K;default:a.hasOwnProperty(j)||Vt(t,e,j,null,a,K)}}for(var C in a){var j=a[C];if(K=n[C],a.hasOwnProperty(C)&&(j!=null||K!=null))switch(C){case"type":c=j;break;case"name":l=j;break;case"checked":M=j;break;case"defaultChecked":q=j;break;case"value":d=j;break;case"defaultValue":g=j;break;case"children":case"dangerouslySetInnerHTML":if(j!=null)throw Error(s(137,e));break;default:j!==K&&Vt(t,e,C,j,a,K)}}as(t,d,g,S,M,q,c,l);return;case"select":j=d=g=C=null;for(c in n)if(S=n[c],n.hasOwnProperty(c)&&S!=null)switch(c){case"value":break;case"multiple":j=S;default:a.hasOwnProperty(c)||Vt(t,e,c,null,a,S)}for(l in a)if(c=a[l],S=n[l],a.hasOwnProperty(l)&&(c!=null||S!=null))switch(l){case"value":C=c;break;case"defaultValue":g=c;break;case"multiple":d=c;default:c!==S&&Vt(t,e,l,c,a,S)}e=g,n=d,a=j,C!=null?rl(t,!!n,C,!1):!!a!=!!n&&(e!=null?rl(t,!!n,e,!0):rl(t,!!n,n?[]:"",!1));return;case"textarea":j=C=null;for(g in n)if(l=n[g],n.hasOwnProperty(g)&&l!=null&&!a.hasOwnProperty(g))switch(g){case"value":break;case"children":break;default:Vt(t,e,g,null,a,l)}for(d in a)if(l=a[d],c=n[d],a.hasOwnProperty(d)&&(l!=null||c!=null))switch(d){case"value":C=l;break;case"defaultValue":j=l;break;case"children":break;case"dangerouslySetInnerHTML":if(l!=null)throw Error(s(91));break;default:l!==c&&Vt(t,e,d,l,a,c)}Uo(t,C,j);return;case"option":for(var ft in n)if(C=n[ft],n.hasOwnProperty(ft)&&C!=null&&!a.hasOwnProperty(ft))switch(ft){case"selected":t.selected=!1;break;default:Vt(t,e,ft,null,a,C)}for(S in a)if(C=a[S],j=n[S],a.hasOwnProperty(S)&&C!==j&&(C!=null||j!=null))switch(S){case"selected":t.selected=C&&typeof C!="function"&&typeof C!="symbol";break;default:Vt(t,e,S,C,a,j)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var bt in n)C=n[bt],n.hasOwnProperty(bt)&&C!=null&&!a.hasOwnProperty(bt)&&Vt(t,e,bt,null,a,C);for(M in a)if(C=a[M],j=n[M],a.hasOwnProperty(M)&&C!==j&&(C!=null||j!=null))switch(M){case"children":case"dangerouslySetInnerHTML":if(C!=null)throw Error(s(137,e));break;default:Vt(t,e,M,C,a,j)}return;default:if(is(e)){for(var Qt in n)C=n[Qt],n.hasOwnProperty(Qt)&&C!==void 0&&!a.hasOwnProperty(Qt)&&Ff(t,e,Qt,void 0,a,C);for(q in a)C=a[q],j=n[q],!a.hasOwnProperty(q)||C===j||C===void 0&&j===void 0||Ff(t,e,q,C,a,j);return}}for(var x in n)C=n[x],n.hasOwnProperty(x)&&C!=null&&!a.hasOwnProperty(x)&&Vt(t,e,x,null,a,C);for(K in a)C=a[K],j=n[K],!a.hasOwnProperty(K)||C===j||C==null&&j==null||Vt(t,e,K,C,a,j)}function jd(t){switch(t){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function Iy(){if(typeof performance.getEntriesByType=="function"){for(var t=0,e=0,n=performance.getEntriesByType("resource"),a=0;a<n.length;a++){var l=n[a],c=l.transferSize,d=l.initiatorType,g=l.duration;if(c&&g&&jd(d)){for(d=0,g=l.responseEnd,a+=1;a<n.length;a++){var S=n[a],M=S.startTime;if(M>g)break;var q=S.transferSize,K=S.initiatorType;q&&jd(K)&&(S=S.responseEnd,d+=q*(S<g?1:(g-M)/(S-M)))}if(--a,e+=8*(c+d)/(l.duration/1e3),t++,10<t)break}}if(0<t)return e/t/1e6}return navigator.connection&&(t=navigator.connection.downlink,typeof t=="number")?t:5}var Kf=null,Jf=null;function lc(t){return t.nodeType===9?t:t.ownerDocument}function Bd(t){switch(t){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function Yd(t,e){if(t===0)switch(e){case"svg":return 1;case"math":return 2;default:return 0}return t===1&&e==="foreignObject"?0:t}function kf(t,e){return t==="textarea"||t==="noscript"||typeof e.children=="string"||typeof e.children=="number"||typeof e.children=="bigint"||typeof e.dangerouslySetInnerHTML=="object"&&e.dangerouslySetInnerHTML!==null&&e.dangerouslySetInnerHTML.__html!=null}var If=null;function Wy(){var t=window.event;return t&&t.type==="popstate"?t===If?!1:(If=t,!0):(If=null,!1)}var Gd=typeof setTimeout=="function"?setTimeout:void 0,$y=typeof clearTimeout=="function"?clearTimeout:void 0,qd=typeof Promise=="function"?Promise:void 0,Py=typeof queueMicrotask=="function"?queueMicrotask:typeof qd<"u"?function(t){return qd.resolve(null).then(t).catch(tg)}:Gd;function tg(t){setTimeout(function(){throw t})}function Sa(t){return t==="head"}function Zd(t,e){var n=e,a=0;do{var l=n.nextSibling;if(t.removeChild(n),l&&l.nodeType===8)if(n=l.data,n==="/$"||n==="/&"){if(a===0){t.removeChild(l),Zl(e);return}a--}else if(n==="$"||n==="$?"||n==="$~"||n==="$!"||n==="&")a++;else if(n==="html")Li(t.ownerDocument.documentElement);else if(n==="head"){n=t.ownerDocument.head,Li(n);for(var c=n.firstChild;c;){var d=c.nextSibling,g=c.nodeName;c[Pl]||g==="SCRIPT"||g==="STYLE"||g==="LINK"&&c.rel.toLowerCase()==="stylesheet"||n.removeChild(c),c=d}}else n==="body"&&Li(t.ownerDocument.body);n=l}while(n);Zl(e)}function Xd(t,e){var n=t;t=0;do{var a=n.nextSibling;if(n.nodeType===1?e?(n._stashedDisplay=n.style.display,n.style.display="none"):(n.style.display=n._stashedDisplay||"",n.getAttribute("style")===""&&n.removeAttribute("style")):n.nodeType===3&&(e?(n._stashedText=n.nodeValue,n.nodeValue=""):n.nodeValue=n._stashedText||""),a&&a.nodeType===8)if(n=a.data,n==="/$"){if(t===0)break;t--}else n!=="$"&&n!=="$?"&&n!=="$~"&&n!=="$!"||t++;n=a}while(n)}function Wf(t){var e=t.firstChild;for(e&&e.nodeType===10&&(e=e.nextSibling);e;){var n=e;switch(e=e.nextSibling,n.nodeName){case"HTML":case"HEAD":case"BODY":Wf(n),es(n);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(n.rel.toLowerCase()==="stylesheet")continue}t.removeChild(n)}}function eg(t,e,n,a){for(;t.nodeType===1;){var l=n;if(t.nodeName.toLowerCase()!==e.toLowerCase()){if(!a&&(t.nodeName!=="INPUT"||t.type!=="hidden"))break}else if(a){if(!t[Pl])switch(e){case"meta":if(!t.hasAttribute("itemprop"))break;return t;case"link":if(c=t.getAttribute("rel"),c==="stylesheet"&&t.hasAttribute("data-precedence"))break;if(c!==l.rel||t.getAttribute("href")!==(l.href==null||l.href===""?null:l.href)||t.getAttribute("crossorigin")!==(l.crossOrigin==null?null:l.crossOrigin)||t.getAttribute("title")!==(l.title==null?null:l.title))break;return t;case"style":if(t.hasAttribute("data-precedence"))break;return t;case"script":if(c=t.getAttribute("src"),(c!==(l.src==null?null:l.src)||t.getAttribute("type")!==(l.type==null?null:l.type)||t.getAttribute("crossorigin")!==(l.crossOrigin==null?null:l.crossOrigin))&&c&&t.hasAttribute("async")&&!t.hasAttribute("itemprop"))break;return t;default:return t}}else if(e==="input"&&t.type==="hidden"){var c=l.name==null?null:""+l.name;if(l.type==="hidden"&&t.getAttribute("name")===c)return t}else return t;if(t=mn(t.nextSibling),t===null)break}return null}function ng(t,e,n){if(e==="")return null;for(;t.nodeType!==3;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!n||(t=mn(t.nextSibling),t===null))return null;return t}function Vd(t,e){for(;t.nodeType!==8;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!e||(t=mn(t.nextSibling),t===null))return null;return t}function $f(t){return t.data==="$?"||t.data==="$~"}function Pf(t){return t.data==="$!"||t.data==="$?"&&t.ownerDocument.readyState!=="loading"}function ag(t,e){var n=t.ownerDocument;if(t.data==="$~")t._reactRetry=e;else if(t.data!=="$?"||n.readyState!=="loading")e();else{var a=function(){e(),n.removeEventListener("DOMContentLoaded",a)};n.addEventListener("DOMContentLoaded",a),t._reactRetry=a}}function mn(t){for(;t!=null;t=t.nextSibling){var e=t.nodeType;if(e===1||e===3)break;if(e===8){if(e=t.data,e==="$"||e==="$!"||e==="$?"||e==="$~"||e==="&"||e==="F!"||e==="F")break;if(e==="/$"||e==="/&")return null}}return t}var tr=null;function Qd(t){t=t.nextSibling;for(var e=0;t;){if(t.nodeType===8){var n=t.data;if(n==="/$"||n==="/&"){if(e===0)return mn(t.nextSibling);e--}else n!=="$"&&n!=="$!"&&n!=="$?"&&n!=="$~"&&n!=="&"||e++}t=t.nextSibling}return null}function Fd(t){t=t.previousSibling;for(var e=0;t;){if(t.nodeType===8){var n=t.data;if(n==="$"||n==="$!"||n==="$?"||n==="$~"||n==="&"){if(e===0)return t;e--}else n!=="/$"&&n!=="/&"||e++}t=t.previousSibling}return null}function Kd(t,e,n){switch(e=lc(n),t){case"html":if(t=e.documentElement,!t)throw Error(s(452));return t;case"head":if(t=e.head,!t)throw Error(s(453));return t;case"body":if(t=e.body,!t)throw Error(s(454));return t;default:throw Error(s(451))}}function Li(t){for(var e=t.attributes;e.length;)t.removeAttributeNode(e[0]);es(t)}var yn=new Map,Jd=new Set;function ic(t){return typeof t.getRootNode=="function"?t.getRootNode():t.nodeType===9?t:t.ownerDocument}var In=V.d;V.d={f:lg,r:ig,D:ug,C:cg,L:sg,m:fg,X:og,S:rg,M:dg};function lg(){var t=In.f(),e=Iu();return t||e}function ig(t){var e=cl(t);e!==null&&e.tag===5&&e.type==="form"?o2(e):In.r(t)}var Yl=typeof document>"u"?null:document;function kd(t,e,n){var a=Yl;if(a&&typeof e=="string"&&e){var l=cn(e);l='link[rel="'+t+'"][href="'+l+'"]',typeof n=="string"&&(l+='[crossorigin="'+n+'"]'),Jd.has(l)||(Jd.add(l),t={rel:t,crossOrigin:n,href:e},a.querySelector(l)===null&&(e=a.createElement("link"),ze(e,"link",t),be(e),a.head.appendChild(e)))}}function ug(t){In.D(t),kd("dns-prefetch",t,null)}function cg(t,e){In.C(t,e),kd("preconnect",t,e)}function sg(t,e,n){In.L(t,e,n);var a=Yl;if(a&&t&&e){var l='link[rel="preload"][as="'+cn(e)+'"]';e==="image"&&n&&n.imageSrcSet?(l+='[imagesrcset="'+cn(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(l+='[imagesizes="'+cn(n.imageSizes)+'"]')):l+='[href="'+cn(t)+'"]';var c=l;switch(e){case"style":c=Gl(t);break;case"script":c=ql(t)}yn.has(c)||(t=p({rel:"preload",href:e==="image"&&n&&n.imageSrcSet?void 0:t,as:e},n),yn.set(c,t),a.querySelector(l)!==null||e==="style"&&a.querySelector(Hi(c))||e==="script"&&a.querySelector(ji(c))||(e=a.createElement("link"),ze(e,"link",t),be(e),a.head.appendChild(e)))}}function fg(t,e){In.m(t,e);var n=Yl;if(n&&t){var a=e&&typeof e.as=="string"?e.as:"script",l='link[rel="modulepreload"][as="'+cn(a)+'"][href="'+cn(t)+'"]',c=l;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":c=ql(t)}if(!yn.has(c)&&(t=p({rel:"modulepreload",href:t},e),yn.set(c,t),n.querySelector(l)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(ji(c)))return}a=n.createElement("link"),ze(a,"link",t),be(a),n.head.appendChild(a)}}}function rg(t,e,n){In.S(t,e,n);var a=Yl;if(a&&t){var l=sl(a).hoistableStyles,c=Gl(t);e=e||"default";var d=l.get(c);if(!d){var g={loading:0,preload:null};if(d=a.querySelector(Hi(c)))g.loading=5;else{t=p({rel:"stylesheet",href:t,"data-precedence":e},n),(n=yn.get(c))&&er(t,n);var S=d=a.createElement("link");be(S),ze(S,"link",t),S._p=new Promise(function(M,q){S.onload=M,S.onerror=q}),S.addEventListener("load",function(){g.loading|=1}),S.addEventListener("error",function(){g.loading|=2}),g.loading|=4,uc(d,e,a)}d={type:"stylesheet",instance:d,count:1,state:g},l.set(c,d)}}}function og(t,e){In.X(t,e);var n=Yl;if(n&&t){var a=sl(n).hoistableScripts,l=ql(t),c=a.get(l);c||(c=n.querySelector(ji(l)),c||(t=p({src:t,async:!0},e),(e=yn.get(l))&&nr(t,e),c=n.createElement("script"),be(c),ze(c,"link",t),n.head.appendChild(c)),c={type:"script",instance:c,count:1,state:null},a.set(l,c))}}function dg(t,e){In.M(t,e);var n=Yl;if(n&&t){var a=sl(n).hoistableScripts,l=ql(t),c=a.get(l);c||(c=n.querySelector(ji(l)),c||(t=p({src:t,async:!0,type:"module"},e),(e=yn.get(l))&&nr(t,e),c=n.createElement("script"),be(c),ze(c,"link",t),n.head.appendChild(c)),c={type:"script",instance:c,count:1,state:null},a.set(l,c))}}function Id(t,e,n,a){var l=(l=L.current)?ic(l):null;if(!l)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(e=Gl(n.href),n=sl(l).hoistableStyles,a=n.get(e),a||(a={type:"style",instance:null,count:0,state:null},n.set(e,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){t=Gl(n.href);var c=sl(l).hoistableStyles,d=c.get(t);if(d||(l=l.ownerDocument||l,d={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},c.set(t,d),(c=l.querySelector(Hi(t)))&&!c._p&&(d.instance=c,d.state.loading=5),yn.has(t)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},yn.set(t,n),c||hg(l,t,n,d.state))),e&&a===null)throw Error(s(528,""));return d}if(e&&a!==null)throw Error(s(529,""));return null;case"script":return e=n.async,n=n.src,typeof n=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=ql(n),n=sl(l).hoistableScripts,a=n.get(e),a||(a={type:"script",instance:null,count:0,state:null},n.set(e,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Gl(t){return'href="'+cn(t)+'"'}function Hi(t){return'link[rel="stylesheet"]['+t+"]"}function Wd(t){return p({},t,{"data-precedence":t.precedence,precedence:null})}function hg(t,e,n,a){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?a.loading=1:(e=t.createElement("link"),a.preload=e,e.addEventListener("load",function(){return a.loading|=1}),e.addEventListener("error",function(){return a.loading|=2}),ze(e,"link",n),be(e),t.head.appendChild(e))}function ql(t){return'[src="'+cn(t)+'"]'}function ji(t){return"script[async]"+t}function $d(t,e,n){if(e.count++,e.instance===null)switch(e.type){case"style":var a=t.querySelector('style[data-href~="'+cn(n.href)+'"]');if(a)return e.instance=a,be(a),a;var l=p({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return a=(t.ownerDocument||t).createElement("style"),be(a),ze(a,"style",l),uc(a,n.precedence,t),e.instance=a;case"stylesheet":l=Gl(n.href);var c=t.querySelector(Hi(l));if(c)return e.state.loading|=4,e.instance=c,be(c),c;a=Wd(n),(l=yn.get(l))&&er(a,l),c=(t.ownerDocument||t).createElement("link"),be(c);var d=c;return d._p=new Promise(function(g,S){d.onload=g,d.onerror=S}),ze(c,"link",a),e.state.loading|=4,uc(c,n.precedence,t),e.instance=c;case"script":return c=ql(n.src),(l=t.querySelector(ji(c)))?(e.instance=l,be(l),l):(a=n,(l=yn.get(c))&&(a=p({},n),nr(a,l)),t=t.ownerDocument||t,l=t.createElement("script"),be(l),ze(l,"link",a),t.head.appendChild(l),e.instance=l);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(a=e.instance,e.state.loading|=4,uc(a,n.precedence,t));return e.instance}function uc(t,e,n){for(var a=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),l=a.length?a[a.length-1]:null,c=l,d=0;d<a.length;d++){var g=a[d];if(g.dataset.precedence===e)c=g;else if(c!==l)break}c?c.parentNode.insertBefore(t,c.nextSibling):(e=n.nodeType===9?n.head:n,e.insertBefore(t,e.firstChild))}function er(t,e){t.crossOrigin==null&&(t.crossOrigin=e.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=e.referrerPolicy),t.title==null&&(t.title=e.title)}function nr(t,e){t.crossOrigin==null&&(t.crossOrigin=e.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=e.referrerPolicy),t.integrity==null&&(t.integrity=e.integrity)}var cc=null;function Pd(t,e,n){if(cc===null){var a=new Map,l=cc=new Map;l.set(n,a)}else l=cc,a=l.get(n),a||(a=new Map,l.set(n,a));if(a.has(t))return a;for(a.set(t,null),n=n.getElementsByTagName(t),l=0;l<n.length;l++){var c=n[l];if(!(c[Pl]||c[we]||t==="link"&&c.getAttribute("rel")==="stylesheet")&&c.namespaceURI!=="http://www.w3.org/2000/svg"){var d=c.getAttribute(e)||"";d=t+d;var g=a.get(d);g?g.push(c):a.set(d,[c])}}return a}function t1(t,e,n){t=t.ownerDocument||t,t.head.insertBefore(n,e==="title"?t.querySelector("head > title"):null)}function mg(t,e,n){if(n===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function e1(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function yg(t,e,n,a){if(n.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var l=Gl(a.href),c=e.querySelector(Hi(l));if(c){e=c._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=sc.bind(t),e.then(t,t)),n.state.loading|=4,n.instance=c,be(c);return}c=e.ownerDocument||e,a=Wd(a),(l=yn.get(l))&&er(a,l),c=c.createElement("link"),be(c);var d=c;d._p=new Promise(function(g,S){d.onload=g,d.onerror=S}),ze(c,"link",a),n.instance=c}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(n,e),(e=n.state.preload)&&(n.state.loading&3)===0&&(t.count++,n=sc.bind(t),e.addEventListener("load",n),e.addEventListener("error",n))}}var ar=0;function gg(t,e){return t.stylesheets&&t.count===0&&rc(t,t.stylesheets),0<t.count||0<t.imgCount?function(n){var a=setTimeout(function(){if(t.stylesheets&&rc(t,t.stylesheets),t.unsuspend){var c=t.unsuspend;t.unsuspend=null,c()}},6e4+e);0<t.imgBytes&&ar===0&&(ar=62500*Iy());var l=setTimeout(function(){if(t.waitingForImages=!1,t.count===0&&(t.stylesheets&&rc(t,t.stylesheets),t.unsuspend)){var c=t.unsuspend;t.unsuspend=null,c()}},(t.imgBytes>ar?50:800)+e);return t.unsuspend=n,function(){t.unsuspend=null,clearTimeout(a),clearTimeout(l)}}:null}function sc(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)rc(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var fc=null;function rc(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,fc=new Map,e.forEach(vg,t),fc=null,sc.call(t))}function vg(t,e){if(!(e.state.loading&4)){var n=fc.get(t);if(n)var a=n.get(null);else{n=new Map,fc.set(t,n);for(var l=t.querySelectorAll("link[data-precedence],style[data-precedence]"),c=0;c<l.length;c++){var d=l[c];(d.nodeName==="LINK"||d.getAttribute("media")!=="not all")&&(n.set(d.dataset.precedence,d),a=d)}a&&n.set(null,a)}l=e.instance,d=l.getAttribute("data-precedence"),c=n.get(d)||a,c===a&&n.set(null,l),n.set(d,l),this.count++,a=sc.bind(this),l.addEventListener("load",a),l.addEventListener("error",a),c?c.parentNode.insertBefore(l,c.nextSibling):(t=t.nodeType===9?t.head:t,t.insertBefore(l,t.firstChild)),e.state.loading|=4}}var Bi={$$typeof:$,Provider:null,Consumer:null,_currentValue:lt,_currentValue2:lt,_threadCount:0};function _g(t,e,n,a,l,c,d,g,S){this.tag=1,this.containerInfo=t,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Wc(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Wc(0),this.hiddenUpdates=Wc(null),this.identifierPrefix=a,this.onUncaughtError=l,this.onCaughtError=c,this.onRecoverableError=d,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=S,this.incompleteTransitions=new Map}function n1(t,e,n,a,l,c,d,g,S,M,q,K){return t=new _g(t,e,n,d,S,M,q,K,g),e=1,c===!0&&(e|=24),c=We(3,null,null,e),t.current=c,c.stateNode=t,e=Ls(),e.refCount++,t.pooledCache=e,e.refCount++,c.memoizedState={element:a,isDehydrated:n,cache:e},Ys(c),t}function a1(t){return t?(t=_l,t):_l}function l1(t,e,n,a,l,c){l=a1(l),a.context===null?a.context=l:a.pendingContext=l,a=ra(e),a.payload={element:n},c=c===void 0?null:c,c!==null&&(a.callback=c),n=oa(t,a,e),n!==null&&(Je(n,t,e),gi(n,t,e))}function i1(t,e){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var n=t.retryLane;t.retryLane=n!==0&&n<e?n:e}}function lr(t,e){i1(t,e),(t=t.alternate)&&i1(t,e)}function u1(t){if(t.tag===13||t.tag===31){var e=Ya(t,67108864);e!==null&&Je(e,t,67108864),lr(t,67108864)}}function c1(t){if(t.tag===13||t.tag===31){var e=nn();e=$c(e);var n=Ya(t,e);n!==null&&Je(n,t,e),lr(t,e)}}var oc=!0;function pg(t,e,n,a){var l=N.T;N.T=null;var c=V.p;try{V.p=2,ir(t,e,n,a)}finally{V.p=c,N.T=l}}function bg(t,e,n,a){var l=N.T;N.T=null;var c=V.p;try{V.p=8,ir(t,e,n,a)}finally{V.p=c,N.T=l}}function ir(t,e,n,a){if(oc){var l=ur(a);if(l===null)Qf(t,e,a,dc,n),f1(t,a);else if(Eg(l,t,e,n,a))a.stopPropagation();else if(f1(t,a),e&4&&-1<Sg.indexOf(t)){for(;l!==null;){var c=cl(l);if(c!==null)switch(c.tag){case 3:if(c=c.stateNode,c.current.memoizedState.isDehydrated){var d=pn(c.pendingLanes);if(d!==0){var g=c;for(g.pendingLanes|=2,g.entangledLanes|=2;d;){var S=1<<31-F(d);g.entanglements[1]|=S,d&=~S}zn(c),(Bt&6)===0&&(Ju=xe()+500,Mi(0))}}break;case 31:case 13:g=Ya(c,2),g!==null&&Je(g,c,2),Iu(),lr(c,2)}if(c=ur(a),c===null&&Qf(t,e,a,dc,n),c===l)break;l=c}l!==null&&a.stopPropagation()}else Qf(t,e,a,null,n)}}function ur(t){return t=cs(t),cr(t)}var dc=null;function cr(t){if(dc=null,t=ul(t),t!==null){var e=o(t);if(e===null)t=null;else{var n=e.tag;if(n===13){if(t=h(e),t!==null)return t;t=null}else if(n===31){if(t=v(e),t!==null)return t;t=null}else if(n===3){if(e.stateNode.current.memoizedState.isDehydrated)return e.tag===3?e.stateNode.containerInfo:null;t=null}else e!==t&&(t=null)}}return dc=t,null}function s1(t){switch(t){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(al()){case ll:return 2;case _e:return 8;case ea:case Jc:return 32;case Wl:return 268435456;default:return 32}default:return 32}}var sr=!1,Ea=null,Ta=null,Aa=null,Yi=new Map,Gi=new Map,xa=[],Sg="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function f1(t,e){switch(t){case"focusin":case"focusout":Ea=null;break;case"dragenter":case"dragleave":Ta=null;break;case"mouseover":case"mouseout":Aa=null;break;case"pointerover":case"pointerout":Yi.delete(e.pointerId);break;case"gotpointercapture":case"lostpointercapture":Gi.delete(e.pointerId)}}function qi(t,e,n,a,l,c){return t===null||t.nativeEvent!==c?(t={blockedOn:e,domEventName:n,eventSystemFlags:a,nativeEvent:c,targetContainers:[l]},e!==null&&(e=cl(e),e!==null&&u1(e)),t):(t.eventSystemFlags|=a,e=t.targetContainers,l!==null&&e.indexOf(l)===-1&&e.push(l),t)}function Eg(t,e,n,a,l){switch(e){case"focusin":return Ea=qi(Ea,t,e,n,a,l),!0;case"dragenter":return Ta=qi(Ta,t,e,n,a,l),!0;case"mouseover":return Aa=qi(Aa,t,e,n,a,l),!0;case"pointerover":var c=l.pointerId;return Yi.set(c,qi(Yi.get(c)||null,t,e,n,a,l)),!0;case"gotpointercapture":return c=l.pointerId,Gi.set(c,qi(Gi.get(c)||null,t,e,n,a,l)),!0}return!1}function r1(t){var e=ul(t.target);if(e!==null){var n=o(e);if(n!==null){if(e=n.tag,e===13){if(e=h(n),e!==null){t.blockedOn=e,Ao(t.priority,function(){c1(n)});return}}else if(e===31){if(e=v(n),e!==null){t.blockedOn=e,Ao(t.priority,function(){c1(n)});return}}else if(e===3&&n.stateNode.current.memoizedState.isDehydrated){t.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}t.blockedOn=null}function hc(t){if(t.blockedOn!==null)return!1;for(var e=t.targetContainers;0<e.length;){var n=ur(t.nativeEvent);if(n===null){n=t.nativeEvent;var a=new n.constructor(n.type,n);us=a,n.target.dispatchEvent(a),us=null}else return e=cl(n),e!==null&&u1(e),t.blockedOn=n,!1;e.shift()}return!0}function o1(t,e,n){hc(t)&&n.delete(e)}function Tg(){sr=!1,Ea!==null&&hc(Ea)&&(Ea=null),Ta!==null&&hc(Ta)&&(Ta=null),Aa!==null&&hc(Aa)&&(Aa=null),Yi.forEach(o1),Gi.forEach(o1)}function mc(t,e){t.blockedOn===e&&(t.blockedOn=null,sr||(sr=!0,u.unstable_scheduleCallback(u.unstable_NormalPriority,Tg)))}var yc=null;function d1(t){yc!==t&&(yc=t,u.unstable_scheduleCallback(u.unstable_NormalPriority,function(){yc===t&&(yc=null);for(var e=0;e<t.length;e+=3){var n=t[e],a=t[e+1],l=t[e+2];if(typeof a!="function"){if(cr(a||n)===null)continue;break}var c=cl(n);c!==null&&(t.splice(e,3),e-=3,uf(c,{pending:!0,data:l,method:n.method,action:a},a,l))}}))}function Zl(t){function e(S){return mc(S,t)}Ea!==null&&mc(Ea,t),Ta!==null&&mc(Ta,t),Aa!==null&&mc(Aa,t),Yi.forEach(e),Gi.forEach(e);for(var n=0;n<xa.length;n++){var a=xa[n];a.blockedOn===t&&(a.blockedOn=null)}for(;0<xa.length&&(n=xa[0],n.blockedOn===null);)r1(n),n.blockedOn===null&&xa.shift();if(n=(t.ownerDocument||t).$$reactFormReplay,n!=null)for(a=0;a<n.length;a+=3){var l=n[a],c=n[a+1],d=l[Ze]||null;if(typeof c=="function")d||d1(n);else if(d){var g=null;if(c&&c.hasAttribute("formAction")){if(l=c,d=c[Ze]||null)g=d.formAction;else if(cr(l)!==null)continue}else g=d.action;typeof g=="function"?n[a+1]=g:(n.splice(a,3),a-=3),d1(n)}}}function h1(){function t(c){c.canIntercept&&c.info==="react-transition"&&c.intercept({handler:function(){return new Promise(function(d){return l=d})},focusReset:"manual",scroll:"manual"})}function e(){l!==null&&(l(),l=null),a||setTimeout(n,20)}function n(){if(!a&&!navigation.transition){var c=navigation.currentEntry;c&&c.url!=null&&navigation.navigate(c.url,{state:c.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var a=!1,l=null;return navigation.addEventListener("navigate",t),navigation.addEventListener("navigatesuccess",e),navigation.addEventListener("navigateerror",e),setTimeout(n,100),function(){a=!0,navigation.removeEventListener("navigate",t),navigation.removeEventListener("navigatesuccess",e),navigation.removeEventListener("navigateerror",e),l!==null&&(l(),l=null)}}}function fr(t){this._internalRoot=t}gc.prototype.render=fr.prototype.render=function(t){var e=this._internalRoot;if(e===null)throw Error(s(409));var n=e.current,a=nn();l1(n,a,t,e,null,null)},gc.prototype.unmount=fr.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var e=t.containerInfo;l1(t.current,2,null,t,null,null),Iu(),e[il]=null}};function gc(t){this._internalRoot=t}gc.prototype.unstable_scheduleHydration=function(t){if(t){var e=To();t={blockedOn:null,target:t,priority:e};for(var n=0;n<xa.length&&e!==0&&e<xa[n].priority;n++);xa.splice(n,0,t),n===0&&r1(t)}};var m1=i.version;if(m1!=="19.2.1")throw Error(s(527,m1,"19.2.1"));V.findDOMNode=function(t){var e=t._reactInternals;if(e===void 0)throw typeof t.render=="function"?Error(s(188)):(t=Object.keys(t).join(","),Error(s(268,t)));return t=y(e),t=t!==null?_(t):null,t=t===null?null:t.stateNode,t};var Ag={bundleType:0,version:"19.2.1",rendererPackageName:"react-dom",currentDispatcherRef:N,reconcilerVersion:"19.2.1"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var vc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!vc.isDisabled&&vc.supportsFiber)try{Ua=vc.inject(Ag),Y=vc}catch{}}return Xi.createRoot=function(t,e){if(!r(t))throw Error(s(299));var n=!1,a="",l=S2,c=E2,d=T2;return e!=null&&(e.unstable_strictMode===!0&&(n=!0),e.identifierPrefix!==void 0&&(a=e.identifierPrefix),e.onUncaughtError!==void 0&&(l=e.onUncaughtError),e.onCaughtError!==void 0&&(c=e.onCaughtError),e.onRecoverableError!==void 0&&(d=e.onRecoverableError)),e=n1(t,1,!1,null,null,n,a,null,l,c,d,h1),t[il]=e.current,Vf(t),new fr(e)},Xi.hydrateRoot=function(t,e,n){if(!r(t))throw Error(s(299));var a=!1,l="",c=S2,d=E2,g=T2,S=null;return n!=null&&(n.unstable_strictMode===!0&&(a=!0),n.identifierPrefix!==void 0&&(l=n.identifierPrefix),n.onUncaughtError!==void 0&&(c=n.onUncaughtError),n.onCaughtError!==void 0&&(d=n.onCaughtError),n.onRecoverableError!==void 0&&(g=n.onRecoverableError),n.formState!==void 0&&(S=n.formState)),e=n1(t,1,!0,e,n??null,a,l,S,c,d,g,h1),e.context=a1(null),n=e.current,a=nn(),a=$c(a),l=ra(a),l.callback=null,oa(n,l,a),n=a,e.current.lanes=n,$l(e,n),zn(e),t[il]=e.current,Vf(t),new gc(e)},Xi.version="19.2.1",Xi}var A1;function Lg(){if(A1)return dr.exports;A1=1;function u(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),dr.exports=Cg(),dr.exports}var Hg=Lg();function jg(){const u=mt.useRef(null),[i]=yh(u);return[i,u]}function yh(u){const[i,f]=mt.useState(new DOMRect(0,0,10,10)),s=mt.useCallback(()=>{const r=u==null?void 0:u.current;r&&f(r.getBoundingClientRect())},[u]);return mt.useLayoutEffect(()=>{const r=u==null?void 0:u.current;if(!r)return;s();const o=new ResizeObserver(s);return o.observe(r),window.addEventListener("resize",s),()=>{o.disconnect(),window.removeEventListener("resize",s)}},[s,u]),[i,s]}function x1(u,i){u&&(i=Pa.getObject(u,i));const[f,s]=mt.useState(i),r=mt.useCallback(o=>{u?Pa.setObject(u,o):s(o)},[u,s]);return mt.useEffect(()=>{if(u){const o=()=>s(Pa.getObject(u,i));return Pa.onChangeEmitter.addEventListener(u,o),()=>Pa.onChangeEmitter.removeEventListener(u,o)}},[i,u]),[f,r]}class Bg{constructor(){this.onChangeEmitter=new EventTarget}getString(i,f){return localStorage[i]||f}setString(i,f){var s;localStorage[i]=f,this.onChangeEmitter.dispatchEvent(new Event(i)),(s=window.saveSettings)==null||s.call(window)}getObject(i,f){if(!localStorage[i])return f;try{return JSON.parse(localStorage[i])}catch{return f}}setObject(i,f){var s;localStorage[i]=JSON.stringify(f),this.onChangeEmitter.dispatchEvent(new Event(i)),(s=window.saveSettings)==null||s.call(window)}}const Pa=new Bg;function Ji(...u){return u.filter(Boolean).join(" ")}function Yg(u){u&&(u!=null&&u.scrollIntoViewIfNeeded?u.scrollIntoViewIfNeeded(!1):u==null||u.scrollIntoView())}const Gg="system",gh="theme",qg=[{label:"Dark mode",value:"dark-mode"},{label:"Light mode",value:"light-mode"},{label:"System",value:"system"}],vh=window.matchMedia("(prefers-color-scheme: dark)");function Zg(){document.playwrightThemeInitialized||(document.playwrightThemeInitialized=!0,document.defaultView.addEventListener("focus",u=>{u.target.document.nodeType===Node.DOCUMENT_NODE&&document.body.classList.remove("inactive")},!1),document.defaultView.addEventListener("blur",u=>{document.body.classList.add("inactive")},!1),Dr(zr()),vh.addEventListener("change",()=>{Dr(zr())}))}const Xg=new Set;function Dr(u){const i=Vg(),f=u==="system"?vh.matches?"dark-mode":"light-mode":u;if(i!==f){i&&document.documentElement.classList.remove(i),document.documentElement.classList.add(f);for(const s of Xg)s(f)}}function zr(){return Pa.getString(gh,Gg)}function Vg(){return document.documentElement.classList.contains("dark-mode")?"dark-mode":document.documentElement.classList.contains("light-mode")?"light-mode":null}function Qg(){const[u,i]=mt.useState(zr());return mt.useEffect(()=>{Pa.setString(gh,u),Dr(u)},[u]),[u,i]}const Fg="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-10%20-10%20276%20276'%3e%3clinearGradient%20id='a'%20x1='145'%20x2='34'%20y1='253'%20y2='61'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%231e8e3e'/%3e%3cstop%20offset='1'%20stop-color='%2334a853'/%3e%3c/linearGradient%3e%3clinearGradient%20id='b'%20x1='111'%20x2='222'%20y1='254'%20y2='62'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%23fcc934'/%3e%3cstop%20offset='1'%20stop-color='%23fbbc04'/%3e%3c/linearGradient%3e%3clinearGradient%20id='c'%20x1='17'%20x2='239'%20y1='80'%20y2='80'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%23d93025'/%3e%3cstop%20offset='1'%20stop-color='%23ea4335'/%3e%3c/linearGradient%3e%3ccircle%20cx='128'%20cy='128'%20r='64'%20fill='%23fff'/%3e%3cpath%20fill='url(%23a)'%20d='M96%20183.4A63.7%2063.7%200%200%201%2072.6%20160L17.2%2064A128%20128%200%200%200%20128%20256l55.4-96A64%2064%200%200%201%2096%20183.4Z'/%3e%3cpath%20fill='url(%23b)'%20d='M192%20128a63.7%2063.7%200%200%201-8.6%2032L128%20256A128%20128%200%200%200%20238.9%2064h-111a64%2064%200%200%201%2064%2064Z'/%3e%3ccircle%20cx='128'%20cy='128'%20r='52'%20fill='%231a73e8'/%3e%3cpath%20fill='url(%23c)'%20d='M96%2072.6a63.7%2063.7%200%200%201%2032-8.6h110.8a128%20128%200%200%200-221.7%200l55.5%2096A64%2064%200%200%201%2096%2072.6Z'/%3e%3c/svg%3e",Kg="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23fff'%20viewBox='-190%20-190%205180%205180'%3e%3clinearGradient%20id='a'%20x1='2149'%20x2='4207'%20y1='4638'%20y2='1076'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%23fcc934'/%3e%3cstop%20offset='1'%20stop-color='%23fbbc04'/%3e%3c/linearGradient%3e%3clinearGradient%20id='b'%20x1='2823'%20x2='-214'%20y1='4031'%20y2='2278'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%231e8e3e'/%3e%3cstop%20offset='1'%20stop-color='%2334a853'/%3e%3c/linearGradient%3e%3clinearGradient%20id='c'%20x1='371'%20x2='4429'%20y1='1501'%20y2='1501'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%23d93025'/%3e%3cstop%20offset='1'%20stop-color='%23ea4335'/%3e%3c/linearGradient%3e%3cpath%20fill='%23202124'%20d='M4400%203676c-45%2080-93%20157-145%20228l541-228z'/%3e%3cpath%20d='M2399%203600a1200%201200%200%201%200-1%200z'/%3e%3cpath%20fill='url(%23a)'%20d='M3440%203001%202402%204800a2394%202394%200%200%200%202398-2400c0-421-112-835-323-1200H2400l-2%201a1198%201198%200%200%201%201041%201800z'/%3e%3cpath%20fill='url(%23b)'%20d='M1360%203001%20322%201202a2398%202398%200%200%200%202078%203598l1038-1799v-1a1199%201199%200%200%201-2078%202z'/%3e%3cpath%20fill='%231a73e8'%20d='M2399%203351a950%20950%200%201%200%200-1900%20950%20950%200%200%200%200%201900z'/%3e%3cpath%20fill='url(%23c)'%20d='M2399%201200h2076a2396%202396%200%200%200-4153%202l1038%201800h2a1200%201200%200%200%201%201037-1802z'/%3e%3cpath%20fill='%233c4043'%20d='M1575%202250c0-40%2033-74%2075-74h3149v1500H1649a75%2075%200%200%201-74-75z'/%3e%3cpath%20d='M2442%202883a199%20199%200%200%200%20115-185c1-44-10-87-34-124a244%20244%200%200%200-94-86c-38-20-81-30-125-30h-317v880h334c46%201%2090-10%20131-32a250%20250%200%200%200%20135-220%20216%20216%200%200%200-145-203zm-40%20325c-23%2014-50%2022-76%2021h-226v-286h222c28%200%2055%206%2079%2020a146%20146%200%200%201%2070%20123c0%2024-6%2047-17%2068-13%2022-30%2041-53%2054zm25-444a140%20140%200%200%201-124%2070h-203v-267h209c25%200%2050%207%2071%2020a140%20140%200%200%201%2065%20113c0%2022-6%2044-18%2063zm733-40a296%20296%200%200%200-160-42%20292%20292%200%200%200-264%20171%20389%20389%200%200%200%203%20340%20300%20300%200%200%200%20270%20164%20300%20300%200%200%200%20276-167l3-5-96-48-3%205c-40%2072-100%20110-176%20110a192%20192%200%200%201-168-95%20240%20240%200%200%201-32-112h481l1-4a377%20377%200%200%200-32-200%20277%20277%200%200%200-103-117zm-160%2064c35-1%2070%208%20100%2026%2025%2015%2045%2037%2059%2064%2010%2022%2018%2045%2020%2070h-360c10-44%2031-84%2063-114s74-47%20118-46zm657%20462a76%2076%200%200%201-62-25c-12-15-18-40-18-73v-340h150v-105h-150v-175h-114v175h-108v105h108v364c0%2027%203%2053%2012%2078a160%20160%200%200%200%2094%2090c23%2010%2047%2014%2071%2013%2017%200%2033%200%2050-3%2012-3%2025-7%2037-13l4-1v-115l-9%205c-20%2013-42%2020-65%2020zm656-500a283%20283%200%200%200-200-68c-50%200-100%2010-144%2033-40%2020-76%2051-101%2090l-3%204%2086%2066%203-5c17-26%2040-47%2067-61%2028-15%2060-22%2092-22%2043-2%2085%2013%20118%2040a142%20142%200%200%201%2046%20108v29a418%20418%200%200%200-170-36c-75%200-139%2019-189%2056s-75%2092-75%20160a205%20205%200%200%200%20114%20186%20268%20268%200%200%200%20245-5c30-17%2056-41%2076-70v83h108v-401c0-78-25-141-73-186zm-224%20504c-34%202-67-10-94-30a96%2096%200%200%201-36-79%20108%20108%200%200%201%2040-88c28-22%2070-34%20124-34a315%20315%200%200%201%20155%2042%20198%20198%200%200%201-95%20164c-28%2017-60%2026-94%2025z'/%3e%3c/svg%3e",Jg="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-10%20-10%20276%20276'%3e%3ccircle%20cx='128'%20cy='128'%20r='64'%20fill='%23fff'/%3e%3cpath%20fill='%23fbbc04'%20d='M96%20183.4A63.7%2063.7%200%200%201%2072.6%20160L17.2%2064A128%20128%200%200%200%20128%20256l55.4-96A64%2064%200%200%201%2096%20183.4Z'/%3e%3cpath%20fill='%23fdd663'%20d='M192%20128a63.7%2063.7%200%200%201-8.6%2032L128%20256A128%20128%200%200%200%20238.9%2064h-111a64%2064%200%200%201%2064%2064Z'/%3e%3ccircle%20cx='128'%20cy='128'%20r='52'%20fill='%23fbbc04'/%3e%3cpath%20fill='%23f29900'%20d='M96%2072.6a63.7%2063.7%200%200%201%2032-8.6h110.8a128%20128%200%200%200-221.7%200l55.5%2096A64%2064%200%200%201%2096%2072.6Z'/%3e%3c/svg%3e",kg="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23fff'%20viewBox='-190%20-190%205180%205180'%3e%3clinearGradient%20id='a'%20x1='2149'%20x2='4207'%20y1='4638'%20y2='1076'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%23fcc934'/%3e%3cstop%20offset='1'%20stop-color='%23fbbc04'/%3e%3c/linearGradient%3e%3clinearGradient%20id='b'%20x1='2823'%20x2='-214'%20y1='4031'%20y2='2278'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%231e8e3e'/%3e%3cstop%20offset='1'%20stop-color='%2334a853'/%3e%3c/linearGradient%3e%3clinearGradient%20id='c'%20x1='371'%20x2='4429'%20y1='1501'%20y2='1501'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%23d93025'/%3e%3cstop%20offset='1'%20stop-color='%23ea4335'/%3e%3c/linearGradient%3e%3cpath%20fill='%23202124'%20d='M4400%203676c-45%2080-93%20157-145%20228l541-228z'/%3e%3cpath%20d='M2399%203600a1200%201200%200%201%200-1%200z'/%3e%3cpath%20fill='url(%23a)'%20d='M3440%203001%202402%204800a2394%202394%200%200%200%202398-2400c0-421-112-835-323-1200H2400l-2%201a1198%201198%200%200%201%201041%201800z'/%3e%3cpath%20fill='url(%23b)'%20d='M1360%203001%20322%201202a2398%202398%200%200%200%202078%203598l1038-1799v-1a1199%201199%200%200%201-2078%202z'/%3e%3cpath%20fill='%231a73e8'%20d='M2399%203351a950%20950%200%201%200%200-1900%20950%20950%200%200%200%200%201900z'/%3e%3cpath%20fill='url(%23c)'%20d='M2399%201200h2076a2396%202396%200%200%200-4153%202l1038%201800h2a1200%201200%200%200%201%201037-1802z'/%3e%3cpath%20fill='%233c4043'%20d='M1987%202326c0-70%200-106%2022-128s57-22%20128-22h2662v1500H2137c-70%200-106%200-128-22s-22-57-22-128z'/%3e%3cpath%20d='M2865%202532a480%20480%200%200%200-236-56h-267v881h267a480%20480%200%200%200%20236-56c66-36%20120-90%20155-155%2037-70%2056-150%2054-229%202-80-17-158-54-229-35-65-90-120-155-156zm-390%2054h154c102%200%20182%2030%20240%2087%2060%2058%2090%20140%2090%20244s-30%20186-90%20244a330%20330%200%200%201-240%2087h-154zm1153%20157a295%20295%200%200%200-158-42c-57%200-112%2016-160%2047-45%2030-81%2073-105%20123-25%2053-38%20110-37%20170%200%2060%2013%20118%2040%20172a302%20302%200%200%200%20270%20163%20300%20300%200%200%200%20276-167l2-6-96-47-2%204c-41%2073-100%20110-176%20110a193%20193%200%200%201-168-95c-20-34-30-72-33-112h482v-4c4-10%205-22%205-33a380%20380%200%200%200-36-168c-23-48-60-87-104-115zm-160%2064c36-2%2070%207%20101%2026%2025%2015%2045%2037%2058%2064%2011%2022%2018%2045%2021%2070h-360c10-44%2030-84%2062-115%2032-30%2075-46%20118-45zm837-87-190%20496-187-493-1-3h-122l251%20634%202%204h110l256-638z'/%3e%3c/svg%3e",gr="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-10%20-10%20276%20276'%3e%3ccircle%20cx='128'%20cy='128'%20r='64'%20fill='%23fff'/%3e%3cpath%20fill='%23669df6'%20d='M96%20183.4A63.7%2063.7%200%200%201%2072.6%20160L17.2%2064A128%20128%200%200%200%20128%20256l55.4-96A64%2064%200%200%201%2096%20183.4Z'/%3e%3cpath%20fill='%23aecbfa'%20d='M192%20128a63.7%2063.7%200%200%201-8.6%2032L128%20256A128%20128%200%200%200%20238.9%2064h-111a64%2064%200%200%201%2064%2064Z'/%3e%3ccircle%20cx='128'%20cy='128'%20r='52'%20fill='%231a73e8'/%3e%3cpath%20fill='%231967d2'%20d='M96%2072.6a63.7%2063.7%200%200%201%2032-8.6h110.8a128%20128%200%200%200-221.7%200l55.5%2096A64%2064%200%200%201%2096%2072.6Z'/%3e%3c/svg%3e",w1="/assets/firefox-1bWoP6pv.svg",O1="/assets/firefox-beta-k3eOH_eK.svg",Ig="/assets/firefox-nightly-Cp5nfeDT.svg",Wg="/assets/safari-na3_-uQk.svg",_c="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:x='http://www.w3.org/1999/xlink'%20viewBox='0%200%2027600%2027600'%3e%3clinearGradient%20id='a'%20gradientUnits='userSpaceOnUse'/%3e%3clinearGradient%20id='b'%20x1='6870'%20x2='24704'%20y1='18705'%20y2='18705'%20x:href='%23a'%3e%3cstop%20offset='0'%20stop-color='%230c59a4'/%3e%3cstop%20offset='1'%20stop-color='%23114a8b'/%3e%3c/linearGradient%3e%3clinearGradient%20id='c'%20x1='16272'%20x2='5133'%20y1='10968'%20y2='23102'%20x:href='%23a'%3e%3cstop%20offset='0'%20stop-color='%231b9de2'/%3e%3cstop%20offset='.16'%20stop-color='%231595df'/%3e%3cstop%20offset='.67'%20stop-color='%230680d7'/%3e%3cstop%20offset='1'%20stop-color='%230078d4'/%3e%3c/linearGradient%3e%3cradialGradient%20id='d'%20cx='16720'%20cy='18747'%20r='9538'%20x:href='%23a'%3e%3cstop%20offset='.72'%20stop-opacity='0'/%3e%3cstop%20offset='.95'%20stop-opacity='.53'/%3e%3cstop%20offset='1'/%3e%3c/radialGradient%3e%3cradialGradient%20id='e'%20cx='7130'%20cy='19866'%20r='14324'%20gradientTransform='matrix(.14843%20-.98892%20.79688%20.1196%20-8759%2025542)'%20x:href='%23a'%3e%3cstop%20offset='.76'%20stop-opacity='0'/%3e%3cstop%20offset='.95'%20stop-opacity='.5'/%3e%3cstop%20offset='1'/%3e%3c/radialGradient%3e%3cradialGradient%20id='f'%20cx='2523'%20cy='4680'%20r='20243'%20gradientTransform='matrix(-.03715%20.99931%20-2.12836%20-.07913%2013579%203530)'%20x:href='%23a'%3e%3cstop%20offset='0'%20stop-color='%2335c1f1'/%3e%3cstop%20offset='.11'%20stop-color='%2334c1ed'/%3e%3cstop%20offset='.23'%20stop-color='%232fc2df'/%3e%3cstop%20offset='.31'%20stop-color='%232bc3d2'/%3e%3cstop%20offset='.67'%20stop-color='%2336c752'/%3e%3c/radialGradient%3e%3cradialGradient%20id='g'%20cx='24247'%20cy='7758'%20r='9734'%20gradientTransform='matrix(.28109%20.95968%20-.78353%20.22949%2024510%20-16292)'%20x:href='%23a'%3e%3cstop%20offset='0'%20stop-color='%2366eb6e'/%3e%3cstop%20offset='1'%20stop-color='%2366eb6e'%20stop-opacity='0'/%3e%3c/radialGradient%3e%3cpath%20id='h'%20d='M24105%2020053a9345%209345%200%2001-1053%20472%2010202%2010202%200%2001-3590%20646c-4732%200-8855-3255-8855-7432%200-1175%20680-2193%201643-2729-4280%20180-5380%204640-5380%207253%200%207387%206810%208137%208276%208137%20791%200%201984-230%202704-456l130-44a12834%2012834%200%20006660-5282c220-350-168-757-535-565z'/%3e%3cpath%20id='i'%20d='M11571%2025141a7913%207913%200%2001-2273-2137%208145%208145%200%2001-1514-4740%208093%208093%200%20013093-6395%208082%208082%200%20011373-859c312-148%20846-414%201554-404a3236%203236%200%20012569%201297%203184%203184%200%2001636%201866c0-21%202446-7960-8005-7960-4390%200-8004%204166-8004%207820%200%202319%20538%204170%201212%205604a12833%2012833%200%20007684%206757%2012795%2012795%200%20003908%20610c1414%200%202774-233%204045-656a7575%207575%200%2001-6278-803z'/%3e%3cpath%20id='j'%20d='M16231%2015886c-80%20105-330%20250-330%20566%200%20260%20170%20512%20472%20723%201438%201003%204149%20868%204156%20868a5954%205954%200%20003027-839%206147%206147%200%20001133-850%206180%206180%200%20001910-4437c26-2242-796-3732-1133-4392-2120-4141-6694-6525-11668-6525-7011%200-12703%205635-12798%2012620%2047-3654%203679-6605%207996-6605%20350%200%202346%2034%204200%201007%201634%20858%202490%201894%203086%202921%20618%201067%20728%202415%20728%202952s-271%201333-780%201990z'/%3e%3cuse%20fill='url(%23b)'%20x:href='%23h'/%3e%3cuse%20fill='url(%23d)'%20opacity='.35'%20x:href='%23h'/%3e%3cuse%20fill='url(%23c)'%20x:href='%23i'/%3e%3cuse%20fill='url(%23e)'%20opacity='.4'%20x:href='%23i'/%3e%3cuse%20fill='url(%23f)'%20x:href='%23j'/%3e%3cuse%20fill='url(%23g)'%20x:href='%23j'/%3e%3c/svg%3e",R1={chromium:gr,"chromium-headless-shell":gr,"chrome-for-testing":gr,chrome:Fg,"chrome-beta":Kg,"chrome-dev":kg,"chrome-canary":Jg,firefox:w1,"moz-firefox":w1,"firefox-beta":O1,"moz-firefox-beta":O1,"moz-firefox-nightly":Ig,webkit:Wg,msedge:_c,"msedge-beta":_c,"msedge-dev":_c,"msedge-canary":_c},$g=({browserName:u,channel:i})=>{const f=i&&R1[i]?i:u,s=f?R1[f]:void 0;if(s)return O.jsx("img",{className:"browser-icon-img",src:s,alt:"","aria-hidden":"true"});const r=u?u[0].toUpperCase():"?";return O.jsx("span",{className:"browser-icon-fallback","aria-hidden":"true",children:r})},Pg=()=>O.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:O.jsx("polyline",{points:"15 18 9 12 15 6"})}),tv=()=>O.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:O.jsx("polyline",{points:"9 18 15 12 9 6"})}),ev=()=>O.jsx("svg",{width:"20",height:"20",viewBox:"0 -960 960 960",style:{fill:"currentColor"},"aria-hidden":"true",children:O.jsx("path",{d:"M240-80q-33 0-56.5-23.5T160-160v-400q0-33 23.5-56.5T240-640h40v-80q0-83 58.5-141.5T480-920q83 0 141.5 58.5T680-720v80h40q33 0 56.5 23.5T800-560v400q0 33-23.5 56.5T720-80H240Zm0-80h480v-400H240v400Zm296.5-143.5Q560-327 560-360t-23.5-56.5Q513-440 480-440t-56.5 23.5Q400-393 400-360t23.5 56.5Q447-280 480-280t56.5-23.5ZM360-640h240v-80q0-50-35-85t-85-35q-50 0-85 35t-35 85v80ZM240-160v-400 400Z"})}),nv=()=>O.jsx("svg",{width:"20",height:"20",viewBox:"0 -960 960 960",style:{fill:"currentColor"},"aria-hidden":"true",children:O.jsx("path",{d:"M240-160h480v-400H240v400Zm296.5-143.5Q560-327 560-360t-23.5-56.5Q513-440 480-440t-56.5 23.5Q400-393 400-360t23.5 56.5Q447-280 480-280t56.5-23.5ZM240-160v-400 400Zm0 80q-33 0-56.5-23.5T160-160v-400q0-33 23.5-56.5T240-640h280v-80q0-83 58.5-141.5T720-920q83 0 141.5 58.5T920-720h-80q0-50-35-85t-85-35q-50 0-85 35t-35 85v80h120q33 0 56.5 23.5T800-560v400q0 33-23.5 56.5T720-80H240Z"})}),av=()=>O.jsx("svg",{width:"20",height:"20",viewBox:"0 -960 960 960",style:{fill:"currentColor"},"aria-hidden":"true",children:O.jsx("path",{d:"M680-80v-120H560v-80h120v-120h80v120h120v80H760v120h-80ZM200-200v-200h80v120h120v80H200Zm0-360v-200h200v80H280v120h-80Zm480 0v-120H560v-80h200v200h-80Z"})}),_h=()=>O.jsx("svg",{width:"20",height:"20",viewBox:"0 -960 960 960",style:{fill:"currentColor"},"aria-hidden":"true",children:O.jsx("path",{d:"M480-320 280-520l56-58 104 104v-326h80v326l104-104 56 58-200 200ZM240-160q-33 0-56.5-23.5T160-240v-120h80v120h480v-120h80v120q0 33-23.5 56.5T720-160H240Z"})}),lv=()=>O.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[O.jsx("polyline",{points:"23 4 23 10 17 10"}),O.jsx("path",{d:"M20.49 15a9 9 0 1 1-2.12-9.36L23 10"})]}),iv=()=>O.jsx("svg",{viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true",children:O.jsx("path",{d:"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z"})});function wc(u){if(!u||!u.naturalWidth||!u.naturalHeight)return null;const i=u.getBoundingClientRect(),f=u.naturalWidth/u.naturalHeight,s=i.width/i.height;if(f>s){const o=i.width/f;return{rect:i,renderW:i.width,renderH:o,offsetX:0,offsetY:(i.height-o)/2}}const r=i.height*f;return{rect:i,renderW:r,renderH:i.height,offsetX:(i.width-r)/2,offsetY:0}}function Nr(u,i,f,s,r){const o=(s-u.rect.left-u.offsetX)/u.renderW,h=(r-u.rect.top-u.offsetY)/u.renderH;return{x:Math.round(o*i),y:Math.round(h*f)}}const ln=Wn.forwardRef(function({children:i,title:f="",icon:s,disabled:r=!1,toggled:o=!1,onClick:h=()=>{},style:v,testId:m,className:y,ariaLabel:_,errorBadge:p},b){const T=Wn.useId();return O.jsxs("button",{ref:b,className:Ji(y,"toolbar-button",s,o&&"toggled"),onMouseDown:D1,onClick:h,onDoubleClick:D1,title:f,disabled:!!r,style:v,"data-testid":m,"aria-label":_||f,"aria-describedby":p?T:void 0,children:[s&&O.jsx("span",{className:`codicon codicon-${s}`,style:i?{marginRight:5}:{}}),i,p&&O.jsx("span",{id:T,className:"toolbar-button-error-badge",title:p,"aria-label":p})]})}),D1=u=>{u.stopPropagation(),u.preventDefault()},uv=({blob:u,blobUrl:i,onSave:f,onClose:s})=>{const r=mt.useCallback(async()=>{await f(u)},[f,u]);return O.jsx("div",{className:"modal-overlay",role:"dialog","aria-modal":"true","aria-label":"Recording preview",children:O.jsxs("div",{className:"modal",children:[O.jsxs("div",{className:"modal-toolbar",children:[O.jsx("div",{className:"modal-title",children:"Recording"}),O.jsx(ln,{title:"Save recording",onClick:r,children:O.jsx(_h,{})}),O.jsx(ln,{title:"Discard",icon:"close",onClick:s})]}),O.jsx("div",{className:"modal-body recording-body",children:O.jsx("video",{className:"recording-video",src:i,controls:!0,autoPlay:!0})})]})})};async function ph(u,i,f,s){if(!u.naturalWidth||!u.naturalHeight||!i||!f)return null;const r=document.createElement("canvas");r.width=u.naturalWidth,r.height=u.naturalHeight;const o=r.getContext("2d");if(!o)return null;o.drawImage(u,0,0,r.width,r.height);const h=r.width/i,v=r.height/f,m=Math.max(11,Math.round(14*v));o.font=`500 ${m}px -apple-system, system-ui, sans-serif`,o.textBaseline="middle";for(const y of s){const[_,p,b]=y.color.split(" ").map(Number),T=`rgb(${_}, ${p}, ${b})`,D=`rgba(${_}, ${p}, ${b}, 0.12)`,G=y.x*h,W=y.y*v,J=y.width*h,Z=y.height*v;if(o.fillStyle=D,o.fillRect(G,W,J,Z),o.lineWidth=Math.max(2,Math.round(2*v)),o.strokeStyle=T,o.strokeRect(G,W,J,Z),y.text){const $=Math.max(4,Math.round(6*v)),I=Math.max(2,Math.round(3*v)),it=o.measureText(y.text).width+$*2,X=m+I*2,et=G-o.lineWidth/2,ut=W-X;o.fillStyle=T,o.fillRect(et,ut,it,X),o.fillStyle="#fff",o.fillText(y.text,et+$,ut+X/2)}}return await new Promise(y=>r.toBlob(y,"image/png"))}async function bh(u,i){var _;const f=new Date().toISOString().replace(/[:.]/g,"-"),s=i??`annotations-${f}.png`,r=(((_=s.match(/\.[^./\\]+$/))==null?void 0:_[0])??".bin").toLowerCase(),o=u.type||{".png":"image/png",".zip":"application/zip"}[r]||"application/octet-stream",h={".png":"PNG image",".zip":"Zip archive"}[r]||"File",v=window.showSaveFilePicker;if(v){try{const b=await(await v({suggestedName:s,startIn:"downloads",types:[{description:h,accept:{[o]:[r]}}]})).createWritable();await b.write(u),await b.close()}catch(p){if((p==null?void 0:p.name)==="AbortError")return!1;throw p}return!0}const m=URL.createObjectURL(u),y=document.createElement("a");return y.href=m,y.download=s,document.body.appendChild(y),y.click(),document.body.removeChild(y),URL.revokeObjectURL(m),!0}const Sh=[{name:"blue",rgb:"54 116 209"},{name:"red",rgb:"229 62 62"},{name:"green",rgb:"56 161 105"},{name:"orange",rgb:"221 107 32"},{name:"purple",rgb:"128 90 213"},{name:"pink",rgb:"213 63 140"}],cv=Sh[0].rgb,sv=["nw","n","ne","e","se","s","sw","w"],z1=4;function fv(){return"ann-"+Math.random().toString(36).slice(2,10)}function N1(u){return{x:Math.min(u.startX,u.x),y:Math.min(u.startY,u.y),width:Math.abs(u.x-u.startX),height:Math.abs(u.y-u.startY)}}function rv(u,i,f,s){let r=u.x,o=u.y,h=u.x+u.width,v=u.y+u.height;switch(i){case"move":r+=f,o+=s,h+=f,v+=s;break;case"nw":r+=f,o+=s;break;case"n":o+=s;break;case"ne":h+=f,o+=s;break;case"e":h+=f;break;case"se":h+=f,v+=s;break;case"s":v+=s;break;case"sw":r+=f,v+=s;break;case"w":r+=f;break}return{x:Math.min(r,h),y:Math.min(o,v),width:Math.abs(h-r),height:Math.abs(v-o)}}function ov(u,i,f,s,r){const o=u.rect.left-i.left+u.offsetX,h=u.rect.top-i.top+u.offsetY;return{left:o+r.x/f*u.renderW,top:h+r.y/s*u.renderH,width:r.width/f*u.renderW,height:r.height/s*u.renderH}}const dv=({color:u,onChange:i})=>O.jsx("div",{className:"annotations-color-picker",role:"radiogroup","aria-label":"Annotation color",children:Sh.map(({name:f,rgb:s})=>O.jsx("button",{type:"button",role:"radio","aria-checked":u===s,title:`Use ${f}`,className:"annotations-color-swatch"+(u===s?" selected":""),style:{"--annotation-color":s},onClick:()=>i(s)},f))}),Eh=mt.forwardRef(({active:u,displayRef:i,screenRef:f,viewportWidth:s,viewportHeight:r,annotations:o,onAnnotationsChange:h,focusAnnotationId:v},m)=>{var k;const[y,_]=mt.useState(null),[p,b]=mt.useState(null),[T,D]=mt.useState(null),[G,W]=mt.useState(cv),[J,Z]=mt.useState(null),[,$]=mt.useState(0),I=mt.useCallback(()=>$(w=>w+1),[]),B=mt.useRef(null),it=mt.useRef(o),X=mt.useRef(v);mt.useLayoutEffect(()=>{it.current=o,X.current=v});const et=(p==null?void 0:p.id)??null,ut=p!=null&&p.editing?p.id:null;mt.useEffect(()=>{if(!u)return;const w=()=>I(),U=i.current,L=()=>I();return window.addEventListener("resize",w),U==null||U.addEventListener("load",L),()=>{window.removeEventListener("resize",w),U==null||U.removeEventListener("load",L)}},[u,i,I]),mt.useEffect(()=>{var w;if(u){const U=X.current;if(U){const L=it.current.find(P=>P.id===U);if(L){Z({...L}),b({id:U,editing:!0});return}}(w=B.current)==null||w.focus()}else b(null)},[u]),mt.useEffect(()=>{if(!T)return;const w=L=>{const P=wc(i.current);if(!P||!s||!r)return;const H=Nr(P,s,r,L.clientX,L.clientY),ht=H.x-T.startVx,Yt=H.y-T.startVy;ht===0&&Yt===0||h(it.current.map(Ft=>Ft.id===T.id?{...Ft,...rv(T.orig,T.kind,ht,Yt)}:Ft))},U=()=>D(null);return window.addEventListener("mousemove",w),window.addEventListener("mouseup",U),()=>{window.removeEventListener("mousemove",w),window.removeEventListener("mouseup",U)}},[T,i,s,r,h]);function st(w){if(!s||!r)return null;const U=wc(i.current);return U?Nr(U,s,r,w.clientX,w.clientY):null}function at(w,U){for(let L=o.length-1;L>=0;L--){const P=o[L];if(w>=P.x&&w<=P.x+P.width&&U>=P.y&&U<=P.y+P.height)return P}}function _t(w){var P;if(w.button!==0)return;(P=B.current)==null||P.focus();const U=st(w);if(!U)return;const L=at(U.x,U.y);if(w.preventDefault(),L){b({id:L.id,editing:!1}),D({kind:"move",id:L.id,orig:{x:L.x,y:L.y,width:L.width,height:L.height},startVx:U.x,startVy:U.y});return}_({startX:U.x,startY:U.y,x:U.x,y:U.y}),b(null)}function pt(w){if(T||!y)return;const U=st(w);U&&(y.x===U.x&&y.y===U.y||_({...y,x:U.x,y:U.y}))}function yt(w){if(!y)return;w.preventDefault();const U=N1(y);if(_(null),U.width<z1||U.height<z1)return;const L=fv();h([...o,{id:L,...U,text:"",color:G}]),b({id:L,editing:!0})}function ot(w,U,L){var H;L.preventDefault(),L.stopPropagation(),(H=B.current)==null||H.focus();const P=st(L);P&&(b({id:U.id,editing:!1}),D({kind:w,id:U.id,orig:{x:U.x,y:U.y,width:U.width,height:U.height},startVx:P.x,startVy:P.y}))}function N(w,U){et&&h(o.map(L=>L.id===et?{...L,x:L.x+w,y:L.y+U}:L))}function V(){var w;b(U=>U!=null&&U.editing?{...U,editing:!1}:U),(w=B.current)==null||w.focus()}function lt(w){if(w.key==="Escape"){w.preventDefault(),y?_(null):ut?V():et&&b(null);return}if((w.key==="Delete"||w.key==="Backspace")&&et&&!ut){w.preventDefault(),h(o.filter(U=>U.id!==et)),b(null);return}if(et&&!ut){const U=w.shiftKey?1:5;if(w.key==="ArrowLeft"){w.preventDefault(),N(-U,0);return}if(w.key==="ArrowRight"){w.preventDefault(),N(U,0);return}if(w.key==="ArrowUp"){w.preventDefault(),N(0,-U);return}if(w.key==="ArrowDown"){w.preventDefault(),N(0,U);return}}}if(mt.useEffect(()=>{ut||Z(null)},[ut]),mt.useImperativeHandle(m,()=>({clearSelection:()=>{_(null),b(null)}}),[]),!u)return null;const rt=wc(i.current),gt=((k=f.current)==null?void 0:k.getBoundingClientRect())??null,E=w=>rt&&gt&&s&&r?ov(rt,gt,s,r,w):null,R=ut?o.find(w=>w.id===ut):void 0;return O.jsxs("div",{ref:B,className:"annotations-layer",tabIndex:0,onMouseDown:_t,onMouseMove:pt,onMouseUp:yt,onKeyDown:lt,onContextMenu:w=>w.preventDefault(),children:[o.map(w=>{const U=E(w);if(!U)return null;const L=w.id===et,P=w.id===ut;return O.jsxs("div",{className:"annotations-rect"+(L?" selected":"")+(P?" editing":"")+(w.text?"":" empty"),style:{...U,"--annotation-color":w.color},onDoubleClick:H=>{H.preventDefault(),H.stopPropagation(),ut!==w.id&&Z({...w}),b({id:w.id,editing:!0})},children:[w.text&&O.jsx("div",{className:"annotations-label",onMouseDown:H=>{H.preventDefault(),H.stopPropagation(),ut!==w.id&&Z({...w}),b({id:w.id,editing:!0})},children:w.text}),L&&!P&&sv.map(H=>O.jsx("div",{className:"annotations-handle annotations-handle-"+H,onMouseDown:ht=>ot(H,w,ht)},H))]},w.id)}),y&&(()=>{const w=E(N1(y));return w?O.jsx("div",{className:"annotations-rect draft",style:{...w,"--annotation-color":G}}):null})(),R&&(()=>{const w=E(R);if(!w)return null;const U={left:w.left,top:w.top+w.height+6,"--annotation-color":R.color};return O.jsxs("div",{className:"annotations-popover",style:U,onMouseDown:L=>L.stopPropagation(),onClick:L=>L.stopPropagation(),children:[O.jsx("textarea",{className:"annotations-textarea",autoFocus:!0,onFocus:L=>{const P=L.target.value.length;L.target.setSelectionRange(P,P)},value:R.text,placeholder:"Task or comment…",onChange:L=>{const P=L.target.value;h(o.map(H=>H.id===R.id?{...H,text:P}:H))},onKeyDown:L=>{(L.key==="Enter"&&!L.shiftKey&&!L.ctrlKey&&!L.metaKey||L.key==="Escape")&&(L.preventDefault(),V()),L.stopPropagation()},onKeyUp:L=>L.stopPropagation()}),O.jsxs("div",{className:"annotations-popover-footer",children:[O.jsx(dv,{color:R.color,onChange:L=>{h(o.map(P=>P.id===R.id?{...P,color:L}:P)),W(L)}}),O.jsx("div",{className:"annotations-popover-actions",children:J?O.jsxs(O.Fragment,{children:[O.jsx("button",{className:"annotations-action-btn",onClick:()=>{var P;const L=J;h(o.map(H=>H.id===L.id?L:H)),b(null),(P=B.current)==null||P.focus()},children:"Cancel"}),O.jsx("button",{className:"annotations-action-btn",onClick:V,children:"Done"})]}):O.jsxs(O.Fragment,{children:[O.jsx("button",{className:"annotations-action-btn danger",onClick:()=>{var L;h(o.filter(P=>P.id!==R.id)),b(null),(L=B.current)==null||L.focus()},children:"Discard"}),O.jsx("button",{className:"annotations-action-btn",onClick:V,children:"Add"})]})})]})]})})()]})});Eh.displayName="Annotations";const hv=({model:u,session:i,onSubmit:f})=>{const[s,r]=mt.useState(!1),[o,h]=mt.useState(null);return O.jsxs("aside",{className:"annotate-sidebar","aria-label":"Annotation screenshots",children:[O.jsx("div",{className:"annotate-sidebar-header dashboard-shell-sidebar-header",children:O.jsx("h2",{className:"dashboard-shell-sidebar-title",children:"UI Review"})}),O.jsx("div",{className:"annotate-sidebar-list",children:i.frames.map(v=>{const m=v.id===i.selectedFrameId,y=v.annotations;return O.jsxs("div",{className:"annotate-sidebar-thumb"+(m?" selected":""),children:[O.jsx("button",{className:"annotate-sidebar-thumb-button",onClick:()=>u.selectAnnotateFrame(v.id),title:`${v.sessionTitle||"session"} Â· ${v.title||"tab"}
${v.url}`,"aria-pressed":m,children:O.jsxs("span",{className:"annotate-sidebar-thumb-img-wrap",style:{aspectRatio:`${v.viewportWidth} / ${v.viewportHeight}`},children:[O.jsx("img",{className:"annotate-sidebar-thumb-img",alt:"",src:"data:image/png;base64,"+v.data}),v.annotations.map(_=>O.jsx("span",{className:"annotate-sidebar-thumb-rect"+(_.id===o?" hovered":""),style:{left:`${_.x/v.viewportWidth*100}%`,top:`${_.y/v.viewportHeight*100}%`,width:`${_.width/v.viewportWidth*100}%`,height:`${_.height/v.viewportHeight*100}%`,"--annotation-color":_.color}},_.id))]})}),y.length>0&&O.jsx("ul",{className:"annotate-sidebar-comments",children:y.map(_=>O.jsx("li",{children:O.jsx("button",{className:"annotate-sidebar-comment"+(_.text?"":" empty"),style:{"--annotation-color":_.color},onClick:()=>u.selectAnnotateFrame(v.id,_.id),onMouseEnter:()=>h(_.id),onMouseLeave:()=>h(null),title:"Edit comment",children:_.text||"Empty comment"})},_.id))}),O.jsx(ln,{className:"annotate-sidebar-thumb-remove",icon:"close",title:"Remove screenshot",onClick:_=>{_.stopPropagation(),u.removeAnnotateFrame(v.id)}})]},v.id)})}),O.jsx("div",{className:"annotate-sidebar-feedback-wrap","data-value":i.feedback,children:O.jsx("textarea",{className:"annotate-sidebar-feedback",placeholder:"Feedback…",value:i.feedback,onChange:v=>u.updateFeedback(v.target.value)})}),O.jsx("button",{className:"annotate-sidebar-submit",disabled:s,onClick:async()=>{r(!0);try{await f()}finally{r(!1)}},children:s?"Submitting…":"Submit"})]})},mv=({model:u,frame:i,focusAnnotationId:f})=>{const s=mt.useRef(null),r=mt.useRef(null),o=mt.useRef(null),h=mt.useCallback(y=>{u.updateFrameAnnotations(i.id,y)},[u,i.id]),v=mt.useCallback(async()=>{const y=r.current;if(!y)return;const _=await ph(y,i.viewportWidth,i.viewportHeight,i.annotations);if(!_)return;const p=(i.title||i.url||"screenshot").replace(/[^a-z0-9]+/gi,"-").slice(0,40)||"screenshot",b=new Date().toISOString().replace(/[:.]/g,"-");await bh(_,`annotations-${b}-${p}.png`)},[i]),m=mt.useCallback(()=>{var y;u.updateFrameAnnotations(i.id,[]),(y=s.current)==null||y.clearSelection()},[u,i.id]);return O.jsx("div",{className:"annotate-overlay",role:"dialog","aria-label":`Annotate screenshot from ${i.title||i.url||"page"}`,children:O.jsxs("div",{className:"annotate-overlay-window",children:[O.jsxs("div",{className:"annotate-overlay-chrome",children:[O.jsxs("span",{className:"annotate-overlay-titlebar",children:[O.jsx("span",{className:"annotate-overlay-title-text",children:i.title||"untitled"}),O.jsx("span",{className:"annotate-overlay-title-sep",children:"·"}),O.jsx("span",{className:"annotate-overlay-title-url",children:i.url})]}),O.jsx(ln,{title:"Save screenshot",onClick:v,children:O.jsx(_h,{})}),O.jsx(ln,{title:"Clear annotations",icon:"circle-slash",disabled:i.annotations.length===0,onClick:m}),O.jsx(ln,{title:"Done annotating",icon:"check",onClick:()=>u.deselectFrame()})]}),O.jsxs("div",{ref:o,className:"annotate-overlay-canvas",children:[O.jsx("img",{ref:r,className:"annotate-modal-image",alt:"annotation",src:"data:image/png;base64,"+i.data}),O.jsx(Eh,{ref:s,active:!0,displayRef:r,screenRef:o,viewportWidth:i.viewportWidth,viewportHeight:i.viewportHeight,annotations:i.annotations,onAnnotationsChange:h,focusAnnotationId:f})]})]})})},yv=["left","middle","right"];async function gv(u,i,f,s){try{return await(await window.showSaveFilePicker({suggestedName:u,types:[{description:i,accept:{[f]:[s]}}]})).createWritable()}catch{return null}}function vv(u){const i=u.trim();if(!i||/^[a-z][a-z0-9+.-]*:\/\//i.test(i)||i.startsWith("about:")||i.startsWith("data:"))return i;const f=i.split(/[/?#]/,1)[0],s=f.includes("."),r=/^localhost(:\d+)?$/i.test(f),o=/:\d+$/.test(f),h=/^\d{1,3}(\.\d{1,3}){3}(:\d+)?$/.test(f);return r||h||o&&!s?"http://"+i:s||o?"https://"+i:"https://"+f+".com"+i.slice(f.length)}const _v=({model:u})=>{const[,i]=mt.useState(0);mt.useEffect(()=>u.subscribe(()=>i(H=>H+1)),[u]);const{tabs:f,mode:s,recording:r,liveFrame:o,annotateSession:h,pendingCapture:v}=u.state,m=s==="interactive",y=!!h,_=(h==null?void 0:h.frames.find(H=>H.id===h.selectedFrameId))??null,[p,b]=mt.useState(0),T=mt.useRef(null),D=mt.useRef(null),G=mt.useRef(null),W=mt.useRef(null),J=mt.useRef(null),Z=mt.useRef(null),$=mt.useRef(0),I=o&&o.viewportWidth&&o.viewportHeight?o.viewportWidth/o.viewportHeight:null,[B]=yh(W),it=(r==null?void 0:r.phase)!=="recording",X=mt.useMemo(()=>{var Gt;const ht=it?((Gt=J.current)==null?void 0:Gt.offsetHeight)??40:0,Yt=B.width-24,Ft=B.height-24;if(Yt<=0||Ft<=0)return;if(I===null)return{width:Yt,height:Ft};const ae=Ft-ht;let oe=Yt,Jt=oe/I;return Jt>ae&&(Jt=ae,oe=Jt*I),{width:oe,height:Jt+ht}},[B,I,it]);mt.useEffect(()=>{if(p===0)return;const H=Z.current;if(!H)return;H.classList.remove("flash"),H.offsetWidth,H.classList.add("flash");const ht=setTimeout(()=>H.classList.remove("flash"),2e3);return()=>{clearTimeout(ht),H.classList.remove("flash")}},[p]),mt.useEffect(()=>{var H;m&&((H=Z.current)==null||H.classList.remove("flash"))},[m]);function et(){b(H=>H+1)}const ut=mt.useCallback(async H=>{const ht=await gv(`playwright-recording-${Date.now()}.webm`,"WebM Video","video/webm",".webm");ht&&(await ht.write(H),await ht.close(),u.discardRecording())},[u]),st=f==null?void 0:f.find(H=>H.selected),at=!!st,[_t,pt]=mt.useState((st==null?void 0:st.url)??"");mt.useEffect(()=>{pt((st==null?void 0:st.url)??"")},[st==null?void 0:st.url]);function yt(H){const ht=(o==null?void 0:o.viewportWidth)??0,Yt=(o==null?void 0:o.viewportHeight)??0;if(!ht||!Yt)return{x:0,y:0};const Ft=wc(T.current);return Ft?Nr(Ft,ht,Yt,H.clientX,H.clientY):{x:0,y:0}}function ot(H,ht){const{x:Yt,y:Ft}=yt(ht);u[H](Yt,Ft,yv[ht.button]||"left")}function N(H){var ht;if(H.preventDefault(),(ht=D.current)==null||ht.focus(),!!at){if(!m){et();return}ot("mousedown",H)}}function V(H){m&&(H.preventDefault(),ot("mouseup",H))}function lt(H){if(!m)return;const ht=Date.now();if(ht-$.current<32)return;$.current=ht;const{x:Yt,y:Ft}=yt(H);u.mousemove(Yt,Ft)}function rt(H){m&&(H.preventDefault(),u.wheel(H.deltaX,H.deltaY))}function gt(H){m&&(H.preventDefault(),u.keydown(H.key))}function E(H){m&&(H.preventDefault(),u.keyup(H.key))}function R(H){if(H.key==="Enter"){const ht=vv(H.target.value);u.navigate(ht),H.currentTarget.blur()}}const k=st?void 0:"Select a session",w=(r==null?void 0:r.phase)==="recording",U=(r==null?void 0:r.phase)==="stopped",L=y?"Dashboard: annotate":w?"Dashboard: record":"Dashboard",P=!!_;return O.jsxs("main",{className:"dashboard-view"+(m?" interactive":"")+(y?" has-annotate-sidebar":""),"aria-label":L,children:[O.jsxs("div",{className:"dashboard-main",children:[O.jsxs("div",{ref:G,className:"toolbar",hidden:P,children:[O.jsx(ln,{ref:Z,className:"mode-toggle mode-interactive",title:m?"Disable interactive mode":"Enable interactive mode",toggled:m,disabled:!at,onClick:()=>{m?u.toggleInteractive():u.enterInteractive()},children:m?O.jsx(nv,{}):O.jsx(ev,{})}),O.jsx(ln,{className:"mode-annotate",title:y?"Add screenshot":"Take screenshot",disabled:!at||v,onClick:()=>{y?u.addAnnotateFrame():u.enterAnnotate("user")},children:O.jsx(av,{})}),O.jsx(ln,{className:"mode-toggle mode-record",title:w?"Stop recording":"Record video",icon:"record",toggled:w,disabled:!at||U,onClick:()=>{w?u.stopRecording():u.startRecording()},children:w&&O.jsx("span",{className:"mode-record-label",children:"Recording..."})})]}),O.jsx("div",{className:"viewport-wrapper",children:O.jsx("div",{ref:W,className:"viewport-main",children:O.jsxs("div",{className:"browser-window",style:X,children:[it&&O.jsxs("div",{ref:J,className:"browser-chrome",children:[O.jsx("button",{className:"nav-btn",title:"Back","aria-disabled":!m||void 0,onClick:()=>{if(!m){et();return}u.back()},children:O.jsx(Pg,{})}),O.jsx("button",{className:"nav-btn",title:"Forward","aria-disabled":!m||void 0,onClick:()=>{if(!m){et();return}u.forward()},children:O.jsx(tv,{})}),O.jsx("button",{className:"nav-btn",title:"Reload","aria-disabled":!m||void 0,onClick:()=>{if(!m){et();return}u.reload()},children:O.jsx(lv,{})}),O.jsx("div",{className:"omnibox-wrap",children:O.jsx("input",{id:"omnibox",className:"omnibox",type:"text",placeholder:"Search or enter URL",spellCheck:!1,autoComplete:"off",value:_t,onChange:H=>pt(H.target.value),onKeyDown:H=>{m&&R(H)},onFocus:H=>{if(!m){et(),H.target.blur();return}H.target.select()},"aria-disabled":!m||void 0,"aria-label":m?"Search or enter URL":"URL input - enable interactive mode to use this field",readOnly:!m})})]}),O.jsx("div",{ref:D,className:"screen",tabIndex:0,style:{display:o?"":"none"},onMouseDown:N,onMouseUp:V,onMouseMove:lt,onWheel:rt,onKeyDown:gt,onKeyUp:E,onContextMenu:H=>H.preventDefault(),children:O.jsx("img",{ref:T,id:"display",className:"display",alt:"screencast",src:o?"data:image/jpeg;base64,"+o.data:void 0})}),k&&O.jsx("div",{className:"screen-overlay"+(o?" has-frame":""),children:O.jsx("span",{children:k})})]})})})]}),_&&O.jsx(mv,{model:u,frame:_,focusAnnotationId:h==null?void 0:h.focusAnnotationId},_.id+((h==null?void 0:h.focusAnnotationId)??"")),h&&O.jsx(hv,{model:u,session:h,onSubmit:()=>u.submitAnnotateSession()}),U&&(r==null?void 0:r.phase)==="stopped"&&O.jsx(uv,{blob:r.blob,blobUrl:r.blobUrl,onSave:ut,onClose:()=>u.discardRecording()})]})},Pi=15,Mr=30,Ur=19,pv=29,Cc=256,Ir=Cc+1+pv,M1=2*Ir+1,Vi=256,bv=7,U1=16,C1=17,L1=18,vr=16,Lc=-1,Sv=1,pc=2,Ev=0,Ql=0,H1=1,Tv=3,ke=4,An=0,Th=1,bc=2,xn=-2,Av=-3,Xl=-5;function Zc(u){return Xc(u.map(([i,f])=>new Array(i).fill(f,0,i)))}function Xc(u){return u.reduce((i,f)=>i.concat(Array.isArray(f)?Xc(f):f),[])}const j1=[0,1,2,3].concat(...Zc([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function $t(){const u=this;function i(r){const o=u.dyn_tree,h=u.stat_desc.static_tree,v=u.stat_desc.extra_bits,m=u.stat_desc.extra_base,y=u.stat_desc.max_length;let _,p,b,T,D,G,W=0;for(T=0;T<=Pi;T++)r.bl_count[T]=0;for(o[r.heap[r.heap_max]*2+1]=0,_=r.heap_max+1;_<M1;_++)p=r.heap[_],T=o[o[p*2+1]*2+1]+1,T>y&&(T=y,W++),o[p*2+1]=T,!(p>u.max_code)&&(r.bl_count[T]++,D=0,p>=m&&(D=v[p-m]),G=o[p*2],r.opt_len+=G*(T+D),h&&(r.static_len+=G*(h[p*2+1]+D)));if(W!==0){do{for(T=y-1;r.bl_count[T]===0;)T--;r.bl_count[T]--,r.bl_count[T+1]+=2,r.bl_count[y]--,W-=2}while(W>0);for(T=y;T!==0;T--)for(p=r.bl_count[T];p!==0;)b=r.heap[--_],!(b>u.max_code)&&(o[b*2+1]!=T&&(r.opt_len+=(T-o[b*2+1])*o[b*2],o[b*2+1]=T),p--)}}function f(r,o){let h=0;do h|=r&1,r>>>=1,h<<=1;while(--o>0);return h>>>1}function s(r,o,h){const v=[];let m=0,y,_,p;for(y=1;y<=Pi;y++)v[y]=m=m+h[y-1]<<1;for(_=0;_<=o;_++)p=r[_*2+1],p!==0&&(r[_*2]=f(v[p]++,p))}u.build_tree=function(r){const o=u.dyn_tree,h=u.stat_desc.static_tree,v=u.stat_desc.elems;let m,y,_=-1,p;for(r.heap_len=0,r.heap_max=M1,m=0;m<v;m++)o[m*2]!==0?(r.heap[++r.heap_len]=_=m,r.depth[m]=0):o[m*2+1]=0;for(;r.heap_len<2;)p=r.heap[++r.heap_len]=_<2?++_:0,o[p*2]=1,r.depth[p]=0,r.opt_len--,h&&(r.static_len-=h[p*2+1]);for(u.max_code=_,m=Math.floor(r.heap_len/2);m>=1;m--)r.pqdownheap(o,m);p=v;do m=r.heap[1],r.heap[1]=r.heap[r.heap_len--],r.pqdownheap(o,1),y=r.heap[1],r.heap[--r.heap_max]=m,r.heap[--r.heap_max]=y,o[p*2]=o[m*2]+o[y*2],r.depth[p]=Math.max(r.depth[m],r.depth[y])+1,o[m*2+1]=o[y*2+1]=p,r.heap[1]=p++,r.pqdownheap(o,1);while(r.heap_len>=2);r.heap[--r.heap_max]=r.heap[1],i(r),s(o,u.max_code,r.bl_count)}}$t._length_code=[0,1,2,3,4,5,6,7].concat(...Zc([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]]));$t.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0];$t.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576];$t.d_code=function(u){return u<256?j1[u]:j1[256+(u>>>7)]};$t.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0];$t.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];$t.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];$t.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function Me(u,i,f,s,r){const o=this;o.static_tree=u,o.extra_bits=i,o.extra_base=f,o.elems=s,o.max_length=r}const xv=[12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227],wv=Zc([[144,8],[112,9],[24,7],[8,8]]);Me.static_ltree=Xc(xv.map((u,i)=>[u,wv[i]]));const Ov=[0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23],Rv=Zc([[30,5]]);Me.static_dtree=Xc(Ov.map((u,i)=>[u,Rv[i]]));Me.static_l_desc=new Me(Me.static_ltree,$t.extra_lbits,Cc+1,Ir,Pi);Me.static_d_desc=new Me(Me.static_dtree,$t.extra_dbits,0,Mr,Pi);Me.static_bl_desc=new Me(null,$t.extra_blbits,0,Ur,bv);const Dv=9,zv=8;function Nn(u,i,f,s,r){const o=this;o.good_length=u,o.max_lazy=i,o.nice_length=f,o.max_chain=s,o.func=r}const Ah=0,Oc=1,$a=2,Tn=[new Nn(0,0,0,0,Ah),new Nn(4,4,8,4,Oc),new Nn(4,5,16,8,Oc),new Nn(4,6,32,32,Oc),new Nn(4,4,16,16,$a),new Nn(8,16,32,32,$a),new Nn(8,16,128,128,$a),new Nn(8,32,128,256,$a),new Nn(32,128,258,1024,$a),new Nn(32,258,258,4096,$a)],Sc=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],gn=0,Ec=1,Qi=2,Tc=3,Nv=32,_r=42,Ac=113,Fi=666,pr=8,Mv=0,br=1,Uv=2,ee=3,Rc=258,an=Rc+ee+1;function B1(u,i,f,s){const r=u[i*2],o=u[f*2];return r<o||r==o&&s[i]<=s[f]}function Cv(){const u=this;let i,f,s,r,o,h,v,m,y,_,p,b,T,D,G,W,J,Z,$,I,B,it,X,et,ut,st,at,_t,pt,yt,ot,N,V;const lt=new $t,rt=new $t,gt=new $t;u.depth=[];let E,R,k,w,U,L;u.bl_count=[],u.heap=[],ot=[],N=[],V=[];function P(){y=2*o,p[T-1]=0;for(let Y=0;Y<T-1;Y++)p[Y]=0;st=Tn[at].max_lazy,pt=Tn[at].good_length,yt=Tn[at].nice_length,ut=Tn[at].max_chain,B=0,J=0,X=0,Z=et=ee-1,I=0,b=0}function H(){let Y;for(Y=0;Y<Ir;Y++)ot[Y*2]=0;for(Y=0;Y<Mr;Y++)N[Y*2]=0;for(Y=0;Y<Ur;Y++)V[Y*2]=0;ot[Vi*2]=1,u.opt_len=u.static_len=0,R=k=0}function ht(){lt.dyn_tree=ot,lt.stat_desc=Me.static_l_desc,rt.dyn_tree=N,rt.stat_desc=Me.static_d_desc,gt.dyn_tree=V,gt.stat_desc=Me.static_bl_desc,U=0,L=0,w=8,H()}u.pqdownheap=function(Y,tt){const F=u.heap,nt=F[tt];let ct=tt<<1;for(;ct<=u.heap_len&&(ct<u.heap_len&&B1(Y,F[ct+1],F[ct],u.depth)&&ct++,!B1(Y,nt,F[ct],u.depth));)F[tt]=F[ct],tt=ct,ct<<=1;F[tt]=nt};function Yt(Y,tt){let F=-1,nt,ct=Y[1],St=0,wt=7,de=4;ct===0&&(wt=138,de=3),Y[(tt+1)*2+1]=65535;for(let Le=0;Le<=tt;Le++)nt=ct,ct=Y[(Le+1)*2+1],!(++St<wt&&nt==ct)&&(St<de?V[nt*2]+=St:nt!==0?(nt!=F&&V[nt*2]++,V[U1*2]++):St<=10?V[C1*2]++:V[L1*2]++,St=0,F=nt,ct===0?(wt=138,de=3):nt==ct?(wt=6,de=3):(wt=7,de=4))}function Ft(){let Y;for(Yt(ot,lt.max_code),Yt(N,rt.max_code),gt.build_tree(u),Y=Ur-1;Y>=3&&V[$t.bl_order[Y]*2+1]===0;Y--);return u.opt_len+=3*(Y+1)+5+5+4,Y}function ae(Y){u.pending_buf[u.pending++]=Y}function oe(Y){ae(Y&255),ae(Y>>>8&255)}function Jt(Y){ae(Y>>8&255),ae(Y&255&255)}function Gt(Y,tt){let F;const nt=tt;L>vr-nt?(F=Y,U|=F<<L&65535,oe(U),U=F>>>vr-L,L+=nt-vr):(U|=Y<<L&65535,L+=nt)}function kt(Y,tt){const F=Y*2;Gt(tt[F]&65535,tt[F+1]&65535)}function je(Y,tt){let F,nt=-1,ct,St=Y[1],wt=0,de=7,Le=4;for(St===0&&(de=138,Le=3),F=0;F<=tt;F++)if(ct=St,St=Y[(F+1)*2+1],!(++wt<de&&ct==St)){if(wt<Le)do kt(ct,V);while(--wt!==0);else ct!==0?(ct!=nt&&(kt(ct,V),wt--),kt(U1,V),Gt(wt-3,2)):wt<=10?(kt(C1,V),Gt(wt-3,3)):(kt(L1,V),Gt(wt-11,7));wt=0,nt=ct,St===0?(de=138,Le=3):ct==St?(de=6,Le=3):(de=7,Le=4)}}function Be(Y,tt,F){let nt;for(Gt(Y-257,5),Gt(tt-1,5),Gt(F-4,4),nt=0;nt<F;nt++)Gt(V[$t.bl_order[nt]*2+1],3);je(ot,Y-1),je(N,tt-1)}function qe(){L==16?(oe(U),U=0,L=0):L>=8&&(ae(U&255),U>>>=8,L-=8)}function Ce(){Gt(br<<1,3),kt(Vi,Me.static_ltree),qe(),1+w+10-L<9&&(Gt(br<<1,3),kt(Vi,Me.static_ltree),qe()),w=7}function Ae(Y,tt){let F,nt,ct;if(u.dist_buf[R]=Y,u.lc_buf[R]=tt&255,R++,Y===0?ot[tt*2]++:(k++,Y--,ot[($t._length_code[tt]+Cc+1)*2]++,N[$t.d_code(Y)*2]++),(R&8191)===0&&at>2){for(F=R*8,nt=B-J,ct=0;ct<Mr;ct++)F+=N[ct*2]*(5+$t.extra_dbits[ct]);if(F>>>=3,k<Math.floor(R/2)&&F<Math.floor(nt/2))return!0}return R==E-1}function wn(Y,tt){let F,nt,ct=0,St,wt;if(R!==0)do F=u.dist_buf[ct],nt=u.lc_buf[ct],ct++,F===0?kt(nt,Y):(St=$t._length_code[nt],kt(St+Cc+1,Y),wt=$t.extra_lbits[St],wt!==0&&(nt-=$t.base_length[St],Gt(nt,wt)),F--,St=$t.d_code(F),kt(St,tt),wt=$t.extra_dbits[St],wt!==0&&(F-=$t.base_dist[St],Gt(F,wt)));while(ct<R);kt(Vi,Y),w=Y[Vi*2+1]}function nl(){L>8?oe(U):L>0&&ae(U&255),U=0,L=0}function xe(Y,tt,F){nl(),w=8,oe(tt),oe(~tt),u.pending_buf.set(m.subarray(Y,Y+tt),u.pending),u.pending+=tt}function al(Y,tt,F){Gt((Mv<<1)+(F?1:0),3),xe(Y,tt)}function ll(Y,tt,F){let nt,ct,St=0;at>0?(lt.build_tree(u),rt.build_tree(u),St=Ft(),nt=u.opt_len+3+7>>>3,ct=u.static_len+3+7>>>3,ct<=nt&&(nt=ct)):nt=ct=tt+5,tt+4<=nt&&Y!=-1?al(Y,tt,F):ct==nt?(Gt((br<<1)+(F?1:0),3),wn(Me.static_ltree,Me.static_dtree)):(Gt((Uv<<1)+(F?1:0),3),Be(lt.max_code+1,rt.max_code+1,St+1),wn(ot,N)),H(),F&&nl()}function _e(Y){ll(J>=0?J:-1,B-J,Y),J=B,i.flush_pending()}function ea(){let Y,tt,F,nt;do{if(nt=y-X-B,nt===0&&B===0&&X===0)nt=o;else if(nt==-1)nt--;else if(B>=o+o-an){m.set(m.subarray(o,o+o),0),it-=o,B-=o,J-=o,Y=T,F=Y;do tt=p[--F]&65535,p[F]=tt>=o?tt-o:0;while(--Y!==0);Y=o,F=Y;do tt=_[--F]&65535,_[F]=tt>=o?tt-o:0;while(--Y!==0);nt+=o}if(i.avail_in===0)return;Y=i.read_buf(m,B+X,nt),X+=Y,X>=ee&&(b=m[B]&255,b=(b<<W^m[B+1]&255)&G)}while(X<an&&i.avail_in!==0)}function Jc(Y){let tt=65535,F;for(tt>s-5&&(tt=s-5);;){if(X<=1){if(ea(),X===0&&Y==Ql)return gn;if(X===0)break}if(B+=X,X=0,F=J+tt,(B===0||B>=F)&&(X=B-F,B=F,_e(!1),i.avail_out===0)||B-J>=o-an&&(_e(!1),i.avail_out===0))return gn}return _e(Y==ke),i.avail_out===0?Y==ke?Qi:gn:Y==ke?Tc:Ec}function Wl(Y){let tt=ut,F=B,nt,ct,St=et;const wt=B>o-an?B-(o-an):0;let de=yt;const Le=v,pn=B+Rc;let Ca=m[F+St-1],na=m[F+St];et>=pt&&(tt>>=2),de>X&&(de=X);do if(nt=Y,!(m[nt+St]!=na||m[nt+St-1]!=Ca||m[nt]!=m[F]||m[++nt]!=m[F+1])){F+=2,nt++;do;while(m[++F]==m[++nt]&&m[++F]==m[++nt]&&m[++F]==m[++nt]&&m[++F]==m[++nt]&&m[++F]==m[++nt]&&m[++F]==m[++nt]&&m[++F]==m[++nt]&&m[++F]==m[++nt]&&F<pn);if(ct=Rc-(pn-F),F=pn-Rc,ct>St){if(it=Y,St=ct,ct>=de)break;Ca=m[F+St-1],na=m[F+St]}}while((Y=_[Y&Le]&65535)>wt&&--tt!==0);return St<=X?St:X}function kc(Y){let tt=0,F;for(;;){if(X<an){if(ea(),X<an&&Y==Ql)return gn;if(X===0)break}if(X>=ee&&(b=(b<<W^m[B+(ee-1)]&255)&G,tt=p[b]&65535,_[B&v]=p[b],p[b]=B),tt!==0&&(B-tt&65535)<=o-an&&_t!=pc&&(Z=Wl(tt)),Z>=ee)if(F=Ae(B-it,Z-ee),X-=Z,Z<=st&&X>=ee){Z--;do B++,b=(b<<W^m[B+(ee-1)]&255)&G,tt=p[b]&65535,_[B&v]=p[b],p[b]=B;while(--Z!==0);B++}else B+=Z,Z=0,b=m[B]&255,b=(b<<W^m[B+1]&255)&G;else F=Ae(0,m[B]&255),X--,B++;if(F&&(_e(!1),i.avail_out===0))return gn}return _e(Y==ke),i.avail_out===0?Y==ke?Qi:gn:Y==ke?Tc:Ec}function Ic(Y){let tt=0,F,nt;for(;;){if(X<an){if(ea(),X<an&&Y==Ql)return gn;if(X===0)break}if(X>=ee&&(b=(b<<W^m[B+(ee-1)]&255)&G,tt=p[b]&65535,_[B&v]=p[b],p[b]=B),et=Z,$=it,Z=ee-1,tt!==0&&et<st&&(B-tt&65535)<=o-an&&(_t!=pc&&(Z=Wl(tt)),Z<=5&&(_t==Sv||Z==ee&&B-it>4096)&&(Z=ee-1)),et>=ee&&Z<=et){nt=B+X-ee,F=Ae(B-1-$,et-ee),X-=et-1,et-=2;do++B<=nt&&(b=(b<<W^m[B+(ee-1)]&255)&G,tt=p[b]&65535,_[B&v]=p[b],p[b]=B);while(--et!==0);if(I=0,Z=ee-1,B++,F&&(_e(!1),i.avail_out===0))return gn}else if(I!==0){if(F=Ae(0,m[B-1]&255),F&&_e(!1),B++,X--,i.avail_out===0)return gn}else I=1,B++,X--}return I!==0&&(F=Ae(0,m[B-1]&255),I=0),_e(Y==ke),i.avail_out===0?Y==ke?Qi:gn:Y==ke?Tc:Ec}function Ua(Y){return Y.total_in=Y.total_out=0,Y.msg=null,u.pending=0,u.pending_out=0,f=Ac,r=Ql,ht(),P(),An}u.deflateInit=function(Y,tt,F,nt,ct,St){return nt||(nt=pr),ct||(ct=zv),St||(St=Ev),Y.msg=null,tt==Lc&&(tt=6),ct<1||ct>Dv||nt!=pr||F<9||F>15||tt<0||tt>9||St<0||St>pc?xn:(Y.dstate=u,h=F,o=1<<h,v=o-1,D=ct+7,T=1<<D,G=T-1,W=Math.floor((D+ee-1)/ee),m=new Uint8Array(o*2),_=[],p=[],E=1<<ct+6,u.pending_buf=new Uint8Array(E*4),s=E*4,u.dist_buf=new Uint16Array(E),u.lc_buf=new Uint8Array(E),at=tt,_t=St,Ua(Y))},u.deflateEnd=function(){return f!=_r&&f!=Ac&&f!=Fi?xn:(u.lc_buf=null,u.dist_buf=null,u.pending_buf=null,p=null,_=null,m=null,u.dstate=null,f==Ac?Av:An)},u.deflateParams=function(Y,tt,F){let nt=An;return tt==Lc&&(tt=6),tt<0||tt>9||F<0||F>pc?xn:(Tn[at].func!=Tn[tt].func&&Y.total_in!==0&&(nt=Y.deflate(H1)),at!=tt&&(at=tt,st=Tn[at].max_lazy,pt=Tn[at].good_length,yt=Tn[at].nice_length,ut=Tn[at].max_chain),_t=F,nt)},u.deflateSetDictionary=function(Y,tt,F){let nt=F,ct,St=0;if(!tt||f!=_r)return xn;if(nt<ee)return An;for(nt>o-an&&(nt=o-an,St=F-nt),m.set(tt.subarray(St,St+nt),0),B=nt,J=nt,b=m[0]&255,b=(b<<W^m[1]&255)&G,ct=0;ct<=nt-ee;ct++)b=(b<<W^m[ct+(ee-1)]&255)&G,_[ct&v]=p[b],p[b]=ct;return An},u.deflate=function(Y,tt){let F,nt,ct,St,wt;if(tt>ke||tt<0)return xn;if(!Y.next_out||!Y.next_in&&Y.avail_in!==0||f==Fi&&tt!=ke)return Y.msg=Sc[bc-xn],xn;if(Y.avail_out===0)return Y.msg=Sc[bc-Xl],Xl;if(i=Y,St=r,r=tt,f==_r&&(nt=pr+(h-8<<4)<<8,ct=(at-1&255)>>1,ct>3&&(ct=3),nt|=ct<<6,B!==0&&(nt|=Nv),nt+=31-nt%31,f=Ac,Jt(nt)),u.pending!==0){if(i.flush_pending(),i.avail_out===0)return r=-1,An}else if(i.avail_in===0&&tt<=St&&tt!=ke)return i.msg=Sc[bc-Xl],Xl;if(f==Fi&&i.avail_in!==0)return Y.msg=Sc[bc-Xl],Xl;if(i.avail_in!==0||X!==0||tt!=Ql&&f!=Fi){switch(wt=-1,Tn[at].func){case Ah:wt=Jc(tt);break;case Oc:wt=kc(tt);break;case $a:wt=Ic(tt);break}if((wt==Qi||wt==Tc)&&(f=Fi),wt==gn||wt==Qi)return i.avail_out===0&&(r=-1),An;if(wt==Ec){if(tt==H1)Ce();else if(al(0,0,!1),tt==Tv)for(F=0;F<T;F++)p[F]=0;if(i.flush_pending(),i.avail_out===0)return r=-1,An}}return tt!=ke?An:Th}}function xh(){const u=this;u.next_in_index=0,u.next_out_index=0,u.avail_in=0,u.total_in=0,u.avail_out=0,u.total_out=0}xh.prototype={deflateInit(u,i){const f=this;return f.dstate=new Cv,i||(i=Pi),f.dstate.deflateInit(f,u,i)},deflate(u){const i=this;return i.dstate?i.dstate.deflate(i,u):xn},deflateEnd(){const u=this;if(!u.dstate)return xn;const i=u.dstate.deflateEnd();return u.dstate=null,i},deflateParams(u,i){const f=this;return f.dstate?f.dstate.deflateParams(f,u,i):xn},deflateSetDictionary(u,i){const f=this;return f.dstate?f.dstate.deflateSetDictionary(f,u,i):xn},read_buf(u,i,f){const s=this;let r=s.avail_in;return r>f&&(r=f),r===0?0:(s.avail_in-=r,u.set(s.next_in.subarray(s.next_in_index,s.next_in_index+r),i),s.next_in_index+=r,s.total_in+=r,r)},flush_pending(){const u=this;let i=u.dstate.pending;i>u.avail_out&&(i=u.avail_out),i!==0&&(u.next_out.set(u.dstate.pending_buf.subarray(u.dstate.pending_out,u.dstate.pending_out+i),u.next_out_index),u.next_out_index+=i,u.dstate.pending_out+=i,u.total_out+=i,u.avail_out-=i,u.dstate.pending-=i,u.dstate.pending===0&&(u.dstate.pending_out=0))}};function Lv(u){const i=this,f=new xh,s=Hv(u&&u.chunkSize?u.chunkSize:64*1024),r=Ql,o=new Uint8Array(s);let h=u?u.level:Lc;typeof h>"u"&&(h=Lc),f.deflateInit(h),f.next_out=o,i.append=function(v,m){let y,_,p=0,b=0,T=0;const D=[];if(v.length){f.next_in_index=0,f.next_in=v,f.avail_in=v.length;do{if(f.next_out_index=0,f.avail_out=s,y=f.deflate(r),y!=An)throw new Error("deflating: "+f.msg);f.next_out_index&&(f.next_out_index==s?D.push(new Uint8Array(o)):D.push(o.subarray(0,f.next_out_index))),T+=f.next_out_index,m&&f.next_in_index>0&&f.next_in_index!=p&&(m(f.next_in_index),p=f.next_in_index)}while(f.avail_in>0||f.avail_out===0);return D.length>1?(_=new Uint8Array(T),D.forEach(function(G){_.set(G,b),b+=G.length})):_=D[0]?new Uint8Array(D[0]):new Uint8Array,_}},i.flush=function(){let v,m,y=0,_=0;const p=[];do{if(f.next_out_index=0,f.avail_out=s,v=f.deflate(ke),v!=Th&&v!=An)throw new Error("deflating: "+f.msg);s-f.avail_out>0&&p.push(o.slice(0,f.next_out_index)),_+=f.next_out_index}while(f.avail_in>0||f.avail_out===0);return f.deflateEnd(),m=new Uint8Array(_),p.forEach(function(b){m.set(b,y),y+=b.length}),m}}function Hv(u){return u+5*(Math.floor(u/16383)+1)}const ce=4294967295,le=65535,Wr=8,jv=9,wh=0,Oh=99,Rh=67324752,$r=134695760,Dh=$r,Cr=33639248,zh=101010256,Lr=101075792,Nh=117853008,vn=22,ki=20,Ii=56,Bv=vn+ki+Ii,Mh=12,Uh=20,Hc=4,Ch=1,Lh=39169,Hh=10,jh=1,Pr=21589,Yv=28789,Gv=25461,Bh=6534,Hr=1,qv=6,Zv=2,Xv=4,Vv=6,jr=8,Br=2048,Yr=16,Qv=61440,Yh=16384,Gr=73,Sr=420,Fv=20,Y1=45,G1=51,Wi="/",tl=30,to=10,kl=14,Il=18,q1=new Date(2107,11,31),Z1=new Date(1980,0,1),At=void 0,Na="undefined",au="function";class X1{constructor(i){return class extends TransformStream{constructor(f,s){const r=new i(s);super({transform(o,h){h.enqueue(r.append(o))},flush(o){const h=r.flush();h&&o.enqueue(h)}})}}}}const Kv=64;let Gh=2;try{typeof navigator!=Na&&navigator.hardwareConcurrency&&(Gh=navigator.hardwareConcurrency)}catch{}const Jv={chunkSize:512*1024,maxWorkers:Gh,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:At,CompressionStreamNative:typeof CompressionStream!=Na&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=Na&&DecompressionStream},Da=Object.assign({},Jv);function eo(){return Da}function qh(u){return Math.max(u.chunkSize,Kv)}function Zh(u){const{baseURL:i,chunkSize:f,maxWorkers:s,terminateWorkerTimeout:r,useCompressionStream:o,useWebWorkers:h,Deflate:v,Inflate:m,CompressionStream:y,DecompressionStream:_,workerScripts:p}=u;if(Oa("baseURL",i),Oa("chunkSize",f),Oa("maxWorkers",s),Oa("terminateWorkerTimeout",r),Oa("useCompressionStream",o),Oa("useWebWorkers",h),v&&(Da.CompressionStream=new X1(v)),m&&(Da.DecompressionStream=new X1(m)),Oa("CompressionStream",y),Oa("DecompressionStream",_),p!==At){const{deflate:b,inflate:T}=p;if((b||T)&&(Da.workerScripts||(Da.workerScripts={})),b){if(!Array.isArray(b))throw new Error("workerScripts.deflate must be an array");Da.workerScripts.deflate=b}if(T){if(!Array.isArray(T))throw new Error("workerScripts.inflate must be an array");Da.workerScripts.inflate=T}}}function Oa(u,i){i!==At&&(Da[u]=i)}function kv(){return"application/octet-stream"}const Xh=[];for(let u=0;u<256;u++){let i=u;for(let f=0;f<8;f++)i&1?i=i>>>1^3988292384:i=i>>>1;Xh[u]=i}class jc{constructor(i){this.crc=i||-1}append(i){let f=this.crc|0;for(let s=0,r=i.length|0;s<r;s++)f=f>>>8^Xh[(f^i[s])&255];this.crc=f}get(){return~this.crc}}class Vh extends TransformStream{constructor(){let i;const f=new jc;super({transform(s,r){f.append(s),r.enqueue(s)},flush(){const s=new Uint8Array(4);new DataView(s.buffer).setUint32(0,f.get()),i.value=s}}),i=this}}function Dc(u){if(typeof TextEncoder==Na){u=unescape(encodeURIComponent(u));const i=new Uint8Array(u.length);for(let f=0;f<i.length;f++)i[f]=u.charCodeAt(f);return i}else return new TextEncoder().encode(u)}const Ge={concat(u,i){if(u.length===0||i.length===0)return u.concat(i);const f=u[u.length-1],s=Ge.getPartial(f);return s===32?u.concat(i):Ge._shiftRight(i,s,f|0,u.slice(0,u.length-1))},bitLength(u){const i=u.length;if(i===0)return 0;const f=u[i-1];return(i-1)*32+Ge.getPartial(f)},clamp(u,i){if(u.length*32<i)return u;u=u.slice(0,Math.ceil(i/32));const f=u.length;return i=i&31,f>0&&i&&(u[f-1]=Ge.partial(i,u[f-1]&2147483648>>i-1,1)),u},partial(u,i,f){return u===32?i:(f?i|0:i<<32-u)+u*1099511627776},getPartial(u){return Math.round(u/1099511627776)||32},_shiftRight(u,i,f,s){for(s===void 0&&(s=[]);i>=32;i-=32)s.push(f),f=0;if(i===0)return s.concat(u);for(let h=0;h<u.length;h++)s.push(f|u[h]>>>i),f=u[h]<<32-i;const r=u.length?u[u.length-1]:0,o=Ge.getPartial(r);return s.push(Ge.partial(i+o&31,i+o>32?f:s.pop(),1)),s}},Bc={bytes:{fromBits(u){const f=Ge.bitLength(u)/8,s=new Uint8Array(f);let r;for(let o=0;o<f;o++)(o&3)===0&&(r=u[o/4]),s[o]=r>>>24,r<<=8;return s},toBits(u){const i=[];let f,s=0;for(f=0;f<u.length;f++)s=s<<8|u[f],(f&3)===3&&(i.push(s),s=0);return f&3&&i.push(Ge.partial(8*(f&3),s)),i}}},Qh={};Qh.sha1=class{constructor(u){const i=this;i.blockSize=512,i._init=[1732584193,4023233417,2562383102,271733878,3285377520],i._key=[1518500249,1859775393,2400959708,3395469782],u?(i._h=u._h.slice(0),i._buffer=u._buffer.slice(0),i._length=u._length):i.reset()}reset(){const u=this;return u._h=u._init.slice(0),u._buffer=[],u._length=0,u}update(u){const i=this;typeof u=="string"&&(u=Bc.utf8String.toBits(u));const f=i._buffer=Ge.concat(i._buffer,u),s=i._length,r=i._length=s+Ge.bitLength(u);if(r>9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const o=new Uint32Array(f);let h=0;for(let v=i.blockSize+s-(i.blockSize+s&i.blockSize-1);v<=r;v+=i.blockSize)i._block(o.subarray(16*h,16*(h+1))),h+=1;return f.splice(0,16*h),i}finalize(){const u=this;let i=u._buffer;const f=u._h;i=Ge.concat(i,[Ge.partial(1,1)]);for(let s=i.length+2;s&15;s++)i.push(0);for(i.push(Math.floor(u._length/4294967296)),i.push(u._length|0);i.length;)u._block(i.splice(0,16));return u.reset(),f}_f(u,i,f,s){if(u<=19)return i&f|~i&s;if(u<=39)return i^f^s;if(u<=59)return i&f|i&s|f&s;if(u<=79)return i^f^s}_S(u,i){return i<<u|i>>>32-u}_block(u){const i=this,f=i._h,s=Array(80);for(let y=0;y<16;y++)s[y]=u[y];let r=f[0],o=f[1],h=f[2],v=f[3],m=f[4];for(let y=0;y<=79;y++){y>=16&&(s[y]=i._S(1,s[y-3]^s[y-8]^s[y-14]^s[y-16]));const _=i._S(5,r)+i._f(y,o,h,v)+m+s[y]+i._key[Math.floor(y/20)]|0;m=v,v=h,h=i._S(30,o),o=r,r=_}f[0]=f[0]+r|0,f[1]=f[1]+o|0,f[2]=f[2]+h|0,f[3]=f[3]+v|0,f[4]=f[4]+m|0}};const Fh={};Fh.aes=class{constructor(u){const i=this;i._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],i._tables[0][0][0]||i._precompute();const f=i._tables[0][4],s=i._tables[1],r=u.length;let o,h,v,m=1;if(r!==4&&r!==6&&r!==8)throw new Error("invalid aes key size");for(i._key=[h=u.slice(0),v=[]],o=r;o<4*r+28;o++){let y=h[o-1];(o%r===0||r===8&&o%r===4)&&(y=f[y>>>24]<<24^f[y>>16&255]<<16^f[y>>8&255]<<8^f[y&255],o%r===0&&(y=y<<8^y>>>24^m<<24,m=m<<1^(m>>7)*283)),h[o]=h[o-r]^y}for(let y=0;o;y++,o--){const _=h[y&3?o:o-4];o<=4||y<4?v[y]=_:v[y]=s[0][f[_>>>24]]^s[1][f[_>>16&255]]^s[2][f[_>>8&255]]^s[3][f[_&255]]}}encrypt(u){return this._crypt(u,0)}decrypt(u){return this._crypt(u,1)}_precompute(){const u=this._tables[0],i=this._tables[1],f=u[4],s=i[4],r=[],o=[];let h,v,m,y;for(let _=0;_<256;_++)o[(r[_]=_<<1^(_>>7)*283)^_]=_;for(let _=h=0;!f[_];_^=v||1,h=o[h]||1){let p=h^h<<1^h<<2^h<<3^h<<4;p=p>>8^p&255^99,f[_]=p,s[p]=_,y=r[m=r[v=r[_]]];let b=y*16843009^m*65537^v*257^_*16843008,T=r[p]*257^p*16843008;for(let D=0;D<4;D++)u[D][_]=T=T<<24^T>>>8,i[D][p]=b=b<<24^b>>>8}for(let _=0;_<5;_++)u[_]=u[_].slice(0),i[_]=i[_].slice(0)}_crypt(u,i){if(u.length!==4)throw new Error("invalid aes block size");const f=this._key[i],s=f.length/4-2,r=[0,0,0,0],o=this._tables[i],h=o[0],v=o[1],m=o[2],y=o[3],_=o[4];let p=u[0]^f[0],b=u[i?3:1]^f[1],T=u[2]^f[2],D=u[i?1:3]^f[3],G=4,W,J,Z;for(let $=0;$<s;$++)W=h[p>>>24]^v[b>>16&255]^m[T>>8&255]^y[D&255]^f[G],J=h[b>>>24]^v[T>>16&255]^m[D>>8&255]^y[p&255]^f[G+1],Z=h[T>>>24]^v[D>>16&255]^m[p>>8&255]^y[b&255]^f[G+2],D=h[D>>>24]^v[p>>16&255]^m[b>>8&255]^y[T&255]^f[G+3],G+=4,p=W,b=J,T=Z;for(let $=0;$<4;$++)r[i?3&-$:$]=_[p>>>24]<<24^_[b>>16&255]<<16^_[T>>8&255]<<8^_[D&255]^f[G++],W=p,p=b,b=T,T=D,D=W;return r}};const Iv={getRandomValues(u){const i=new Uint32Array(u.buffer),f=s=>{let r=987654321;const o=4294967295;return function(){return r=36969*(r&65535)+(r>>16)&o,s=18e3*(s&65535)+(s>>16)&o,(((r<<16)+s&o)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let s=0,r;s<u.length;s+=4){const o=f((r||Math.random())*4294967296);r=o()*987654071,i[s/4]=o()*4294967296|0}return u}},Kh={};Kh.ctrGladman=class{constructor(u,i){this._prf=u,this._initIv=i,this._iv=i}reset(){this._iv=this._initIv}update(u){return this.calculate(this._prf,u,this._iv)}incWord(u){if((u>>24&255)===255){let i=u>>16&255,f=u>>8&255,s=u&255;i===255?(i=0,f===255?(f=0,s===255?s=0:++s):++f):++i,u=0,u+=i<<16,u+=f<<8,u+=s}else u+=1<<24;return u}incCounter(u){(u[0]=this.incWord(u[0]))===0&&(u[1]=this.incWord(u[1]))}calculate(u,i,f){let s;if(!(s=i.length))return[];const r=Ge.bitLength(i);for(let o=0;o<s;o+=4){this.incCounter(f);const h=u.encrypt(f);i[o]^=h[0],i[o+1]^=h[1],i[o+2]^=h[2],i[o+3]^=h[3]}return Ge.clamp(i,r)}};const el={importKey(u){return new el.hmacSha1(Bc.bytes.toBits(u))},pbkdf2(u,i,f,s){if(f=f||1e4,s<0||f<0)throw new Error("invalid params to pbkdf2");const r=(s>>5)+1<<2;let o,h,v,m,y;const _=new ArrayBuffer(r),p=new DataView(_);let b=0;const T=Ge;for(i=Bc.bytes.toBits(i),y=1;b<(r||1);y++){for(o=h=u.encrypt(T.concat(i,[y])),v=1;v<f;v++)for(h=u.encrypt(h),m=0;m<h.length;m++)o[m]^=h[m];for(v=0;b<(r||1)&&v<o.length;v++)p.setInt32(b,o[v]),b+=4}return _.slice(0,s/8)}};el.hmacSha1=class{constructor(u){const i=this,f=i._hash=Qh.sha1,s=[[],[]];i._baseHash=[new f,new f];const r=i._baseHash[0].blockSize/32;u.length>r&&(u=new f().update(u).finalize());for(let o=0;o<r;o++)s[0][o]=u[o]^909522486,s[1][o]=u[o]^1549556828;i._baseHash[0].update(s[0]),i._baseHash[1].update(s[1]),i._resultHash=new f(i._baseHash[0])}reset(){const u=this;u._resultHash=new u._hash(u._baseHash[0]),u._updated=!1}update(u){const i=this;i._updated=!0,i._resultHash.update(u)}digest(){const u=this,i=u._resultHash.finalize(),f=new u._hash(u._baseHash[1]).update(i).finalize();return u.reset(),f}encrypt(u){if(this._updated)throw new Error("encrypt on already updated hmac called!");return this.update(u),this.digest(u)}};const Wv=typeof crypto!=Na&&typeof crypto.getRandomValues==au,Jh="Invalid password",kh="Invalid signature",no="zipjs-abort-check-password";function Ih(u){return Wv?crypto.getRandomValues(u):Iv.getRandomValues(u)}const Fl=16,$v="raw",Wh={name:"PBKDF2"},Pv={name:"HMAC"},t4="SHA-1",e4=Object.assign({hash:Pv},Wh),qr=Object.assign({iterations:1e3,hash:{name:t4}},Wh),n4=["deriveBits"],tu=[8,12,16],Ki=[16,24,32],Ra=10,a4=[0,0,0,0],Vc=typeof crypto!=Na,lu=Vc&&crypto.subtle,$h=Vc&&typeof lu!=Na,Mn=Bc.bytes,l4=Fh.aes,i4=Kh.ctrGladman,u4=el.hmacSha1;let V1=Vc&&$h&&typeof lu.importKey==au,Q1=Vc&&$h&&typeof lu.deriveBits==au;class c4 extends TransformStream{constructor({password:i,rawPassword:f,signed:s,encryptionStrength:r,checkPasswordOnly:o}){super({start(){Object.assign(this,{ready:new Promise(h=>this.resolveReady=h),password:em(i,f),signed:s,strength:r-1,pending:new Uint8Array})},async transform(h,v){const m=this,{password:y,strength:_,resolveReady:p,ready:b}=m;y?(await f4(m,_,y,_n(h,0,tu[_]+2)),h=_n(h,tu[_]+2),o?v.error(new Error(no)):p()):await b;const T=new Uint8Array(h.length-Ra-(h.length-Ra)%Fl);v.enqueue(Ph(m,h,T,0,Ra,!0))},async flush(h){const{signed:v,ctr:m,hmac:y,pending:_,ready:p}=this;if(y&&m){await p;const b=_n(_,0,_.length-Ra),T=_n(_,_.length-Ra);let D=new Uint8Array;if(b.length){const G=nu(Mn,b);y.update(G);const W=m.update(G);D=eu(Mn,W)}if(v){const G=_n(eu(Mn,y.digest()),0,Ra);for(let W=0;W<Ra;W++)if(G[W]!=T[W])throw new Error(kh)}h.enqueue(D)}}})}}class s4 extends TransformStream{constructor({password:i,rawPassword:f,encryptionStrength:s}){let r;super({start(){Object.assign(this,{ready:new Promise(o=>this.resolveReady=o),password:em(i,f),strength:s-1,pending:new Uint8Array})},async transform(o,h){const v=this,{password:m,strength:y,resolveReady:_,ready:p}=v;let b=new Uint8Array;m?(b=await r4(v,y,m),_()):await p;const T=new Uint8Array(b.length+o.length-o.length%Fl);T.set(b,0),h.enqueue(Ph(v,o,T,b.length,0))},async flush(o){const{ctr:h,hmac:v,pending:m,ready:y}=this;if(v&&h){await y;let _=new Uint8Array;if(m.length){const p=h.update(nu(Mn,m));v.update(p),_=eu(Mn,p)}r.signature=eu(Mn,v.digest()).slice(0,Ra),o.enqueue(ao(_,r.signature))}}}),r=this}}function Ph(u,i,f,s,r,o){const{ctr:h,hmac:v,pending:m}=u,y=i.length-r;m.length&&(i=ao(m,i),f=h4(f,y-y%Fl));let _;for(_=0;_<=y-Fl;_+=Fl){const p=nu(Mn,_n(i,_,_+Fl));o&&v.update(p);const b=h.update(p);o||v.update(b),f.set(eu(Mn,b),_+s)}return u.pending=_n(i,_),f}async function f4(u,i,f,s){const r=await tm(u,i,f,_n(s,0,tu[i])),o=_n(s,tu[i]);if(r[0]!=o[0]||r[1]!=o[1])throw new Error(Jh)}async function r4(u,i,f){const s=Ih(new Uint8Array(tu[i])),r=await tm(u,i,f,s);return ao(s,r)}async function tm(u,i,f,s){u.password=null;const r=await o4($v,f,e4,!1,n4),o=await d4(Object.assign({salt:s},qr),r,8*(Ki[i]*2+2)),h=new Uint8Array(o),v=nu(Mn,_n(h,0,Ki[i])),m=nu(Mn,_n(h,Ki[i],Ki[i]*2)),y=_n(h,Ki[i]*2);return Object.assign(u,{keys:{key:v,authentication:m,passwordVerification:y},ctr:new i4(new l4(v),Array.from(a4)),hmac:new u4(m)}),y}async function o4(u,i,f,s,r){if(V1)try{return await lu.importKey(u,i,f,s,r)}catch{return V1=!1,el.importKey(i)}else return el.importKey(i)}async function d4(u,i,f){if(Q1)try{return await lu.deriveBits(u,i,f)}catch{return Q1=!1,el.pbkdf2(i,u.salt,qr.iterations,f)}else return el.pbkdf2(i,u.salt,qr.iterations,f)}function em(u,i){return i===At?Dc(u):i}function ao(u,i){let f=u;return u.length+i.length&&(f=new Uint8Array(u.length+i.length),f.set(u,0),f.set(i,u.length)),f}function h4(u,i){if(i&&i>u.length){const f=u;u=new Uint8Array(i),u.set(f,0)}return u}function _n(u,i,f){return u.subarray(i,f)}function eu(u,i){return u.fromBits(i)}function nu(u,i){return u.toBits(i)}const $i=12;class m4 extends TransformStream{constructor({password:i,passwordVerification:f,checkPasswordOnly:s}){super({start(){Object.assign(this,{password:i,passwordVerification:f}),nm(this,i)},transform(r,o){const h=this;if(h.password){const v=F1(h,r.subarray(0,$i));if(h.password=null,v.at(-1)!=h.passwordVerification)throw new Error(Jh);r=r.subarray($i)}s?o.error(new Error(no)):o.enqueue(F1(h,r))}})}}class y4 extends TransformStream{constructor({password:i,passwordVerification:f}){super({start(){Object.assign(this,{password:i,passwordVerification:f}),nm(this,i)},transform(s,r){const o=this;let h,v;if(o.password){o.password=null;const m=Ih(new Uint8Array($i));m[$i-1]=o.passwordVerification,h=new Uint8Array(s.length+m.length),h.set(K1(o,m),0),v=$i}else h=new Uint8Array(s.length),v=0;h.set(K1(o,s),v),r.enqueue(h)}})}}function F1(u,i){const f=new Uint8Array(i.length);for(let s=0;s<i.length;s++)f[s]=am(u)^i[s],lo(u,f[s]);return f}function K1(u,i){const f=new Uint8Array(i.length);for(let s=0;s<i.length;s++)f[s]=am(u)^i[s],lo(u,i[s]);return f}function nm(u,i){const f=[305419896,591751049,878082192];Object.assign(u,{keys:f,crcKey0:new jc(f[0]),crcKey2:new jc(f[2])});for(let s=0;s<i.length;s++)lo(u,i.charCodeAt(s))}function lo(u,i){let[f,s,r]=u.keys;u.crcKey0.append([i]),f=~u.crcKey0.get(),s=J1(Math.imul(J1(s+lm(f)),134775813)+1),u.crcKey2.append([s>>>24]),r=~u.crcKey2.get(),u.keys=[f,s,r]}function am(u){const i=u.keys[2]|2;return lm(Math.imul(i,i^1)>>>8)}function lm(u){return u&255}function J1(u){return u&4294967295}const im="Invalid uncompressed size",k1="deflate-raw";class g4 extends TransformStream{constructor(i,{chunkSize:f,CompressionStream:s,CompressionStreamNative:r}){super({});const{compressed:o,encrypted:h,useCompressionStream:v,zipCrypto:m,signed:y,level:_}=i,p=this;let b,T,D=super.readable;(!h||m)&&y&&(b=new Vh,D=Pn(D,b)),o&&(D=cm(D,v,{level:_,chunkSize:f},r,s)),h&&(m?D=Pn(D,new y4(i)):(T=new s4(i),D=Pn(D,T))),um(p,D,()=>{let G;h&&!m&&(G=T.signature),(!h||m)&&y&&(G=new DataView(b.value.buffer).getUint32(0)),p.signature=G})}}class v4 extends TransformStream{constructor(i,{chunkSize:f,DecompressionStream:s,DecompressionStreamNative:r}){super({});const{zipCrypto:o,encrypted:h,signed:v,signature:m,compressed:y,useCompressionStream:_}=i;let p,b,T=super.readable;h&&(o?T=Pn(T,new m4(i)):(b=new c4(i),T=Pn(T,b))),y&&(T=cm(T,_,{chunkSize:f},r,s)),(!h||o)&&v&&(p=new Vh,T=Pn(T,p)),um(this,T,()=>{if((!h||o)&&v){const D=new DataView(p.value.buffer);if(m!=D.getUint32(0,!1))throw new Error(kh)}})}}function um(u,i,f){i=Pn(i,new TransformStream({flush:f})),Object.defineProperty(u,"readable",{get(){return i}})}function cm(u,i,f,s,r){try{const o=i&&s?s:r;u=Pn(u,new o(k1,f))}catch(o){if(i)u=Pn(u,new r(k1,f));else throw o}return u}function Pn(u,i){return u.pipeThrough(i)}const _4="message",p4="start",b4="pull",I1="data",S4="ack",W1="close",sm="deflate",fm="inflate";class E4 extends TransformStream{constructor(i,f){super({});const s=this,{codecType:r}=i;let o;r.startsWith(sm)?o=g4:r.startsWith(fm)&&(o=v4),s.outputSize=0;let h=0;const v=new o(i,f),m=super.readable,y=new TransformStream({transform(p,b){p&&p.length&&(h+=p.length,b.enqueue(p))},flush(){Object.assign(s,{inputSize:h})}}),_=new TransformStream({transform(p,b){if(p&&p.length&&(b.enqueue(p),s.outputSize+=p.length,i.outputSize&&s.outputSize>i.outputSize))throw new Error(im)},flush(){const{signature:p}=v;Object.assign(s,{signature:p,inputSize:h})}});Object.defineProperty(s,"readable",{get(){return m.pipeThrough(y).pipeThrough(v).pipeThrough(_)}})}}class T4 extends TransformStream{constructor(i){let f;super({transform:s,flush(r){f&&f.length&&r.enqueue(f)}});function s(r,o){if(f){const h=new Uint8Array(f.length+r.length);h.set(f),h.set(r,f.length),r=h,f=null}r.length>i?(o.enqueue(r.slice(0,i)),s(r.slice(i),o)):f=r}}}let rm=typeof Worker!=Na;class Er{constructor(i,{readable:f,writable:s},{options:r,config:o,streamOptions:h,useWebWorkers:v,transferStreams:m,scripts:y},_){const{signal:p}=h;return Object.assign(i,{busy:!0,readable:f.pipeThrough(new T4(o.chunkSize)).pipeThrough(new A4(h),{signal:p}),writable:s,options:Object.assign({},r),scripts:y,transferStreams:m,terminate(){return new Promise(b=>{const{worker:T,busy:D}=i;T?(D?i.resolveTerminated=b:(T.terminate(),b()),i.interface=null):b()})},onTaskFinished(){const{resolveTerminated:b}=i;b&&(i.resolveTerminated=null,i.terminated=!0,i.worker.terminate(),b()),i.busy=!1,_(i)}}),(v&&rm?x4:om)(i,o)}}class A4 extends TransformStream{constructor({onstart:i,onprogress:f,size:s,onend:r}){let o=0;super({async start(){i&&await Tr(i,s)},async transform(h,v){o+=h.length,f&&await Tr(f,o,s),v.enqueue(h)},async flush(){r&&await Tr(r,o)}})}}async function Tr(u,...i){try{await u(...i)}catch{}}function om(u,i){return{run:()=>w4(u,i)}}function x4(u,i){const{baseURL:f,chunkSize:s}=i;if(!u.interface){let r;try{r=D4(u.scripts[0],f,u)}catch{return rm=!1,om(u,i)}Object.assign(u,{worker:r,interface:{run:()=>O4(u,{chunkSize:s})}})}return u.interface}async function w4({options:u,readable:i,writable:f,onTaskFinished:s},r){let o;try{o=new E4(u,r),await i.pipeThrough(o).pipeTo(f,{preventClose:!0,preventAbort:!0});const{signature:h,inputSize:v,outputSize:m}=o;return{signature:h,inputSize:v,outputSize:m}}catch(h){throw o&&(h.outputSize=o.outputSize),h}finally{s()}}async function O4(u,i){let f,s;const r=new Promise((b,T)=>{f=b,s=T});Object.assign(u,{reader:null,writer:null,resolveResult:f,rejectResult:s,result:r});const{readable:o,options:h,scripts:v}=u,{writable:m,closed:y}=R4(u.writable),_=zc({type:p4,scripts:v.slice(1),options:h,config:i,readable:o,writable:m},u);_||Object.assign(u,{reader:o.getReader(),writer:m.getWriter()});const p=await r;return _||await m.getWriter().close(),await y,p}function R4(u){let i;const f=new Promise(r=>i=r);return{writable:new WritableStream({async write(r){const o=u.getWriter();await o.ready,await o.write(r),o.releaseLock()},close(){i()},abort(r){return u.getWriter().abort(r)}}),closed:f}}let $1=!0,P1=!0;function D4(u,i,f){const s={type:"module"};let r,o;typeof u==au&&(u=u());try{r=new URL(u,i)}catch{r=u}if($1)try{o=new Worker(r)}catch{$1=!1,o=new Worker(r,s)}else o=new Worker(r,s);return o.addEventListener(_4,h=>z4(h,f)),o}function zc(u,{worker:i,writer:f,onTaskFinished:s,transferStreams:r}){try{const{value:o,readable:h,writable:v}=u,m=[];if(o&&(o.byteLength<o.buffer.byteLength?u.value=o.buffer.slice(0,o.byteLength):u.value=o.buffer,m.push(u.value)),r&&P1?(h&&m.push(h),v&&m.push(v)):u.readable=u.writable=null,m.length)try{return i.postMessage(u,m),!0}catch{P1=!1,u.readable=u.writable=null,i.postMessage(u)}else i.postMessage(u)}catch(o){throw f&&f.releaseLock(),s(),o}}async function z4({data:u},i){const{type:f,value:s,messageId:r,result:o,error:h}=u,{reader:v,writer:m,resolveResult:y,rejectResult:_,onTaskFinished:p}=i;try{if(h){const{message:T,stack:D,code:G,name:W,outputSize:J}=h,Z=new Error(T);Object.assign(Z,{stack:D,code:G,name:W,outputSize:J}),b(Z)}else{if(f==b4){const{value:T,done:D}=await v.read();zc({type:I1,value:T,done:D,messageId:r},i)}f==I1&&(await m.ready,await m.write(new Uint8Array(s)),zc({type:S4,messageId:r},i)),f==W1&&b(null,o)}}catch(T){zc({type:W1,messageId:r},i),b(T)}function b(T,D){T?_(T):y(D),m&&m.releaseLock(),p()}}let za=[];const Ar=[];let th=0;async function dm(u,i){const{options:f,config:s}=i,{transferStreams:r,useWebWorkers:o,useCompressionStream:h,codecType:v,compressed:m,signed:y,encrypted:_}=f,{workerScripts:p,maxWorkers:b}=s;i.transferStreams=r||r===At;const T=!m&&!y&&!_&&!i.transferStreams;return i.useWebWorkers=!T&&(o||o===At&&s.useWebWorkers),i.scripts=i.useWebWorkers&&p?p[v]:[],f.useCompressionStream=h||h===At&&s.useCompressionStream,(await D()).run();async function D(){const W=za.find(J=>!J.busy);if(W)return Zr(W),new Er(W,u,i,G);if(za.length<b){const J={indexWorker:th};return th++,za.push(J),new Er(J,u,i,G)}else return new Promise(J=>Ar.push({resolve:J,stream:u,workerOptions:i}))}function G(W){if(Ar.length){const[{resolve:J,stream:Z,workerOptions:$}]=Ar.splice(0,1);J(new Er(W,Z,$,G))}else W.worker?(Zr(W),N4(W,i)):za=za.filter(J=>J!=W)}}function N4(u,i){const{config:f}=i,{terminateWorkerTimeout:s}=f;Number.isFinite(s)&&s>=0&&(u.terminated?u.terminated=!1:u.terminateTimeout=setTimeout(async()=>{za=za.filter(r=>r!=u);try{await u.terminate()}catch{}},s))}function Zr(u){const{terminateTimeout:i}=u;i&&(clearTimeout(i),u.terminateTimeout=null)}async function M4(){await Promise.allSettled(za.map(u=>(Zr(u),u.terminate())))}const hm="HTTP error ",iu="HTTP Range not supported",mm="Writer iterator completed too soon",ym="Writer not initialized",U4="text/plain",C4="Content-Length",L4="Content-Range",H4="Accept-Ranges",j4="Range",B4="Content-Type",Y4="HEAD",io="GET",gm="bytes",G4=64*1024,uo="writable";class Qc{constructor(){this.size=0}init(){this.initialized=!0}}class Ma extends Qc{get readable(){const i=this,{chunkSize:f=G4}=i,s=new ReadableStream({start(){this.chunkOffset=0},async pull(r){const{offset:o=0,size:h,diskNumberStart:v}=s,{chunkOffset:m}=this,y=h===At?f:Math.min(f,h-m),_=await Ee(i,o+m,y,v);r.enqueue(_),m+f>h||h===At&&!_.length&&y?r.close():this.chunkOffset+=f}});return s}}class co extends Qc{constructor(){super();const i=this,f=new WritableStream({write(s){if(!i.initialized)throw new Error(ym);return i.writeUint8Array(s)}});Object.defineProperty(i,uo,{get(){return f}})}writeUint8Array(){}}class q4 extends Ma{constructor(i){super();let f=i.length;for(;i.charAt(f-1)=="=";)f--;const s=i.indexOf(",")+1;Object.assign(this,{dataURI:i,dataStart:s,size:Math.floor((f-s)*.75)})}readUint8Array(i,f){const{dataStart:s,dataURI:r}=this,o=new Uint8Array(f),h=Math.floor(i/3)*4,v=atob(r.substring(h+s,Math.ceil((i+f)/3)*4+s)),m=i-Math.floor(h/4)*3;let y=0;for(let _=m;_<m+f&&_<v.length;_++)o[_-m]=v.charCodeAt(_),y++;return y<o.length?o.subarray(0,y):o}}class Z4 extends co{constructor(i){super(),Object.assign(this,{data:"data:"+(i||"")+";base64,",pending:[]})}writeUint8Array(i){const f=this;let s=0,r=f.pending;const o=f.pending.length;for(f.pending="",s=0;s<Math.floor((o+i.length)/3)*3-o;s++)r+=String.fromCharCode(i[s]);for(;s<i.length;s++)f.pending+=String.fromCharCode(i[s]);r.length&&(r.length>2?f.data+=btoa(r):f.pending+=r)}getData(){return this.data+btoa(this.pending)}}class so extends Ma{constructor(i){super(),Object.assign(this,{blob:i,size:i.size})}async readUint8Array(i,f){const s=this,r=i+f;let h=await(i||r<s.size?s.blob.slice(i,r):s.blob).arrayBuffer();return h.byteLength>f&&(h=h.slice(i,r)),new Uint8Array(h)}}class vm extends Qc{constructor(i){super();const f=this,s=new TransformStream,r=[];i&&r.push([B4,i]),Object.defineProperty(f,uo,{get(){return s.writable}}),f.blob=new Response(s.readable,{headers:r}).blob()}getData(){return this.blob}}class X4 extends so{constructor(i){super(new Blob([i],{type:U4}))}}class V4 extends vm{constructor(i){super(i),Object.assign(this,{encoding:i,utf8:!i||i.toLowerCase()=="utf-8"})}async getData(){const{encoding:i,utf8:f}=this,s=await super.getData();if(s.text&&f)return s.text();{const r=new FileReader;return new Promise((o,h)=>{Object.assign(r,{onload:({target:v})=>o(v.result),onerror:()=>h(r.error)}),r.readAsText(s,i)})}}}class Q4 extends Ma{constructor(i,f){super(),_m(this,i,f)}async init(){await pm(this,Xr,eh),super.init()}readUint8Array(i,f){return bm(this,i,f,Xr,eh)}}class F4 extends Ma{constructor(i,f){super(),_m(this,i,f)}async init(){await pm(this,Vr,nh),super.init()}readUint8Array(i,f){return bm(this,i,f,Vr,nh)}}function _m(u,i,f){const{preventHeadRequest:s,useRangeHeader:r,forceRangeRequests:o,combineSizeEocd:h}=f;f=Object.assign({},f),delete f.preventHeadRequest,delete f.useRangeHeader,delete f.forceRangeRequests,delete f.combineSizeEocd,delete f.useXHR,Object.assign(u,{url:i,options:f,preventHeadRequest:s,useRangeHeader:r,forceRangeRequests:o,combineSizeEocd:h})}async function pm(u,i,f){const{url:s,preventHeadRequest:r,useRangeHeader:o,forceRangeRequests:h,combineSizeEocd:v}=u;if(I4(s)&&(o||h)&&(typeof r>"u"||r)){const m=await i(io,u,Sm(u,v?-vn:void 0));if(!h&&m.headers.get(H4)!=gm)throw new Error(iu);{v&&(u.eocdCache=new Uint8Array(await m.arrayBuffer()));let y;const _=m.headers.get(L4);if(_){const p=_.trim().split(/\s*\/\s*/);if(p.length){const b=p[1];b&&b!="*"&&(y=Number(b))}}y===At?await ah(u,i,f):u.size=y}}else await ah(u,i,f)}async function bm(u,i,f,s,r){const{useRangeHeader:o,forceRangeRequests:h,eocdCache:v,size:m,options:y}=u;if(o||h){if(v&&i==m-vn&&f==vn)return v;if(i>=m)return new Uint8Array;{i+f>m&&(f=m-i);const _=await s(io,u,Sm(u,i,f));if(_.status!=206)throw new Error(iu);return new Uint8Array(await _.arrayBuffer())}}else{const{data:_}=u;return _||await r(u,y),new Uint8Array(u.data.subarray(i,i+f))}}function Sm(u,i=0,f=1){return Object.assign({},fo(u),{[j4]:gm+"="+(i<0?i:i+"-"+(i+f-1))})}function fo({options:u}){const{headers:i}=u;if(i)return Symbol.iterator in i?Object.fromEntries(i):i}async function eh(u){await Em(u,Xr)}async function nh(u){await Em(u,Vr)}async function Em(u,i){const f=await i(io,u,fo(u));u.data=new Uint8Array(await f.arrayBuffer()),u.size||(u.size=u.data.length)}async function ah(u,i,f){if(u.preventHeadRequest)await f(u,u.options);else{const r=(await i(Y4,u,fo(u))).headers.get(C4);r?u.size=Number(r):await f(u,u.options)}}async function Xr(u,{options:i,url:f},s){const r=await fetch(f,Object.assign({},i,{method:u,headers:s}));if(r.status<400)return r;throw r.status==416?new Error(iu):new Error(hm+(r.statusText||r.status))}function Vr(u,{url:i},f){return new Promise((s,r)=>{const o=new XMLHttpRequest;if(o.addEventListener("load",()=>{if(o.status<400){const h=[];o.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(v=>{const m=v.trim().split(/\s*:\s*/);m[0]=m[0].trim().replace(/^[a-z]|-[a-z]/g,y=>y.toUpperCase()),h.push(m)}),s({status:o.status,arrayBuffer:()=>o.response,headers:new Map(h)})}else r(o.status==416?new Error(iu):new Error(hm+(o.statusText||o.status)))},!1),o.addEventListener("error",h=>r(h.detail?h.detail.error:new Error("Network error")),!1),o.open(u,i),f)for(const h of Object.entries(f))o.setRequestHeader(h[0],h[1]);o.responseType="arraybuffer",o.send()})}class Tm extends Ma{constructor(i,f={}){super(),Object.assign(this,{url:i,reader:f.useXHR?new F4(i,f):new Q4(i,f)})}set size(i){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(i,f){return this.reader.readUint8Array(i,f)}}class K4 extends Tm{constructor(i,f={}){f.useRangeHeader=!0,super(i,f)}}class J4 extends Ma{constructor(i){super(),i=new Uint8Array(i.buffer,i.byteOffset,i.byteLength),Object.assign(this,{array:i,size:i.length})}readUint8Array(i,f){return this.array.slice(i,i+f)}}class k4 extends co{init(i=0){Object.assign(this,{offset:0,array:new Uint8Array(i)}),super.init()}writeUint8Array(i){const f=this;if(f.offset+i.length>f.array.length){const s=f.array;f.array=new Uint8Array(s.length+i.length),f.array.set(s)}f.array.set(i,f.offset),f.offset+=i.length}getData(){return this.array}}class ro extends Ma{constructor(i){super(),this.readers=i}async init(){const i=this,{readers:f}=i;i.lastDiskNumber=0,i.lastDiskOffset=0,await Promise.all(f.map(async(s,r)=>{await s.init(),r!=f.length-1&&(i.lastDiskOffset+=s.size),i.size+=s.size})),super.init()}async readUint8Array(i,f,s=0){const r=this,{readers:o}=this;let h,v=s;v==-1&&(v=o.length-1);let m=i;for(;o[v]&&m>=o[v].size;)m-=o[v].size,v++;const y=o[v];if(y){const _=y.size;if(m+f<=_)h=await Ee(y,m,f);else{const p=_-m;h=new Uint8Array(f);const b=await Ee(y,m,p);h.set(b,0);const T=await r.readUint8Array(i+p,f-p,s);h.set(T,p),b.length+T.length<f&&(h=h.subarray(0,b.length+T.length))}}else h=new Uint8Array;return r.lastDiskNumber=Math.max(v,r.lastDiskNumber),h}}class Yc extends Qc{constructor(i,f=4294967295){super();const s=this;Object.assign(s,{diskNumber:0,diskOffset:0,size:0,maxSize:f,availableSize:f});let r,o,h;const v=new WritableStream({async write(_){const{availableSize:p}=s;if(h)_.length>=p?(await m(_.subarray(0,p)),await y(),s.diskOffset+=r.size,s.diskNumber++,h=null,await this.write(_.subarray(p))):await m(_);else{const{value:b,done:T}=await i.next();if(T&&!b)throw new Error(mm);r=b,r.size=0,r.maxSize&&(s.maxSize=r.maxSize),s.availableSize=s.maxSize,await ta(r),o=b.writable,h=o.getWriter(),await this.write(_)}},async close(){await h.ready,await y()}});Object.defineProperty(s,uo,{get(){return v}});async function m(_){const p=_.length;p&&(await h.ready,await h.write(_),r.size+=p,s.size+=p,s.availableSize-=p)}async function y(){await h.close()}}}class Fc{constructor(i){return Array.isArray(i)&&(i=new ro(i)),i instanceof ReadableStream&&(i={readable:i}),i}}class oo{constructor(i){return i.writable===At&&typeof i.next==au&&(i=new Yc(i)),i instanceof WritableStream&&(i={writable:i}),i.size===At&&(i.size=0),i instanceof Yc||Object.assign(i,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),i}}function I4(u){const{baseURL:i}=eo(),{protocol:f}=new URL(u,i);return f=="http:"||f=="https:"}async function ta(u,i){if(u.init&&!u.initialized)await u.init(i);else return Promise.resolve()}function Ee(u,i,f,s){return u.readUint8Array(i,f,s)}const W4=ro,$4=Yc,Am="filename",xm="rawFilename",ho="comment",wm="rawComment",mo="uncompressedSize",Om="compressedSize",Rm="offset",Qr="diskNumberStart",Gc="lastModDate",Fr="rawLastModDate",yo="lastAccessDate",P4="rawLastAccessDate",go="creationDate",t_="rawCreationDate",Dm="internalFileAttribute",zm="internalFileAttributes",Nm="externalFileAttribute",Mm="externalFileAttributes",Um="msDosCompatible",vo="zip64",Cm="encrypted",Lm="version",Hm="versionMadeBy",jm="zipCrypto",Nc="directory",Bm="executable",Ym="compressionMethod",Gm="signature",qm="extraField",e_=[Am,xm,Om,mo,Gc,Fr,ho,wm,yo,go,Rm,Qr,Qr,Dm,zm,Nm,Mm,Um,vo,Cm,Lm,Hm,jm,Nc,Bm,Ym,Gm,qm,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class qc{constructor(i){e_.forEach(f=>this[f]=i[f])}}const n_="filenameEncoding",a_="commentEncoding",l_="decodeText",i_="extractPrependedData",u_="extractAppendedData",Zm="password",Xm="rawPassword",Vm="passThrough",Qm="signal",c_="checkPasswordOnly",s_="checkOverlappingEntryOnly",f_="checkOverlappingEntry",r_="checkSignature",Fm="useWebWorkers",Km="useCompressionStream",o_="transferStreams",Jm="preventClose",d_="encryptionStrength",h_="extendedTimestamp",m_="keepOrder",y_="level",g_="bufferedWrite",v_="dataDescriptorSignature",__="useUnicodeFileNames",p_="dataDescriptor",km="supportZip64SplitFile",b_="encodeText",lh="offset",Im="usdz",Wm="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""),S_=Wm.length==256;function E_(u){if(S_){let i="";for(let f=0;f<u.length;f++)i+=Wm[u[f]];return i}else return new TextDecoder().decode(u)}function Mc(u,i){return i&&i.trim().toLowerCase()=="cp437"?E_(u):new TextDecoder(i).decode(u)}const xr="File format is not recognized",T_="End of central directory not found",A_="End of Zip64 central directory locator not found",x_="Central directory header not found",w_="Local file header not found",O_="Zip64 extra field not found",R_="File contains encrypted entry",D_="Encryption method not supported",ih="Compression method not supported",uh="Split zip file",z_="Overlapping entry found",ch="utf-8",sh="cp437",N_=[[mo,ce],[Om,ce],[Rm,ce],[Qr,le]],M_={[le]:{getValue:Pt,bytes:4},[ce]:{getValue:Jl,bytes:8}};class U_{constructor(i,f={}){Object.assign(this,{reader:new Fc(i),options:f,config:eo(),readRanges:[]})}async*getEntriesGenerator(i={}){const f=this;let{reader:s}=f;const{config:r}=f;if(await ta(s),(s.size===At||!s.readUint8Array)&&(s=new so(await new Response(s.readable).blob()),await ta(s)),s.size<vn)throw new Error(xr);s.chunkSize=qh(r);const o=await G_(s,zh,s.size,vn,le*16);if(!o){const st=await Ee(s,0,4),at=ne(st);throw Pt(at)==$r?new Error(uh):new Error(T_)}const h=ne(o);let v=Pt(h,12),m=Pt(h,16);const y=o.offset,_=Te(h,20),p=y+vn+_;let b=Te(h,4);const T=s.lastDiskNumber||0;let D=Te(h,6),G=Te(h,8),W=0,J=0;if(m==ce||v==ce||G==le||D==le){const st=await Ee(s,o.offset-ki,ki),at=ne(st);if(Pt(at,0)==Nh){m=Jl(at,8);let _t=await Ee(s,m,Ii,-1),pt=ne(_t);const yt=o.offset-ki-Ii;if(Pt(pt,0)!=Lr&&m!=yt){const ot=m;m=yt,m>ot&&(W=m-ot),_t=await Ee(s,m,Ii,-1),pt=ne(_t)}if(Pt(pt,0)!=Lr)throw new Error(A_);b==le&&(b=Pt(pt,16)),D==le&&(D=Pt(pt,20)),G==le&&(G=Jl(pt,32)),v==ce&&(v=Jl(pt,40)),m-=v}}if(m>=s.size&&(W=s.size-m-v-vn,m=s.size-v-vn),T!=b)throw new Error(uh);if(m<0)throw new Error(xr);let Z=0,$=await Ee(s,m,v,D),I=ne($);if(v){const st=o.offset-v;if(Pt(I,Z)!=Cr&&m!=st){const at=m;m=st,m>at&&(W+=m-at),$=await Ee(s,m,v,D),I=ne($)}}const B=o.offset-m-(s.lastDiskOffset||0);if(v!=B&&B>=0&&(v=B,$=await Ee(s,m,v,D),I=ne($)),m<0||m>=s.size)throw new Error(xr);const it=Ne(f,i,n_),X=Ne(f,i,a_);for(let st=0;st<G;st++){const at=new C_(s,r,f.options);if(Pt(I,Z)!=Cr)throw new Error(x_);$m(at,I,Z+6);const _t=!!at.bitFlag.languageEncodingFlag,pt=Z+46,yt=pt+at.filenameLength,ot=yt+at.extraFieldLength,N=Te(I,Z+4),V=N>>8==0,lt=N>>8==3,rt=$.subarray(pt,yt),gt=Te(I,Z+32),E=ot+gt,R=$.subarray(ot,E),k=_t,w=_t,U=Pt(I,Z+38),L=V&&(Kl(I,Z+38)&Yr)==Yr||lt&&(U>>16&Qv)==Yh||rt.length&&rt.at(-1)==Wi.charCodeAt(0),P=lt&&(U>>16&Gr)!=0,H=Pt(I,Z+42)+W;Object.assign(at,{versionMadeBy:N,msDosCompatible:V,compressedSize:0,uncompressedSize:0,commentLength:gt,directory:L,offset:H,diskNumberStart:Te(I,Z+34),internalFileAttributes:Te(I,Z+36),externalFileAttributes:U,rawFilename:rt,filenameUTF8:k,commentUTF8:w,rawExtraField:$.subarray(yt,ot),executable:P}),at.internalFileAttribute=at.internalFileAttributes,at.externalFileAttribute=at.externalFileAttributes;const ht=Ne(f,i,l_)||Mc,Yt=k?ch:it||sh,Ft=w?ch:X||sh;let ae=ht(rt,Yt);ae===At&&(ae=Mc(rt,Yt));let oe=ht(R,Ft);oe===At&&(oe=Mc(R,Ft)),Object.assign(at,{rawComment:R,filename:ae,comment:oe,directory:L||ae.endsWith(Wi)}),J=Math.max(H,J),Pm(at,at,I,Z+6),at.zipCrypto=at.encrypted&&!at.extraFieldAES;const Jt=new qc(at);Jt.getData=(kt,je)=>at.getData(kt,Jt,f.readRanges,je),Jt.arrayBuffer=async kt=>{const je=new TransformStream,[Be]=await Promise.all([new Response(je.readable).arrayBuffer(),at.getData(je,Jt,f.readRanges,kt)]);return Be},Z=E;const{onprogress:Gt}=i;if(Gt)try{await Gt(st+1,G,new qc(at))}catch{}yield Jt}const et=Ne(f,i,i_),ut=Ne(f,i,u_);return et&&(f.prependedData=J>0?await Ee(s,0,J):new Uint8Array),f.comment=_?await Ee(s,y+vn,_):new Uint8Array,ut&&(f.appendedData=p<s.size?await Ee(s,p,s.size-p):new Uint8Array),!0}async getEntries(i={}){const f=[];for await(const s of this.getEntriesGenerator(i))f.push(s);return f}async close(){}}class C_{constructor(i,f,s){Object.assign(this,{reader:i,config:f,options:s})}async getData(i,f,s,r={}){const o=this,{reader:h,offset:v,diskNumberStart:m,extraFieldAES:y,extraFieldZip64:_,compressionMethod:p,config:b,bitFlag:T,signature:D,rawLastModDate:G,uncompressedSize:W,compressedSize:J}=o,{dataDescriptor:Z}=T,$=f.localDirectory={},I=await Ee(h,v,tl,m),B=ne(I);let it=Ne(o,r,Zm),X=Ne(o,r,Xm);const et=Ne(o,r,Vm);if(it=it&&it.length&&it,X=X&&X.length&&X,y&&y.originalCompressionMethod!=Oh)throw new Error(ih);if(p!=wh&&p!=Wr&&!et)throw new Error(ih);if(Pt(B,0)!=Rh)throw new Error(w_);$m($,B,4);const{extraFieldLength:ut,filenameLength:st,lastAccessDate:at,creationDate:_t}=$;$.rawExtraField=ut?await Ee(h,v+tl+st,ut,m):new Uint8Array,Pm(o,$,B,4,!0),Object.assign(f,{lastAccessDate:at,creationDate:_t});const pt=o.encrypted&&$.encrypted&&!et,yt=pt&&!y;if(et||(f.zipCrypto=yt),pt){if(!yt&&y.strength===At)throw new Error(D_);if(!it&&!X)throw new Error(R_)}const ot=v+tl+st+ut,N=J,V=h.readable;Object.assign(V,{diskNumberStart:m,offset:ot,size:N});const lt=Ne(o,r,Qm),rt=Ne(o,r,c_);let gt=Ne(o,r,f_);const E=Ne(o,r,s_);E&&(gt=!0);const{onstart:R,onprogress:k,onend:w}=r,U={options:{codecType:fm,password:it,rawPassword:X,zipCrypto:yt,encryptionStrength:y&&y.strength,signed:Ne(o,r,r_)&&!et,passwordVerification:yt&&(Z?G>>>8&255:D>>>24&255),outputSize:W,signature:D,compressed:p!=0&&!et,encrypted:o.encrypted&&!et,useWebWorkers:Ne(o,r,Fm),useCompressionStream:Ne(o,r,Km),transferStreams:Ne(o,r,o_),checkPasswordOnly:rt},config:b,streamOptions:{signal:lt,size:N,onstart:R,onprogress:k,onend:w}};gt&&await Y_({reader:h,fileEntry:f,offset:v,diskNumberStart:m,signature:D,compressedSize:J,uncompressedSize:W,dataOffset:ot,dataDescriptor:Z||$.bitFlag.dataDescriptor,extraFieldZip64:_||$.extraFieldZip64,readRanges:s});let L;try{if(!E){rt&&(i=new WritableStream),i=new oo(i),await ta(i,et?J:W),{writable:L}=i;const{outputSize:P}=await dm({readable:V,writable:L},U);if(i.size+=P,P!=(et?J:W))throw new Error(im)}}catch(P){if(P.outputSize!==At&&(i.size+=P.outputSize),!rt||P.message!=no)throw P}finally{!Ne(o,r,Jm)&&L&&!L.locked&&await L.getWriter().close()}return rt||E?At:i.getData?i.getData():L}}function $m(u,i,f){const s=u.rawBitFlag=Te(i,f+2),r=(s&Hr)==Hr,o=Pt(i,f+6);Object.assign(u,{encrypted:r,version:Te(i,f),bitFlag:{level:(s&qv)>>1,dataDescriptor:(s&jr)==jr,languageEncodingFlag:(s&Br)==Br},rawLastModDate:o,lastModDate:q_(o),filenameLength:Te(i,f+22),extraFieldLength:Te(i,f+24)})}function Pm(u,i,f,s,r){const{rawExtraField:o}=i,h=i.extraField=new Map,v=ne(new Uint8Array(o));let m=0;try{for(;m<o.length;){const J=Te(v,m),Z=Te(v,m+2);h.set(J,{type:J,data:o.slice(m+4,m+4+Z)}),m+=4+Z}}catch{}const y=Te(f,s+4);Object.assign(i,{signature:Pt(f,s+to),compressedSize:Pt(f,s+kl),uncompressedSize:Pt(f,s+Il)});const _=h.get(Ch);_&&(L_(_,i),i.extraFieldZip64=_);const p=h.get(Yv);p&&(fh(p,Am,xm,i,u),i.extraFieldUnicodePath=p);const b=h.get(Gv);b&&(fh(b,ho,wm,i,u),i.extraFieldUnicodeComment=b);const T=h.get(Lh);T?(H_(T,i,y),i.extraFieldAES=T):i.compressionMethod=y;const D=h.get(Hh);D&&(j_(D,i),i.extraFieldNTFS=D);const G=h.get(Pr);G&&(B_(G,i,r),i.extraFieldExtendedTimestamp=G);const W=h.get(Bh);W&&(i.extraFieldUSDZ=W)}function L_(u,i){i.zip64=!0;const f=ne(u.data),s=N_.filter(([r,o])=>i[r]==o);for(let r=0,o=0;r<s.length;r++){const[h,v]=s[r];if(i[h]==v){const m=M_[v];i[h]=u[h]=m.getValue(f,o),o+=m.bytes}else if(u[h])throw new Error(O_)}}function fh(u,i,f,s,r){const o=ne(u.data),h=new jc;h.append(r[f]);const v=ne(new Uint8Array(4));v.setUint32(0,h.get(),!0);const m=Pt(o,1);Object.assign(u,{version:Kl(o,0),[i]:Mc(u.data.subarray(5)),valid:!r.bitFlag.languageEncodingFlag&&m==Pt(v,0)}),u.valid&&(s[i]=u[i],s[i+"UTF8"]=!0)}function H_(u,i,f){const s=ne(u.data),r=Kl(s,4);Object.assign(u,{vendorVersion:Kl(s,0),vendorId:Kl(s,2),strength:r,originalCompressionMethod:f,compressionMethod:Te(s,5)}),i.compressionMethod=u.compressionMethod}function j_(u,i){const f=ne(u.data);let s=4,r;try{for(;s<u.data.length&&!r;){const o=Te(f,s),h=Te(f,s+2);o==jh&&(r=u.data.slice(s+4,s+4+h)),s+=4+h}}catch{}try{if(r&&r.length==24){const o=ne(r),h=o.getBigUint64(0,!0),v=o.getBigUint64(8,!0),m=o.getBigUint64(16,!0);Object.assign(u,{rawLastModDate:h,rawLastAccessDate:v,rawCreationDate:m});const y=wr(h),_=wr(v),p=wr(m),b={lastModDate:y,lastAccessDate:_,creationDate:p};Object.assign(u,b),Object.assign(i,b)}}catch{}}function B_(u,i,f){const s=ne(u.data),r=Kl(s,0),o=[],h=[];f?((r&1)==1&&(o.push(Gc),h.push(Fr)),(r&2)==2&&(o.push(yo),h.push(P4)),(r&4)==4&&(o.push(go),h.push(t_))):u.data.length>=5&&(o.push(Gc),h.push(Fr));let v=1;o.forEach((m,y)=>{if(u.data.length>=v+4){const _=Pt(s,v);i[m]=u[m]=new Date(_*1e3);const p=h[y];u[p]=_}v+=4})}async function Y_({reader:u,fileEntry:i,offset:f,diskNumberStart:s,signature:r,compressedSize:o,uncompressedSize:h,dataOffset:v,dataDescriptor:m,extraFieldZip64:y,readRanges:_}){let p=0;if(s)for(let D=0;D<s;D++){const G=u.readers[D];p+=G.size}let b=0;if(m&&(y?b=Uh:b=Mh),b){const D=await Ee(u,v+o,b+Hc,s);if(Pt(ne(D),0)==Dh){const W=Pt(ne(D),4);let J,Z;y?(J=Jl(ne(D),8),Z=Jl(ne(D),16)):(J=Pt(ne(D),8),Z=Pt(ne(D),12)),(i.encrypted&&!i.zipCrypto||W==r)&&J==o&&Z==h&&(b+=Hc)}}const T={start:p+f,end:p+v+o+b,fileEntry:i};for(const D of _)if(D.fileEntry!=i&&T.start>=D.start&&T.start<D.end){const G=new Error(z_);throw G.overlappingEntry=D.fileEntry,G}_.push(T)}async function G_(u,i,f,s,r){const o=new Uint8Array(4),h=ne(o);Z_(h,0,i);const v=s+r;return await m(s)||await m(Math.min(v,f));async function m(y){const _=f-y,p=await Ee(u,_,y);for(let b=p.length-s;b>=0;b--)if(p[b]==o[0]&&p[b+1]==o[1]&&p[b+2]==o[2]&&p[b+3]==o[3])return{offset:_+b,buffer:p.slice(b,b+s).buffer}}}function Ne(u,i,f){return i[f]===At?u.options[f]:i[f]}function q_(u){const i=(u&4294901760)>>16,f=u&65535;try{return new Date(1980+((i&65024)>>9),((i&480)>>5)-1,i&31,(f&63488)>>11,(f&2016)>>5,(f&31)*2,0)}catch{}}function wr(u){return new Date(Number(u/BigInt(1e4)-BigInt(116444736e5)))}function Kl(u,i){return u.getUint8(i)}function Te(u,i){return u.getUint16(i,!0)}function Pt(u,i){return u.getUint32(i,!0)}function Jl(u,i){return Number(u.getBigUint64(i,!0))}function Z_(u,i,f){u.setUint32(i,f,!0)}function ne(u){return new DataView(u.buffer)}const t3="File already exists",e3="Zip file comment exceeds 64KB",n3="File entry comment exceeds 64KB",a3="File entry name exceeds 64KB",Kr="Version exceeds 65535",l3="The strength must equal 1, 2, or 3",i3="Extra field type exceeds 65535",u3="Extra field data exceeds 64KB",Kc="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",c3="Undefined uncompressed size",s3="Zip file not empty",rh=new Uint8Array([7,0,2,0,65,69,3,0,0]);let Or=0;const oh=[];class f3{constructor(i,f={}){i=new oo(i);const s=i.availableSize!==At&&i.availableSize>0&&i.availableSize!==1/0&&i.maxSize!==At&&i.maxSize>0&&i.maxSize!==1/0;Object.assign(this,{writer:i,addSplitZipSignature:s,options:f,config:eo(),files:new Map,filenames:new Set,offset:f[lh]===At?i.size||i.writable.size||0:f[lh],pendingEntriesSize:0,pendingAddFileCalls:new Set,bufferedWrites:0})}async prependZip(i){if(this.filenames.size)throw new Error(s3);i=new Fc(i);const f=new U_(i.readable),s=await f.getEntries();await f.close(),await i.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=i.size,this.filenames=new Set(s.map(r=>r.filename)),this.files=new Map(s.map(r=>{const{version:o,compressionMethod:h,lastModDate:v,lastAccessDate:m,creationDate:y,rawFilename:_,bitFlag:p,encrypted:b,uncompressedSize:T,compressedSize:D,diskOffset:G,diskNumber:W,zip64:J}=r;let{rawExtraFieldZip64:Z,rawExtraFieldAES:$,rawExtraFieldExtendedTimestamp:I,rawExtraFieldNTFS:B,rawExtraField:it}=r;const{level:X,languageEncodingFlag:et,dataDescriptor:ut}=p;Z=Z||new Uint8Array,$=$||new Uint8Array,I=I||new Uint8Array,B=B||new Uint8Array,it=it||new Uint8Array;const st=zt(Z,$,I,B,it),at=J&&T>ce,_t=J&&D>ce,{headerArray:pt,headerView:yt}=r3({version:o,bitFlag:o3(X,et,ut,b,h),compressionMethod:h,uncompressedSize:T,compressedSize:D,lastModDate:v,rawFilename:_,zip64CompressedSize:_t,zip64UncompressedSize:at,extraFieldLength:st});return Object.assign(r,{zip64UncompressedSize:at,zip64CompressedSize:_t,zip64Offset:J&&this.offset-G>ce,zip64DiskNumberStart:J&&W>le,rawExtraFieldZip64:Z,rawExtraFieldAES:$,rawExtraFieldExtendedTimestamp:I,rawExtraFieldNTFS:B,rawExtraField:it,extendedTimestamp:I.length>0||B.length>0,extraFieldExtendedTimestampFlag:1+(m?2:0)+(y?4:0),headerArray:pt,headerView:yt}),[r.filename,r]}))}async add(i="",f,s={}){const r=this,{pendingAddFileCalls:o,config:h}=r;Or<h.maxWorkers?Or++:await new Promise(m=>oh.push(m));let v;try{if(i=i.trim(),r.filenames.has(i))throw new Error(t3);return r.filenames.add(i),v=V_(r,i,f,s),o.add(v),await v}catch(m){throw r.filenames.delete(i),m}finally{o.delete(v);const m=oh.shift();m?m():Or--}}remove(i){const{filenames:f,files:s}=this;if(typeof i=="string"&&(i=s.get(i)),i&&i.filename!==At){const{filename:r}=i;if(f.has(r)&&s.has(r))return f.delete(r),s.delete(r),!0}return!1}async close(i=new Uint8Array,f={}){const s=this,{pendingAddFileCalls:r,writer:o}=this,{writable:h}=o;for(;r.size;)await Promise.allSettled(Array.from(r));return await $_(this,i,f),Ct(s,f,Jm)||await h.getWriter().close(),o.getData?o.getData():h}}class X_{constructor(i={}){const{readable:f,writable:s}=new TransformStream;this.readable=f,this.zipWriter=new f3(s,i)}transform(i){const{readable:f,writable:s}=new TransformStream({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(i,f),{readable:this.readable,writable:s}}writable(i){const{readable:f,writable:s}=new TransformStream;return this.zipWriter.add(i,f),s}close(i=void 0,f={}){return this.zipWriter.close(i,f)}}async function V_(u,i,f,s){i=i.trim();const r=Ct(u,s,Um),o=Ct(u,s,Hm,r?20:768),h=Ct(u,s,Bm);if(o>le)throw new Error(Kr);let v=Ct(u,s,Mm,0);v===0&&(v=Ct(u,s,Nm,0)),!s[Nc]&&i.endsWith(Wi)&&(s[Nc]=!0),Ct(u,s,Nc)?(i.endsWith(Wi)||(i+=Wi),v===0&&(v=Yr,r||(v|=(Yh|Gr|Sr)<<16))):!r&&v===0&&(h?v=(Gr|Sr)<<16:v=Sr<<16);const y=Ct(u,s,b_,Dc);let _=y(i);if(_===At&&(_=Dc(i)),zt(_)>le)throw new Error(a3);const p=s[ho]||"";let b=y(p);if(b===At&&(b=Dc(p)),zt(b)>le)throw new Error(n3);const T=Ct(u,s,Lm,Fv);if(T>le)throw new Error(Kr);const D=Ct(u,s,Gc,new Date),G=Ct(u,s,yo),W=Ct(u,s,go);let J=Ct(u,s,zm,0);J===0&&(J=Ct(u,s,Dm,0));const Z=Ct(u,s,Vm);let $,I;Z||($=Ct(u,s,Zm),I=Ct(u,s,Xm));const B=Ct(u,s,d_,3),it=Ct(u,s,jm),X=Ct(u,s,h_,!0),et=Ct(u,s,m_,!0),ut=Ct(u,s,y_),st=Ct(u,s,Fm),at=Ct(u,s,g_),_t=Ct(u,s,v_,!1),pt=Ct(u,s,Qm),yt=Ct(u,s,__,!0),ot=Ct(u,s,Km),N=Ct(u,s,Ym);let V=Ct(u,s,p_);at&&V===At&&(V=!1),(V===At||it)&&(V=!0);let lt=Ct(u,s,vo);if(!it&&($!==At||I!==At)&&!(B>=1&&B<=3))throw new Error(l3);let rt=new Uint8Array;const gt=s[qm];if(gt){let Be=0,qe=0;gt.forEach(Ce=>Be+=4+zt(Ce)),rt=new Uint8Array(Be),gt.forEach((Ce,Ae)=>{if(Ae>le)throw new Error(i3);if(zt(Ce)>le)throw new Error(u3);re(rt,new Uint16Array([Ae]),qe),re(rt,new Uint16Array([zt(Ce)]),qe+2),re(rt,Ce,qe+4),qe+=4+zt(Ce)})}let E=0,R=0,k=0;if(Z&&(k=s[mo],k===At))throw new Error(c3);const w=lt===!0;f&&(f=new Fc(f),await ta(f),Z?(s.uncompressedSize=k,E=hh(k)):f.size===At?(V=!0,(lt||lt===At)&&(lt=!0,k=E=ce+1)):(s.uncompressedSize=k=f.size,E=hh(k)));const{diskOffset:U,diskNumber:L,maxSize:P}=u.writer,H=w||k>ce,ht=w||E>ce,Yt=w||u.offset+u.pendingEntriesSize-U>ce,ae=Ct(u,s,km,!0)&&w||L+Math.ceil(u.pendingEntriesSize/P)>le;if(Yt||H||ht||ae){if(lt===!1||!et)throw new Error(Kc);lt=!0}lt=lt||!1;const oe=Ct(u,s,Cm);s=Object.assign({},s,{rawFilename:_,rawComment:b,version:T,versionMadeBy:o,lastModDate:D,lastAccessDate:G,creationDate:W,rawExtraField:rt,zip64:lt,zip64UncompressedSize:H,zip64CompressedSize:ht,zip64Offset:Yt,zip64DiskNumberStart:ae,password:$,rawPassword:I,level:!ot&&u.config.CompressionStream===At&&u.config.CompressionStreamNative===At?0:ut,useWebWorkers:st,encryptionStrength:B,extendedTimestamp:X,zipCrypto:it,bufferedWrite:at,keepOrder:et,useUnicodeFileNames:yt,dataDescriptor:V,dataDescriptorSignature:_t,signal:pt,msDosCompatible:r,internalFileAttribute:J,internalFileAttributes:J,externalFileAttribute:v,externalFileAttributes:v,useCompressionStream:ot,passThrough:Z,encrypted:!!($&&zt($)||I&&zt(I))||Z&&oe,signature:s[Gm],compressionMethod:N,uncompressedSize:k,offset:u.offset-U,diskNumberStart:L});const Jt=K_(s),Gt=k_(s),kt=zt(Jt.localHeaderArray,Gt.dataDescriptorArray);R=kt+E,u.options[Im]&&(R+=R+64),u.pendingEntriesSize+=R;let je;try{je=await Q_(u,i,f,{headerInfo:Jt,dataDescriptorInfo:Gt,metadataSize:kt},s)}finally{u.pendingEntriesSize-=R}return Object.assign(je,{name:i,comment:p,extraField:gt}),new qc(je)}async function Q_(u,i,f,s,r){const{files:o,writer:h}=u,{keepOrder:v,dataDescriptor:m,signal:y}=r,{headerInfo:_}=s,p=u.options[Im],b=Array.from(o.values()).pop();let T={},D,G,W,J,Z,$,I;o.set(i,T);try{let et;v&&(et=b&&b.lock,B()),(r.bufferedWrite||u.writerLocked||u.bufferedWrites&&v||!m)&&!p?($=new TransformStream,$.size=0,D=!0,u.bufferedWrites++,await ta(h)):($=h,await it()),await ta($);const{writable:ut,diskOffset:st}=h;if(u.addSplitZipSignature){delete u.addSplitZipSignature;const ot=new Uint8Array(4),N=Ue(ot);Dt(N,0,$r),await $n(h,ot),u.offset+=4}p&&J_(s,u.offset-st);const{localHeaderView:at,localHeaderArray:_t}=_;D||(await et,await X(ut));const{diskNumber:pt}=h;Z=!0,T.diskNumberStart=pt,D?I=new Response($.readable).blob():await $n($,_t),T=await F_(f,$,T,s,u.config,r);const{zip64:yt}=T;if(Z=!1,o.set(i,T),T.filename=i,D){const[ot]=await Promise.all([I,$.writable.getWriter().close(),et]);await it(),J=!0,T.diskNumberStart=h.diskNumber,T.offset=u.offset-h.diskOffset,yt&&dh(T),W_(T,at,r),await X(ut),await $n(h,_t),await ot.stream().pipeTo(ut,{preventClose:!0,preventAbort:!0,signal:y}),h.size+=$.size,J=!1}else T.offset=u.offset-st,yt&&dh(T);if(T.offset>ce&&!yt)throw new Error(Kc);return u.offset+=T.size,T}catch(et){if(D&&J||!D&&Z){if(u.hasCorruptedEntries=!0,et)try{et.corruptedEntry=!0}catch{}D?u.offset+=$.size:u.offset=$.size}throw o.delete(i),et}finally{D&&u.bufferedWrites--,W&&W(),G&&G()}function B(){T.lock=new Promise(et=>W=et)}async function it(){u.writerLocked=!0;const{lockWriter:et}=u;u.lockWriter=new Promise(ut=>G=()=>{u.writerLocked=!1,ut()}),await et}async function X(et){zt(_.localHeaderArray)>h.availableSize&&(h.availableSize=0,await $n(et,new Uint8Array))}}async function F_(u,i,{diskNumberStart:f,lock:s},r,o,h){const{headerInfo:v,dataDescriptorInfo:m,metadataSize:y}=r,{headerArray:_,headerView:p,lastModDate:b,rawLastModDate:T,encrypted:D,compressed:G,version:W,compressionMethod:J,rawExtraFieldZip64:Z,localExtraFieldZip64Length:$,rawExtraFieldExtendedTimestamp:I,extraFieldExtendedTimestampFlag:B,rawExtraFieldNTFS:it,rawExtraFieldAES:X}=v,{dataDescriptorArray:et}=m,{rawFilename:ut,lastAccessDate:st,creationDate:at,password:_t,rawPassword:pt,level:yt,zip64:ot,zip64UncompressedSize:N,zip64CompressedSize:V,zip64Offset:lt,zip64DiskNumberStart:rt,zipCrypto:gt,dataDescriptor:E,directory:R,executable:k,versionMadeBy:w,rawComment:U,rawExtraField:L,useWebWorkers:P,onstart:H,onprogress:ht,onend:Yt,signal:Ft,encryptionStrength:ae,extendedTimestamp:oe,msDosCompatible:Jt,internalFileAttributes:Gt,externalFileAttributes:kt,useCompressionStream:je,passThrough:Be}=h,qe={lock:s,versionMadeBy:w,zip64:ot,directory:!!R,executable:!!k,filenameUTF8:!0,rawFilename:ut,commentUTF8:!0,rawComment:U,rawExtraFieldZip64:Z,localExtraFieldZip64Length:$,rawExtraFieldExtendedTimestamp:I,rawExtraFieldNTFS:it,rawExtraFieldAES:X,rawExtraField:L,extendedTimestamp:oe,msDosCompatible:Jt,internalFileAttributes:Gt,externalFileAttributes:kt,diskNumberStart:f};let{signature:Ce,uncompressedSize:Ae}=h,wn=0;Be||(Ae=0);const{writable:nl}=i;if(u){u.chunkSize=qh(o);const xe=u.readable,al=u.size,ll={options:{codecType:sm,level:yt,rawPassword:pt,password:_t,encryptionStrength:ae,zipCrypto:D&&gt,passwordVerification:D&&gt&&T>>8&255,signed:!Be,compressed:G&&!Be,encrypted:D&&!Be,useWebWorkers:P,useCompressionStream:je,transferStreams:!1},config:o,streamOptions:{signal:Ft,size:al,onstart:H,onprogress:ht,onend:Yt}};try{const _e=await dm({readable:xe,writable:nl},ll);wn=_e.outputSize,i.size+=wn,Be||(Ae=_e.inputSize,Ce=_e.signature)}catch(_e){throw _e.outputSize!==At&&(i.size+=_e.outputSize),_e}}return I_({signature:Ce,compressedSize:wn,uncompressedSize:Ae,headerInfo:v,dataDescriptorInfo:m},h),E&&await $n(i,et),Object.assign(qe,{uncompressedSize:Ae,compressedSize:wn,lastModDate:b,rawLastModDate:T,creationDate:at,lastAccessDate:st,encrypted:D,zipCrypto:gt,size:y+wn,compressionMethod:J,version:W,headerArray:_,headerView:p,signature:Ce,extraFieldExtendedTimestampFlag:B,zip64UncompressedSize:N,zip64CompressedSize:V,zip64Offset:lt,zip64DiskNumberStart:rt}),qe}function K_(u){const{rawFilename:i,lastModDate:f,lastAccessDate:s,creationDate:r,level:o,zip64:h,zipCrypto:v,useUnicodeFileNames:m,dataDescriptor:y,directory:_,rawExtraField:p,encryptionStrength:b,extendedTimestamp:T,passThrough:D,encrypted:G,zip64UncompressedSize:W,zip64CompressedSize:J,zip64Offset:Z,zip64DiskNumberStart:$,uncompressedSize:I,offset:B,diskNumberStart:it}=u;let{version:X,compressionMethod:et}=u;const ut=!_&&(o>0||o===At&&et!==0);let st;const at=D||!ut,_t=h&&(u.bufferedWrite||!W&&!J||at);if(h){let U=4;W&&(U+=8),J&&(U+=8),Z&&(U+=8),$&&(U+=4),st=new Uint8Array(U);const L=Ue(st);if(Lt(L,0,Ch),Lt(L,2,zt(st)-4),_t){const P=Ue(st);let H=4;W&&(ve(P,H,BigInt(I)),H+=8),J&&at&&(ve(P,H,BigInt(I)),H+=8),Z&&(ve(P,H,BigInt(B)),H+=8),$&&(Dt(P,H,it),H+=4)}}else st=new Uint8Array;let pt;if(G&&!v){pt=new Uint8Array(zt(rh)+2);const U=Ue(pt);Lt(U,0,Lh),re(pt,rh,2),Jr(U,8,b)}else pt=new Uint8Array;let yt,ot,N;if(T){ot=new Uint8Array(9+(s?4:0)+(r?4:0));const U=Ue(ot);Lt(U,0,Pr),Lt(U,2,zt(ot)-4),N=1+(s?2:0)+(r?4:0),Jr(U,4,N);let L=5;Dt(U,L,Math.floor(f.getTime()/1e3)),L+=4,s&&(Dt(U,L,Math.floor(s.getTime()/1e3)),L+=4),r&&Dt(U,L,Math.floor(r.getTime()/1e3));try{yt=new Uint8Array(36);const P=Ue(yt),H=Rr(f);Lt(P,0,Hh),Lt(P,2,32),Lt(P,8,jh),Lt(P,10,24),ve(P,12,H),ve(P,20,Rr(s)||H),ve(P,28,Rr(r)||H)}catch{yt=new Uint8Array}}else yt=ot=new Uint8Array;et===At&&(et=ut?Wr:wh),h&&(X=X>Y1?X:Y1),G&&!v&&(X=X>G1?X:G1,pt[9]=et,et=Oh);const V=_t?zt(st):0,lt=V+zt(pt,ot,yt,p),{headerArray:rt,headerView:gt,rawLastModDate:E}=r3({version:X,bitFlag:o3(o,m,y,G,et),compressionMethod:et,uncompressedSize:I,lastModDate:f<Z1?Z1:f>q1?q1:f,rawFilename:i,zip64CompressedSize:J,zip64UncompressedSize:W,extraFieldLength:lt});let R=tl;const k=new Uint8Array(R+zt(i)+lt),w=Ue(k);return Dt(w,0,Rh),re(k,rt,4),re(k,i,R),R+=zt(i),_t&&re(k,st,R),R+=V,re(k,pt,R),R+=zt(pt),re(k,ot,R),R+=zt(ot),re(k,yt,R),R+=zt(yt),re(k,p,R),y&&(Dt(w,kl+4,0),Dt(w,Il+4,0)),{localHeaderArray:k,localHeaderView:w,headerArray:rt,headerView:gt,lastModDate:f,rawLastModDate:E,encrypted:G,compressed:ut,version:X,compressionMethod:et,extraFieldExtendedTimestampFlag:N,rawExtraFieldZip64:st,localExtraFieldZip64Length:V,rawExtraFieldExtendedTimestamp:ot,rawExtraFieldNTFS:yt,rawExtraFieldAES:pt,extraFieldLength:lt}}function J_(u,i){const{headerInfo:f}=u;let{localHeaderArray:s,extraFieldLength:r}=f,o=Ue(s),h=64-(i+zt(s))%64;h<4&&(h+=64);const v=new Uint8Array(h),m=Ue(v);Lt(m,0,Bh),Lt(m,2,h-2);const y=s;f.localHeaderArray=s=new Uint8Array(zt(y)+h),re(s,y),re(s,v,zt(y)),o=Ue(s),Lt(o,28,r+h),u.metadataSize+=h}function k_({zip64:u,dataDescriptor:i,dataDescriptorSignature:f}){let s=new Uint8Array,r,o=0,h=u?Uh:Mh;return f&&(h+=Hc),i&&(s=new Uint8Array(h),r=Ue(s),f&&(o=Hc,Dt(r,0,Dh))),{dataDescriptorArray:s,dataDescriptorView:r,dataDescriptorOffset:o}}function I_({signature:u,compressedSize:i,uncompressedSize:f,headerInfo:s,dataDescriptorInfo:r},{zip64:o,zipCrypto:h,dataDescriptor:v}){const{headerView:m,encrypted:y}=s,{dataDescriptorView:_,dataDescriptorOffset:p}=r;(!y||h)&&u!==At&&(Dt(m,to,u),v&&Dt(_,p,u)),o?v&&(ve(_,p+4,BigInt(i)),ve(_,p+12,BigInt(f))):(Dt(m,kl,i),Dt(m,Il,f),v&&(Dt(_,p+4,i),Dt(_,p+8,f)))}function W_({rawFilename:u,encrypted:i,zip64:f,localExtraFieldZip64Length:s,signature:r,compressedSize:o,uncompressedSize:h,offset:v,diskNumberStart:m,zip64UncompressedSize:y,zip64CompressedSize:_,zip64Offset:p,zip64DiskNumberStart:b},T,{dataDescriptor:D}){if(D||(i||Dt(T,to+4,r),f||(Dt(T,kl+4,o),Dt(T,Il+4,h))),f&&s){let G=tl+zt(u)+4;y&&(ve(T,G,BigInt(h)),G+=8),_&&(ve(T,G,BigInt(o)),G+=8),p&&(ve(T,G,BigInt(v)),G+=8),b&&Dt(T,G,m)}}function dh({compressedSize:u,uncompressedSize:i,offset:f,diskNumberStart:s,zip64UncompressedSize:r,zip64CompressedSize:o,zip64Offset:h,zip64DiskNumberStart:v,rawExtraFieldZip64:m}){const y=Ue(m);let _=4;r&&(ve(y,_,BigInt(i)),_+=8),o&&(ve(y,_,BigInt(u)),_+=8),h&&(ve(y,_,BigInt(f)),_+=8),v&&Dt(y,_,s)}async function $_(u,i,f){const{files:s,writer:r}=u,{diskOffset:o}=r;let{diskNumber:h}=r,v=0,m=0,y=u.offset-o,_=s.size;for(const[,I]of s){const{rawFilename:B,rawExtraFieldZip64:it,rawExtraFieldAES:X,rawComment:et,rawExtraFieldNTFS:ut,rawExtraField:st,extendedTimestamp:at,extraFieldExtendedTimestampFlag:_t,lastModDate:pt}=I;let yt;if(at){yt=new Uint8Array(9);const ot=Ue(yt);Lt(ot,0,Pr),Lt(ot,2,5),Jr(ot,4,_t),Dt(ot,5,Math.floor(pt.getTime()/1e3))}else yt=new Uint8Array;I.rawExtraFieldExtendedTimestamp=yt,m+=46+zt(B,et,it,X,ut,yt,st)}const p=new Uint8Array(m),b=Ue(p);await ta(r);let T=0;for(const[I,B]of Array.from(s.values()).entries()){const{offset:it,rawFilename:X,rawExtraFieldZip64:et,rawExtraFieldAES:ut,rawExtraFieldExtendedTimestamp:st,rawExtraFieldNTFS:at,rawExtraField:_t,rawComment:pt,versionMadeBy:yt,headerArray:ot,headerView:N,zip64:V,zip64UncompressedSize:lt,zip64CompressedSize:rt,zip64DiskNumberStart:gt,zip64Offset:E,internalFileAttributes:R,externalFileAttributes:k,diskNumberStart:w,uncompressedSize:U,compressedSize:L}=B,P=zt(et,ut,st,at,_t);Dt(b,v,Cr),Lt(b,v+4,yt),lt||Dt(N,Il,U),rt||Dt(N,kl,L),re(p,ot,v+6);let H=v+tl;if(Lt(b,H,P),H+=2,Lt(b,H,zt(pt)),H+=2,Lt(b,H,V&&gt?le:w),H+=2,Lt(b,H,R),H+=2,k&&Dt(b,H,k),H+=4,Dt(b,H,V&&E?ce:it),H+=4,re(p,X,H),H+=zt(X),re(p,et,H),H+=zt(et),re(p,ut,H),H+=zt(ut),re(p,st,H),H+=zt(st),re(p,at,H),H+=zt(at),re(p,_t,H),H+=zt(_t),re(p,pt,H),v-T>r.availableSize&&(r.availableSize=0,await $n(r,p.slice(T,v)),T=v),v=H,f.onprogress)try{await f.onprogress(I+1,s.size,new qc(B))}catch{}}await $n(r,T?p.slice(T):p);let D=r.diskNumber;const{availableSize:G}=r;G<vn&&D++;let W=Ct(u,f,vo);if(y>ce||m>ce||_>le||D>le){if(W===!1)throw new Error(Kc);W=!0}const J=new Uint8Array(W?Bv:vn),Z=Ue(J);v=0,W&&(Dt(Z,0,Lr),ve(Z,4,BigInt(44)),Lt(Z,12,45),Lt(Z,14,45),Dt(Z,16,D),Dt(Z,20,h),ve(Z,24,BigInt(_)),ve(Z,32,BigInt(_)),ve(Z,40,BigInt(m)),ve(Z,48,BigInt(y)),Dt(Z,56,Nh),ve(Z,64,BigInt(y)+BigInt(m)),Dt(Z,72,D+1),Ct(u,f,km,!0)&&(D=le,h=le),_=le,y=ce,m=ce,v+=Ii+ki),Dt(Z,v,zh),Lt(Z,v+4,D),Lt(Z,v+6,h),Lt(Z,v+8,_),Lt(Z,v+10,_),Dt(Z,v+12,m),Dt(Z,v+16,y);const $=zt(i);if($)if($<=le)Lt(Z,v+20,$);else throw new Error(e3);await $n(r,J),$&&await $n(r,i)}async function $n(u,i){const{writable:f}=u,s=f.getWriter();try{await s.ready,u.size+=zt(i),await s.write(i)}finally{s.releaseLock()}}function Rr(u){if(u)return(BigInt(u.getTime())+BigInt(116444736e5))*BigInt(1e4)}function Ct(u,i,f,s){const r=i[f]===At?u.options[f]:i[f];return r===At?s:r}function hh(u){return u+5*(Math.floor(u/16383)+1)}function Jr(u,i,f){u.setUint8(i,f)}function Lt(u,i,f){u.setUint16(i,f,!0)}function Dt(u,i,f){u.setUint32(i,f,!0)}function ve(u,i,f){u.setBigUint64(i,f,!0)}function re(u,i,f){u.set(i,f)}function Ue(u){return new DataView(u.buffer)}function zt(...u){let i=0;return u.forEach(f=>f&&(i+=f.length)),i}function r3({version:u,bitFlag:i,compressionMethod:f,uncompressedSize:s,compressedSize:r,lastModDate:o,rawFilename:h,zip64CompressedSize:v,zip64UncompressedSize:m,extraFieldLength:y}){const _=new Uint8Array(tl-4),p=Ue(_);Lt(p,0,u),Lt(p,2,i),Lt(p,4,f);const b=new Uint32Array(1),T=Ue(b);Lt(T,0,(o.getHours()<<6|o.getMinutes())<<5|o.getSeconds()/2),Lt(T,2,(o.getFullYear()-1980<<4|o.getMonth()+1)<<5|o.getDate());const D=b[0];return Dt(p,6,D),(v||r!==At)&&Dt(p,kl,v?ce:r),(m||s!==At)&&Dt(p,Il,m?ce:s),Lt(p,22,zt(h)),Lt(p,24,y),{headerArray:_,headerView:p,rawLastModDate:D}}function o3(u,i,f,s,r){let o=0;return i&&(o=o|Br),f&&(o=o|jr),(r==Wr||r==jv)&&(u>=0&&u<=3&&(o=o|Vv),u>3&&u<=5&&(o=o|Xv),u==9&&(o=o|Zv)),s&&(o=o|Hr),o}Zh({Deflate:Lv});const P_=Object.freeze(Object.defineProperty({__proto__:null,BlobReader:so,BlobWriter:vm,Data64URIReader:q4,Data64URIWriter:Z4,ERR_DUPLICATED_NAME:t3,ERR_HTTP_RANGE:iu,ERR_INVALID_COMMENT:e3,ERR_INVALID_ENCRYPTION_STRENGTH:l3,ERR_INVALID_ENTRY_COMMENT:n3,ERR_INVALID_ENTRY_NAME:a3,ERR_INVALID_EXTRAFIELD_DATA:u3,ERR_INVALID_EXTRAFIELD_TYPE:i3,ERR_INVALID_VERSION:Kr,ERR_ITERATOR_COMPLETED_TOO_SOON:mm,ERR_UNDEFINED_UNCOMPRESSED_SIZE:c3,ERR_UNSUPPORTED_FORMAT:Kc,ERR_WRITER_NOT_INITIALIZED:ym,ERR_ZIP_NOT_EMPTY:s3,GenericReader:Fc,GenericWriter:oo,HttpRangeReader:K4,HttpReader:Tm,Reader:Ma,SplitDataReader:ro,SplitDataWriter:Yc,SplitZipReader:W4,SplitZipWriter:$4,TextReader:X4,TextWriter:V4,Uint8ArrayReader:J4,Uint8ArrayWriter:k4,Writer:co,ZipWriter:f3,ZipWriterStream:X_,configure:Zh,getMimeType:kv,initStream:ta,readUint8Array:Ee,terminateWorkers:M4},Symbol.toStringTag,{value:"Module"})),Vl=P_;async function tp(u,i){Vl.configure({useWebWorkers:!1});const f=new Vl.ZipWriter(new Vl.BlobWriter("application/zip")),s=[];i&&s.push(i,"");for(let r=0;r<u.length;r++){const o=r+1,h=u[r],v=h.sessionTitle||"session",m=h.title||"tab",y=`screenshot ${o}: ${v} / ${m} @ ${h.url} (${h.viewportWidth}x${h.viewportHeight})`;if(s.push(`## ${y}`),h.data){const _=`annotations-${o}.png`;await f.add(_,new Vl.Uint8ArrayReader(Uint8Array.fromBase64(h.data))),s.push(`- [Screenshot ${o}](${_})`)}if(h.ariaSnapshot){const _=`annotations-${o}.yaml`,b=[...h.annotations.map(T=>`# { x: ${T.x}, y: ${T.y}, width: ${T.width}, height: ${T.height} }: ${T.text}`),h.ariaSnapshot].join(`
`);await f.add(_,new Vl.TextReader(b)),s.push(`- [Aria snapshot ${o}](${_})`)}for(const _ of h.annotations)_.text&&s.push(`- { x: ${_.x}, y: ${_.y}, width: ${_.width}, height: ${_.height} }: ${_.text}`);s.push("")}return await f.add("feedback.md",new Vl.TextReader(s.join(`
`))),f.close()}const ep={sessions:[],clientInfo:void 0,loadingSessions:!0,tabs:null,liveFrame:void 0,annotateSession:null,pendingCapture:!1,mode:"readonly",recording:null};class np{constructor(i){this.state=ep,this._listeners=new Set,this._requestId=0,this._client=i,i.on("sessions",f=>this._emit({sessions:f.sessions,clientInfo:f.clientInfo,loadingSessions:!1})),i.on("tabs",f=>this._emit({tabs:f.tabs})),i.on("frame",f=>this._emit({liveFrame:f})),i.on("annotate",()=>this.enterAnnotate("cli")),i.on("cancelAnnotate",()=>this.cancelAnnotate(!1))}subscribe(i){return this._listeners.add(i),()=>{this._listeners.delete(i)}}sessionByGuid(i){return this.state.sessions.find(f=>f.browser.guid===i)}closeSession(i){this._client.closeSession({browser:i.browser.guid})}setVisible(i){this._client.setVisible({visible:i})}selectTab(i){this._client.selectTab({browser:i.browser,context:i.context,page:i.page})}closeTab(i){this._client.closeTab({browser:i.browser,context:i.context,page:i.page})}newTab(i,f){this._client.newTab({browser:i,context:f})}navigate(i){this._client.navigate({url:i})}back(){this._client.back()}forward(){this._client.forward()}reload(){this._client.reload()}mousemove(i,f){this._client.mousemove({x:i,y:f})}mousedown(i,f,s){this._client.mousedown({x:i,y:f,button:s})}mouseup(i,f,s){this._client.mouseup({x:i,y:f,button:s})}wheel(i,f){this._client.wheel({deltaX:i,deltaY:f})}keydown(i){this._client.keydown({key:i})}keyup(i){this._client.keyup({key:i})}toggleInteractive(){const i=this.state.mode==="interactive"?"readonly":"interactive";i==="interactive"?this._enterInteractive():this._emit({mode:i})}enterInteractive(){this._enterInteractive()}enterAnnotate(i){this._enterAnnotate(i)}addAnnotateFrame(){this._addAnnotateFrame()}selectAnnotateFrame(i,f){const s=this.state.annotateSession;!s||!s.frames.find(r=>r.id===i)||this._emit({annotateSession:{...s,selectedFrameId:i,focusAnnotationId:f??null},mode:"annotate"})}toggleSelectFrame(i){const f=this.state.annotateSession;f&&(f.selectedFrameId===i?this._emit({annotateSession:{...f,selectedFrameId:null,focusAnnotationId:null},mode:"readonly"}):this.selectAnnotateFrame(i))}deselectFrame(){const i=this.state.annotateSession;!i||i.selectedFrameId===null||this._emit({annotateSession:{...i,selectedFrameId:null,focusAnnotationId:null},mode:"readonly"})}removeAnnotateFrame(i){const f=this.state.annotateSession;if(!f)return;const s=f.frames.filter(o=>o.id!==i);if(s.length===0){this.cancelAnnotate();return}const r=f.selectedFrameId===i?null:f.selectedFrameId;this._emit({annotateSession:{...f,frames:s,selectedFrameId:r}})}updateFrameAnnotations(i,f){const s=this.state.annotateSession;if(!s)return;const r=s.frames.map(o=>o.id===i?{...o,annotations:f}:o);this._emit({annotateSession:{...s,frames:r}})}updateFeedback(i){const f=this.state.annotateSession;f&&this._emit({annotateSession:{...f,feedback:i}})}completeAnnotation(){this._completeAnnotation()}startRecording(){this._startRecording()}stopRecording(){this._stopRecording()}discardRecording(){this._discardRecording()}cancelAnnotate(i=!0){var s;this._requestId++;const f=this.state;i&&((s=f.annotateSession)==null?void 0:s.initiator)==="cli"&&this._client.cancelAnnotation(),this._emit({mode:f.mode==="annotate"?"readonly":f.mode,annotateSession:null,pendingCapture:!1})}async submitAnnotateSession(){const i=this.state.annotateSession;if(!i)return;const f=[];for(const s of i.frames){const r=await ap(s);f.push({data:r??s.data,ariaSnapshot:s.ariaSnapshot,annotations:s.annotations.map(o=>({x:o.x,y:o.y,width:o.width,height:o.height,text:o.text})),sessionTitle:s.sessionTitle,title:s.title,url:s.url,viewportWidth:s.viewportWidth,viewportHeight:s.viewportHeight})}if(i.initiator==="cli")await this._client.submitAnnotation({frames:f,feedback:i.feedback});else{const s=await tp(f,i.feedback),r=new Date().toISOString().replace(/[:.]/g,"-");if(!await bh(s,`annotations-${r}.zip`))return}this.cancelAnnotate()}async _enterInteractive(){var f;const i=this.state;this._emit({mode:"interactive",annotateSession:(f=i.annotateSession)!=null&&f.selectedFrameId?{...i.annotateSession,selectedFrameId:null,focusAnnotationId:null}:i.annotateSession})}async _enterAnnotate(i){const f=this.state;if(f.annotateSession){i==="cli"&&f.annotateSession.initiator!=="cli"&&this._emit({annotateSession:{...f.annotateSession,initiator:"cli"}}),await this._addAnnotateFrame();return}await this._discardRecording(),await this._addAnnotateFrame(i)}async _addAnnotateFrame(i){var y,_;if(this.state.pendingCapture)return;const f=++this._requestId;this._emit({pendingCapture:!0});let s;try{s=await this._client.screenshot()}catch{}if(f!==this._requestId)return;if(!s){this._emit({pendingCapture:!1});return}const r=(y=this.state.tabs)==null?void 0:y.find(p=>p.selected),o=((_=this.state.sessions.find(p=>p.browser.guid===(r==null?void 0:r.browser)))==null?void 0:_.title)??"",h={id:"frm-"+Math.random().toString(36).slice(2,10),data:s.data,viewportWidth:s.viewportWidth,viewportHeight:s.viewportHeight,ariaSnapshot:s.ariaSnapshot,sessionTitle:o,title:(r==null?void 0:r.title)??"",url:(r==null?void 0:r.url)??"",annotations:[]},v=this.state.annotateSession,m=v?{...v,frames:[...v.frames,h],selectedFrameId:h.id,focusAnnotationId:null}:{initiator:i??"user",frames:[h],selectedFrameId:h.id,focusAnnotationId:null,feedback:""};this._emit({annotateSession:m,pendingCapture:!1,mode:"annotate"})}async _completeAnnotation(){var f;((f=this.state.annotateSession)==null?void 0:f.initiator)==="cli"?await this.submitAnnotateSession().catch(()=>{}):this.cancelAnnotate()}async _startRecording(){this.state.annotateSession&&this.cancelAnnotate(),await this._client.startRecording(),this._emit({recording:{phase:"recording"}})}async _stopRecording(){const{streamId:i}=await this._client.stopRecording(),f=[];for(;;){const{data:o,eof:h}=await this._client.readStream({streamId:i});if(o&&f.push(lp(o,"video/webm")),h)break}const s=new Blob(f,{type:"video/webm"}),r=URL.createObjectURL(s);this._emit({recording:{phase:"stopped",blob:s,blobUrl:r}})}async _discardRecording(){var f,s;const i=this.state;if(((f=i.recording)==null?void 0:f.phase)==="recording")try{const{streamId:r}=await this._client.stopRecording();for(;;){const{eof:o}=await this._client.readStream({streamId:r});if(o)break}}catch{}((s=i.recording)==null?void 0:s.phase)==="stopped"&&URL.revokeObjectURL(i.recording.blobUrl),this._emit({recording:null})}_emit(i){this.state={...this.state,...i};for(const f of this._listeners)f()}}async function ap(u){const i=new Image;i.src="data:image/png;base64,"+u.data;try{await i.decode()}catch{return}const f=await ph(i,u.viewportWidth,u.viewportHeight,u.annotations);if(!f)return;const s=await f.arrayBuffer();return new Uint8Array(s).toBase64()}function lp(u,i){return new Blob([Uint8Array.fromBase64(u)],{type:i})}class ip{constructor(i){this._lastId=0,this._pending=new Map,this._sendQueue=[],this._closed=!1,this._ws=new WebSocket(i),this._ws.onopen=()=>{for(const f of this._sendQueue||[])this._ws.send(f);this._sendQueue=void 0,this.onopen&&this.onopen()},this._ws.onmessage=f=>{let s;try{s=JSON.parse(f.data)}catch{this._ws.close();return}if(s.id!==void 0){const r=this._pending.get(s.id);r&&(this._pending.delete(s.id),s.error?r.reject(new Error(s.error)):r.resolve(s.result))}else s.method&&this.onevent&&this.onevent(s.method,s.params)},this._ws.onclose=f=>{this._closed=!0,this._sendQueue=void 0;for(const{reject:s}of this._pending.values())s(new Error("Connection closed"));this._pending.clear(),this.onclose&&this.onclose(f.reason)},this._ws.onerror=()=>{}}sendNoReply(i,f){this.send(i,f).catch(()=>{})}send(i,f){if(this._closed)return Promise.reject(new Error("Connection closed"));const s=++this._lastId,r=JSON.stringify({id:s,method:i,params:f});return this._sendQueue?this._sendQueue.push(r):this._ws.send(r),new Promise((o,h)=>{this._pending.set(s,{resolve:o,reject:h})})}close(){this._ws.close()}}class _o{constructor(i){this._listeners=new Map,this._transport=i,this._transport.onopen=()=>{var f;(f=this.onopen)==null||f.call(this)},this._transport.onevent=(f,s)=>{this._fireEvent(f,s)},this._transport.onclose=f=>{var s;(s=this.onclose)==null||s.call(this,f)}}static create(i){const f=new ip(i),s=new _o(f);return new Proxy(s,{get(r,o,h){if(typeof o=="symbol"||o in r)return Reflect.get(r,o,h);if(o!=="then")return v=>r._transport.send(o,v)}})}_fireEvent(i,f){const s=this._listeners.get(i);if(s)for(const r of s)r(f)}on(i,f){let s=this._listeners.get(i);s||(s=new Set,this._listeners.set(i,s)),s.add(f)}off(i,f){var s;(s=this._listeners.get(i))==null||s.delete(f)}close(){this._transport.close()}}const up=()=>{const[u,i]=mt.useState(!1),[f,s]=Qg(),r=mt.useRef(null);return mt.useEffect(()=>{if(!u)return;const o=v=>{r.current&&!r.current.contains(v.target)&&i(!1)},h=v=>{v.key==="Escape"&&i(!1)};return document.addEventListener("mousedown",o),document.addEventListener("keydown",h),()=>{document.removeEventListener("mousedown",o),document.removeEventListener("keydown",h)}},[u]),O.jsxs("div",{ref:r,className:"settings-button-container",children:[O.jsx(ln,{className:"settings-gear-btn",title:"Settings",toggled:u,onClick:()=>i(!u),children:O.jsx(iv,{})}),u&&O.jsx("div",{className:"settings-popup",children:O.jsxs("div",{className:"setting-row",children:[O.jsx("span",{className:"setting-label",children:"Theme"}),O.jsx("div",{className:"setting-options",children:qg.map(o=>O.jsx("div",{className:"setting-option"+(f===o.value?" selected":""),onClick:()=>{s(o.value),i(!1)},children:o.label},o.value))})]})})]})},mh=new Map;function cp({name:u,items:i=[],id:f,render:s,icon:r,isError:o,isWarning:h,isInfo:v,selectedItem:m,onAccepted:y,onSelected:_,onHighlighted:p,onIconClicked:b,noItemsMessage:T,dataTestId:D,notSelectable:G,ariaLabel:W}){const J=Wn.useRef(null),[Z,$]=Wn.useState();return Wn.useEffect(()=>{p==null||p(Z)},[p,Z]),Wn.useEffect(()=>{const I=J.current;if(!I)return;const B=()=>{mh.set(u,I.scrollTop)};return I.addEventListener("scroll",B,{passive:!0}),()=>I.removeEventListener("scroll",B)},[u]),Wn.useEffect(()=>{J.current&&(J.current.scrollTop=mh.get(u)||0)},[u]),O.jsx("div",{className:Ji("list-view vbox",u+"-list-view"),role:i.length>0?"listbox":void 0,"aria-label":W,children:O.jsxs("div",{className:Ji("list-view-content",G&&"not-selectable"),tabIndex:0,onKeyDown:I=>{var et;if(m&&I.key==="Enter"){y==null||y(m,i.indexOf(m));return}if(I.key!=="ArrowDown"&&I.key!=="ArrowUp")return;I.stopPropagation(),I.preventDefault();const B=m?i.indexOf(m):-1;let it=B;I.key==="ArrowDown"&&(B===-1?it=0:it=Math.min(B+1,i.length-1)),I.key==="ArrowUp"&&(B===-1?it=i.length-1:it=Math.max(B-1,0));const X=(et=J.current)==null?void 0:et.children.item(it);Yg(X||void 0),p==null||p(void 0),_==null||_(i[it],it),$(void 0)},ref:J,children:[T&&i.length===0&&O.jsx("div",{className:"list-view-empty",children:T}),i.map((I,B)=>{const it=s(I,B);return O.jsxs("div",{onDoubleClick:()=>y==null?void 0:y(I,B),role:"option",className:Ji("list-view-entry",m===I&&"selected",!G&&Z===I&&"highlighted",(o==null?void 0:o(I,B))&&"error",(h==null?void 0:h(I,B))&&"warning",(v==null?void 0:v(I,B))&&"info"),"aria-selected":m===I,onClick:()=>_==null?void 0:_(I,B),onMouseEnter:()=>$(I),onMouseLeave:()=>$(void 0),children:[r&&O.jsx("div",{className:"codicon "+(r(I,B)||"codicon-blank"),style:{minWidth:16,marginRight:4},onDoubleClick:X=>{X.preventDefault(),X.stopPropagation()},onClick:X=>{X.stopPropagation(),X.preventDefault(),b==null||b(I,B)}}),typeof it=="string"?O.jsx("div",{style:{textOverflow:"ellipsis",overflow:"hidden"},children:it}):it]},(f==null?void 0:f(I,B))||B)})]})})}const sp=cp;function fp(u){try{const f=new URL(u).hostname.replace(/^www\./,"");return f?f[0].toUpperCase():""}catch{return""}}function rp(u,i){if(!u||u==="Global")return u;let f=u;if(!u.startsWith("/")&&!u.startsWith("\\\\")&&!/^[A-Za-z]:[\\/]/.test(u)&&u.includes("/")&&(f="/"+u),i){if(f===i)return"~";if(f.startsWith(i+"/")||f.startsWith(i+"\\"))return"~"+f.slice(i.length)}return f}const op=({tab:u,model:i})=>O.jsxs(O.Fragment,{children:[u.faviconUrl?O.jsx("img",{className:"sidebar-tab-favicon",src:u.faviconUrl,alt:"","aria-hidden":"true"}):O.jsx("span",{className:"sidebar-tab-favicon placeholder","aria-hidden":"true",children:fp(u.url)}),O.jsxs("span",{className:"sidebar-tab-text",children:[O.jsx("span",{className:"sidebar-tab-title",children:u.title||"New Tab"}),O.jsx("span",{className:"sidebar-tab-url",children:u.url||"about:blank"})]}),O.jsx(ln,{className:"sidebar-tab-close",icon:"close",title:"Close tab",onClick:f=>{f.stopPropagation(),i.closeTab(u)}})]}),dp=({model:u})=>{const{sessions:i,clientInfo:f,loadingSessions:s,tabs:r}=u.state,o=i,h=mt.useMemo(()=>{const y=new Map;for(const _ of r??[]){let p=y.get(_.browser);p||(p=new Map,y.set(_.browser,p));let b=p.get(_.context);b||(b=[],p.set(_.context,b)),b.push(_)}return y},[r]),v=mt.useMemo(()=>{var y;return(y=r==null?void 0:r.find(_=>_.selected))==null?void 0:y.context},[r]),m=mt.useMemo(()=>{const y=new Map;for(const D of o){const G=D.workspaceDir||"Global";let W=y.get(G);W||(W=[],y.set(G,W)),W.push(D)}for(const D of y.values())D.sort((G,W)=>G.title.localeCompare(W.title));const _=(f==null?void 0:f.workspaceDir)||"Global",p=[...y.entries()],b=p.filter(([D])=>D===_),T=p.filter(([D])=>D!==_).sort((D,G)=>D[0].localeCompare(G[0]));return[...b,...T]},[o,f==null?void 0:f.workspaceDir]);return O.jsxs("nav",{className:"dashboard-shell-sidebar","aria-label":"Sessions",children:[O.jsxs("div",{className:"dashboard-shell-sidebar-header",children:[O.jsx("h2",{className:"dashboard-shell-sidebar-title",children:"Sessions"}),O.jsx(up,{})]}),O.jsxs("div",{className:"dashboard-shell-sidebar-content",children:[s&&O.jsx("p",{className:"sidebar-empty",role:"status","aria-live":"polite",children:"Loading sessions..."}),!s&&o.length===0&&O.jsx("p",{className:"sidebar-empty",role:"status","aria-live":"polite",children:"No open sessions."}),m.map(([y,_])=>{const p=rp(y,f==null?void 0:f.homeDir);return O.jsxs("section",{className:"workspace-group","aria-label":`Workspace ${p}`,children:[O.jsx("h3",{className:"workspace-header",children:O.jsx("span",{className:"workspace-path-full",title:p,children:p})}),_.map(b=>{var $;const T=b.browser.guid,D=b.browser.browserName,G=($=b.browser.launchOptions)==null?void 0:$.channel,W=h.get(T),J=W?[...W.entries()]:[];return(r===null?[{contextGuid:null,tabs:void 0}]:J.length===0?[{contextGuid:null,tabs:[]}]:J.map(([I,B])=>({contextGuid:I,tabs:B}))).map((I,B)=>{var et;const it=(et=I.tabs)==null?void 0:et.find(ut=>ut.context===v&&ut.selected),X=`${T}-${I.contextGuid??`placeholder-${B}`}`;return O.jsxs("section",{className:"sidebar-session session-chip"+(it?" active":""),"aria-label":`Session ${b.title}`,children:[O.jsxs("header",{className:"sidebar-session-row",children:[O.jsxs("div",{className:"session-browser-icon-wrap",title:G||D,children:[O.jsx("span",{className:"session-browser-icon","aria-hidden":"true",children:O.jsx($g,{browserName:D,channel:G})}),O.jsx(ln,{className:"session-browser-close",icon:"close",title:"Close session",onClick:()=>u.closeSession(b)})]}),O.jsx("span",{className:"session-chip-name",children:b.title}),O.jsx("div",{className:"sidebar-session-row-actions",children:I.contextGuid&&O.jsx(ln,{className:"sidebar-session-new-tab",icon:"add",title:"New tab",onClick:()=>u.newTab(T,I.contextGuid)})})]}),I.tabs===void 0?O.jsx("p",{className:"sidebar-tabs-loading",role:"status","aria-live":"polite",children:"Loading tabs..."}):O.jsx(sp,{name:`sidebar-tabs-${X}`,ariaLabel:`${b.title} tabs`,items:I.tabs,id:ut=>ut.page,selectedItem:it,onSelected:ut=>u.selectTab(ut),noItemsMessage:"No tabs open.",render:ut=>O.jsx(op,{tab:ut,model:u})})]},X)})})]},y)})]})]})},hp=50,mp=({sidebarSize:u,sidebarHidden:i=!1,sidebarIsFirst:f=!1,orientation:s="vertical",minSidebarSize:r=hp,settingName:o,sidebar:h,main:v})=>{const m=Math.max(r,u)*window.devicePixelRatio,[y,_]=x1(o?o+"."+s+":size":void 0,m),[p,b]=x1(o?o+"."+s+":size":void 0,m),[T,D]=Wn.useState(null),[G,W]=jg();let J;s==="vertical"?(J=p/window.devicePixelRatio,G&&G.height<J&&(J=G.height-10)):(J=y/window.devicePixelRatio,G&&G.width<J&&(J=G.width-10)),document.body.style.userSelect=T?"none":"inherit";let Z={};return s==="vertical"?f?Z={top:T?0:J-4,bottom:T?0:void 0,height:T?"initial":8}:Z={bottom:T?0:J-4,top:T?0:void 0,height:T?"initial":8}:f?Z={left:T?0:J-4,right:T?0:void 0,width:T?"initial":8}:Z={right:T?0:J-4,left:T?0:void 0,width:T?"initial":8},O.jsxs("div",{className:Ji("split-view",s,f&&"sidebar-first"),ref:W,children:[O.jsx("div",{className:"split-view-main",children:v}),!i&&O.jsx("div",{style:{flexBasis:J},className:"split-view-sidebar",children:h}),!i&&O.jsx("div",{style:Z,className:"split-view-resizer",onMouseDown:$=>D({offset:s==="vertical"?$.clientY:$.clientX,size:J}),onMouseUp:()=>D(null),onMouseMove:$=>{if(!$.buttons)D(null);else if(T){const B=(s==="vertical"?$.clientY:$.clientX)-T.offset,it=f?T.size+B:T.size-B,et=$.target.parentElement.getBoundingClientRect(),ut=Math.min(Math.max(r,it),(s==="vertical"?et.height:et.width)-r);s==="vertical"?b(ut*window.devicePixelRatio):_(ut*window.devicePixelRatio)}}})]})};Zg();const yp=new URLSearchParams(location.search).get("ws")??"",gp=_o.create("/"+yp),Uc=new np(gp),d3=()=>Uc.setVisible(!document.hidden);document.addEventListener("visibilitychange",d3);document.hidden&&d3();const vp=()=>{const[,u]=mt.useState(0);return mt.useEffect(()=>Uc.subscribe(()=>u(i=>i+1)),[]),O.jsx(mp,{orientation:"horizontal",sidebarIsFirst:!0,sidebarSize:320,minSidebarSize:220,settingName:"dashboardSessionSidebar",sidebar:O.jsx(dp,{model:Uc}),main:O.jsx("div",{className:"dashboard-shell-main",children:O.jsx(_v,{model:Uc})})})},xc=document.querySelector("#root"),_p=xc.__dashboardRoot??(xc.__dashboardRoot=Hg.createRoot(xc));_p.render(O.jsx(vp,{}));
scripts/node_modules/playwright-core/lib/vite/dashboard/assets/safari-na3_-uQk.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="194.5 190.1 135.1 135.1"><style>.b{color-interpolation-filters:srgb}.c{flood-opacity:.31}</style><defs><linearGradient id="a" x1="132.55" x2="134.37" y1="111.67" y2="-105.3" xlink:href="#b"><stop offset="0" stop-color="#d2d2d2"/><stop offset=".53" stop-color="#f2f2f2"/><stop offset="1" stop-color="#fff"/></linearGradient><linearGradient id="b" gradientUnits="userSpaceOnUse"/><linearGradient id="c" x1="65.44" x2="67.4" y1="115.72" y2="17.14" xlink:href="#b"><stop offset="0" stop-color="#005ad5"/><stop offset=".16" stop-color="#0875f0"/><stop offset=".31" stop-color="#218cee"/><stop offset=".63" stop-color="#27a5f3"/><stop offset=".81" stop-color="#25aaf2"/><stop offset="1" stop-color="#21aaef"/></linearGradient><linearGradient id="d" x1="158.7" x2="176.28" y1="96.71" y2="79.53" xlink:href="#b"><stop offset="0" stop-color="#c72e24"/><stop offset="1" stop-color="#fd3b2f"/></linearGradient><filter id="e" class="b"><feFlood flood-opacity=".28"/><feComposite in2="SourceGraphic" operator="in"/><feGaussianBlur stdDeviation="3"/><feOffset dx=".3" dy="2.8"/><feComposite in="SourceGraphic"/></filter><filter id="f" class="b"><feFlood class="c"/><feComposite class="c" in2="SourceGraphic" operator="out"/><feGaussianBlur flood-opacity=".3" stdDeviation=".7"/><feOffset dy="1.8"/><feComposite in2="SourceGraphic" operator="atop"/></filter><filter id="g" class="b"><feFlood flood-opacity=".61"/><feComposite in2="SourceGraphic" operator="in"/><feGaussianBlur stdDeviation=".5"/><feOffset dx=".8" dy=".8"/><feComposite in="SourceGraphic" result="A"/><feColorMatrix values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"/><feFlood flood-opacity=".4"/><feComposite in2="A" operator="in"/><feGaussianBlur stdDeviation="3.8"/><feOffset dx="2.3" dy="3.3"/><feComposite in="A"/></filter><filter id="h" width="110%" height="110%" x="-1%" y="-1%"><feGaussianBlur in="SourceAlpha" stdDeviation=".4"/><feOffset dx=".1" dy=".2"/><feComponentTransfer result="A"><feFuncA type="linear"/></feComponentTransfer><feFlood flood-color="rgba(0,0,0,0.5)"/><feComposite in2="A" operator="in"/><feMerge><feMergeNode/><feMergeNode in="SourceGraphic"/></feMerge></filter><radialGradient id="i" cx="-69.88" cy="69.29" r="54.01" gradientTransform="matrix(.9023 -.01249 .0377 2.7234 -9.44 -120.29)" xlink:href="#b"><stop offset="0" stop-color="#24a5f3" stop-opacity=".01"/><stop offset="1" stop-color="#1e8ceb" stop-opacity=".98"/></radialGradient><radialGradient id="j" cx="109.35" cy="13.76" r="93.08" gradientTransform="matrix(-.01822 1.0922 -1.042 -.01765 136.95 -115.33)" xlink:href="#b"><stop offset="0" stop-opacity="0"/><stop offset=".96" stop-color="#5488d6" stop-opacity="0"/><stop offset="1" stop-color="#5d96eb"/></radialGradient></defs><rect width="220" height="220" x="22" y="-106.53" fill="url(#a)" filter="url(#e)" ry="49" transform="matrix(.56938 0 0 .56921 186.86 255.75)"/><g filter="url(#f)" transform="translate(194.2 190.07)"><ellipse cx="67.77" cy="67.73" fill="url(#c)" paint-order="stroke fill markers" rx="54.01" ry="53.98"/><ellipse cx="-69.88" cy="69.29" fill="url(#i)" rx="54.01" ry="53.98" transform="translate(137.65 -1.55)"/></g><ellipse cx="120" cy="14.15" fill="url(#j)" rx="93.08" ry="93.67" transform="matrix(.58082 0 0 .57636 192.3 249.63)"/><g filter="url(#g)" transform="matrix(.58289 0 0 .56508 196.8 181.63)"><path fill="#cac7c8" d="m46 191.66.73.35 72.18-48.2-7.34-8.95L46 191.66Z"/><path fill="#fbfffc" d="m45.8 190.87.2.8 65.57-56.8-6.95-8.92-58.83 64.92Z"/><path fill="url(#d)" d="m118.91 143.81-7.35-8.95 66.08-57.2.27.73-59 65.42Z"/><path fill="#fb645c" d="m104.62 125.95 6.94 8.92 66.08-57.2-.65-.35-72.37 48.63Z"/></g><path stroke="#fff" stroke-linecap="round" stroke-miterlimit="1" stroke-width="1.33" d="m286.59 278.44 3.14-2.14m-11.23-17.8 7.8-1.37m-8.32-2.9 3.78-.3m-3.3-12.47 7.8 1.38m-8.2 3.03 3.76.38m-1.2-13.05 7.47 2.73m-3.77-10.5 6.86 3.96m-1.87-10.96 6.07 5.09m.05-11.07 5.09 6.07m1.97-10.99 3.97 6.86m3.7-10.53 2.71 7.43m5.62-9.62 1.37 7.8m15.62-7.89-1.38 7.8m9.82-5.6-2.72 7.42m10.5-3.75-3.96 6.86m10.98-1.89-5.12 6.07m16.18 6.96-6.87 3.96m10.45 3.88-7.45 2.7m9.64 5.6-7.82 1.38m7.81 15.79-7.82-1.39m5.6 9.7-7.44-2.71m3.8 10.47-6.87-3.95m1.91 10.98-6.07-5.07m-.05 11.2-5.1-6.08m-1.95 10.99-4-6.88m-3.87 10.5-2.7-7.43m-5.61 9.61-1.37-7.78m-15.78 7.75 1.4-7.86m-9.7 5.58 2.72-7.47m-10.5 3.73 3.97-6.87m-10.96 1.9 5.08-6.03m-8.26 3.13 2.75-2.68m3.84 8.23 2.2-3.1m5.2 7.44 1.66-3.45m6.43 6.47 1.02-3.7m7.52 5.32.43-3.82m8.08 3.8-.31-3.84m8.81 2.33-.97-3.69m9.06.75-1.58-3.48m9.05-.76-2.16-3.18m8.78-2.38-2.68-2.73m8.24-3.85-3.11-2.2m7.42-5.2-3.47-1.67m6.42-6.41-3.7-1.03m5.17-7.46-3.78-.37m3.8-8.24-3.81.3m2.35-8.8-3.7.97m.8-9.06-3.49 1.61m-1.03-9.12-3.2 2.2m-2.12-8.62-2.72 2.7m-3.84-8.28-2.23 3.12m-5.21-7.45-1.66 3.44m-6.55-6.32-1.02 3.63m-7.42-5.2-.38 3.81m-8.09-3.66.28 3.8m-8.79-2.34.95 3.68m-8.9-.72 1.61 3.46m-9.06.82 2.18 3.16m-8.82 2.27 2.68 2.7m-8.25 3.85 3.1 2.23m-7.44 5.17 3.42 1.66m-6.3 6.36 3.7 1.05m-3.71 24.39 3.7-.91m-2.44 5.03 7.48-2.72m-5.86 6.73 3.5-1.61m-1.53 5.43 6.87-3.95m-13.33-20.52 7.96.01m41.16-41.44v-7.96m.02 98.74.01-7.94m49.33-41.4-7.95-.01" filter="url(#h)" transform="translate(-65 7.73)"/></svg>
scripts/node_modules/playwright-core/lib/vite/dashboard/index.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,29 @@
<!--
  Copyright (c) Microsoft Corporation.
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at
      http://www.apache.org/licenses/LICENSE-2.0
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<!DOCTYPE html>
<html lang="en" translate="no">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" href="/playwright-logo.svg" type="image/svg+xml">
    <title>Playwright Dashboard</title>
    <script type="module" crossorigin src="/assets/index-C_5TMfeg.js"></script>
    <link rel="stylesheet" crossorigin href="/assets/index-BY2S1tHT.css">
  </head>
  <body>
    <div id="root"></div>
  </body>
</html>
scripts/node_modules/playwright-core/lib/vite/dashboard/playwright-logo.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
<svg width="400" height="400" viewBox="0 0 400 400" fill="none" xmlns="http://www.w3.org/2000/svg">
<defs>
  <mask id="bezel-mask">
    <rect width="400" height="400" fill="white"/>
    <rect x="32" y="32" width="336" height="302" rx="6" fill="black"/>
  </mask>
</defs>
<!-- Monitor bezel (ring, transparent screen area) -->
<rect x="20" y="20" width="360" height="326" rx="13" fill="#2D4552" mask="url(#bezel-mask)"/>
<!-- Stand neck -->
<rect x="190" y="346" width="20" height="20" fill="#2D4552"/>
<!-- Stand base -->
<rect x="152" y="366" width="96" height="14" rx="7" fill="#2D4552"/>
<!-- Playwright logo inscribed on screen (scale 0.755, centered) -->
<g transform="translate(49, 32) scale(0.755)">
<path d="M136.444 221.556C123.558 225.213 115.104 231.625 109.535 238.032C114.869 233.364 122.014 229.08 131.652 226.348C141.51 223.554 149.92 223.574 156.869 224.915V219.481C150.941 218.939 144.145 219.371 136.444 221.556ZM108.946 175.876L61.0895 188.484C61.0895 188.484 61.9617 189.716 63.5767 191.36L104.153 180.668C104.153 180.668 103.578 188.077 98.5847 194.705C108.03 187.559 108.946 175.876 108.946 175.876ZM149.005 288.347C81.6582 306.486 46.0272 228.438 35.2396 187.928C30.2556 169.229 28.0799 155.067 27.5 145.928C27.4377 144.979 27.4665 144.179 27.5336 143.446C24.04 143.657 22.3674 145.473 22.7077 150.721C23.2876 159.855 25.4633 174.016 30.4473 192.721C41.2301 233.225 76.8659 311.273 144.213 293.134C158.872 289.185 169.885 281.992 178.152 272.81C170.532 279.692 160.995 285.112 149.005 288.347ZM161.661 128.11V132.903H188.077C187.535 131.206 186.989 129.677 186.447 128.11H161.661Z" fill="#2D4552"/>
<path d="M193.981 167.584C205.861 170.958 212.144 179.287 215.465 186.658L228.711 190.42C228.711 190.42 226.904 164.623 203.57 157.995C181.741 151.793 168.308 170.124 166.674 172.496C173.024 167.972 182.297 164.268 193.981 167.584ZM299.422 186.777C277.573 180.547 264.145 198.916 262.535 201.255C268.89 196.736 278.158 193.031 289.837 196.362C301.698 199.741 307.976 208.06 311.307 215.436L324.572 219.212C324.572 219.212 322.736 193.41 299.422 186.777ZM286.262 254.795L176.072 223.99C176.072 223.99 177.265 230.038 181.842 237.869L274.617 263.805C282.255 259.386 286.262 254.795 286.262 254.795ZM209.867 321.102C122.618 297.71 133.166 186.543 147.284 133.865C153.097 112.156 159.073 96.0203 164.029 85.204C161.072 84.5953 158.623 86.1529 156.203 91.0746C150.941 101.747 144.212 119.124 137.7 143.45C123.586 196.127 113.038 307.29 200.283 330.682C241.406 341.699 273.442 324.955 297.323 298.659C274.655 319.19 245.714 330.701 209.867 321.102Z" fill="#2D4552"/>
<path d="M161.661 262.296V239.863L99.3324 257.537C99.3324 257.537 103.938 230.777 136.444 221.556C146.302 218.762 154.713 218.781 161.661 220.123V128.11H192.869C189.471 117.61 186.184 109.526 183.423 103.909C178.856 94.612 174.174 100.775 163.545 109.665C156.059 115.919 137.139 129.261 108.668 136.933C80.1966 144.61 57.179 142.574 47.5752 140.911C33.9601 138.562 26.8387 135.572 27.5049 145.928C28.0847 155.062 30.2605 169.224 35.2445 187.928C46.0272 228.433 81.663 306.481 149.01 288.342C166.602 283.602 179.019 274.233 187.626 262.291H161.661V262.296ZM61.0848 188.484L108.946 175.876C108.946 175.876 107.551 194.288 89.6087 199.018C71.6614 203.743 61.0848 188.484 61.0848 188.484Z" fill="#E2574C"/>
<path d="M341.786 129.174C329.345 131.355 299.498 134.072 262.612 124.185C225.716 114.304 201.236 97.0224 191.537 88.8994C177.788 77.3834 171.74 69.3802 165.788 81.4857C160.526 92.163 153.797 109.54 147.284 133.866C133.171 186.543 122.623 297.706 209.867 321.098C297.093 344.47 343.53 242.92 357.644 190.238C364.157 165.917 367.013 147.5 367.799 135.625C368.695 122.173 359.455 126.078 341.786 129.174ZM166.497 172.756C166.497 172.756 180.246 151.372 203.565 158C226.899 164.628 228.706 190.425 228.706 190.425L166.497 172.756ZM223.42 268.713C182.403 256.698 176.077 223.99 176.077 223.99L286.262 254.796C286.262 254.791 264.021 280.578 223.42 268.713ZM262.377 201.495C262.377 201.495 276.107 180.126 299.422 186.773C322.736 193.411 324.572 219.208 324.572 219.208L262.377 201.495Z" fill="#2EAD33"/>
<path d="M139.88 246.04L99.3324 257.532C99.3324 257.532 103.737 232.44 133.607 222.496L110.647 136.33L108.663 136.933C80.1918 144.611 57.1742 142.574 47.5704 140.911C33.9554 138.563 26.834 135.572 27.5001 145.929C28.08 155.063 30.2557 169.224 35.2397 187.929C46.0225 228.433 81.6583 306.481 149.005 288.342L150.989 287.719L139.88 246.04ZM61.0848 188.485L108.946 175.876C108.946 175.876 107.551 194.288 89.6087 199.018C71.6615 203.743 61.0848 188.485 61.0848 188.485Z" fill="#D65348"/>
<path d="M225.27 269.163L223.415 268.712C182.398 256.698 176.072 223.99 176.072 223.99L232.89 239.872L262.971 124.281L262.607 124.185C225.711 114.304 201.232 97.0224 191.532 88.8994C177.783 77.3834 171.735 69.3802 165.783 81.4857C160.526 92.163 153.797 109.54 147.284 133.866C133.171 186.543 122.623 297.706 209.867 321.097L211.655 321.5L225.27 269.163ZM166.497 172.756C166.497 172.756 180.246 151.372 203.565 158C226.899 164.628 228.706 190.425 228.706 190.425L166.497 172.756Z" fill="#1D8D22"/>
<path d="M141.946 245.451L131.072 248.537C133.641 263.019 138.169 276.917 145.276 289.195C146.513 288.922 147.74 288.687 149 288.342C152.302 287.451 155.364 286.348 158.312 285.145C150.371 273.361 145.118 259.789 141.946 245.451ZM137.7 143.451C132.112 164.307 127.113 194.326 128.489 224.436C130.952 223.367 133.554 222.371 136.444 221.551L138.457 221.101C136.003 188.939 141.308 156.165 147.284 133.866C148.799 128.225 150.318 122.978 151.832 118.085C149.393 119.637 146.767 121.228 143.776 122.867C141.759 129.093 139.722 135.898 137.7 143.451Z" fill="#C04B41"/>
</g>
</svg>
scripts/node_modules/playwright-core/lib/vite/htmlReport/index.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
<!DOCTYPE html>
<html style='scrollbar-gutter: stable both-edges;'>
  <head>
    <meta charset='UTF-8'>
    <meta name='color-scheme' content='dark light'>
    <meta name='viewport' content='width=device-width, initial-scale=1.0'>
    <title>Playwright Test Report</title>
    <script type="module" crossorigin src="./report.js"></script>
    <link rel="stylesheet" crossorigin href="./report.css">
  </head>
  <body>
    <div id='root'></div>
  </body>
</html>
scripts/node_modules/playwright-core/lib/vite/htmlReport/report.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
:root{--color-canvas-default-transparent: rgba(255,255,255,0);--color-marketing-icon-primary: #218bff;--color-marketing-icon-secondary: #54aeff;--color-diff-blob-addition-num-text: #24292f;--color-diff-blob-addition-fg: #24292f;--color-diff-blob-addition-num-bg: #CCFFD8;--color-diff-blob-addition-line-bg: #E6FFEC;--color-diff-blob-addition-word-bg: #ABF2BC;--color-diff-blob-deletion-num-text: #24292f;--color-diff-blob-deletion-fg: #24292f;--color-diff-blob-deletion-num-bg: #FFD7D5;--color-diff-blob-deletion-line-bg: #FFEBE9;--color-diff-blob-deletion-word-bg: rgba(255,129,130,.4);--color-diff-blob-hunk-num-bg: rgba(84,174,255,.4);--color-diff-blob-expander-icon: #57606a;--color-diff-blob-selected-line-highlight-mix-blend-mode: multiply;--color-diffstat-deletion-border: rgba(27,31,36,.15);--color-diffstat-addition-border: rgba(27,31,36,.15);--color-diffstat-addition-bg: #2da44e;--color-search-keyword-hl: #fff8c5;--color-prettylights-syntax-comment: #6e7781;--color-prettylights-syntax-constant: #0550ae;--color-prettylights-syntax-entity: #8250df;--color-prettylights-syntax-storage-modifier-import: #24292f;--color-prettylights-syntax-entity-tag: #116329;--color-prettylights-syntax-keyword: #cf222e;--color-prettylights-syntax-string: #0a3069;--color-prettylights-syntax-variable: #953800;--color-prettylights-syntax-brackethighlighter-unmatched: #82071e;--color-prettylights-syntax-invalid-illegal-text: #f6f8fa;--color-prettylights-syntax-invalid-illegal-bg: #82071e;--color-prettylights-syntax-carriage-return-text: #f6f8fa;--color-prettylights-syntax-carriage-return-bg: #cf222e;--color-prettylights-syntax-string-regexp: #116329;--color-prettylights-syntax-markup-list: #3b2300;--color-prettylights-syntax-markup-heading: #0550ae;--color-prettylights-syntax-markup-italic: #24292f;--color-prettylights-syntax-markup-bold: #24292f;--color-prettylights-syntax-markup-deleted-text: #82071e;--color-prettylights-syntax-markup-deleted-bg: #FFEBE9;--color-prettylights-syntax-markup-inserted-text: #116329;--color-prettylights-syntax-markup-inserted-bg: #dafbe1;--color-prettylights-syntax-markup-changed-text: #953800;--color-prettylights-syntax-markup-changed-bg: #ffd8b5;--color-prettylights-syntax-markup-ignored-text: #eaeef2;--color-prettylights-syntax-markup-ignored-bg: #0550ae;--color-prettylights-syntax-meta-diff-range: #8250df;--color-prettylights-syntax-brackethighlighter-angle: #57606a;--color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;--color-prettylights-syntax-constant-other-reference-link: #0a3069;--color-codemirror-text: #24292f;--color-codemirror-bg: #ffffff;--color-codemirror-gutters-bg: #ffffff;--color-codemirror-guttermarker-text: #ffffff;--color-codemirror-guttermarker-subtle-text: #6e7781;--color-codemirror-linenumber-text: #57606a;--color-codemirror-cursor: #24292f;--color-codemirror-selection-bg: rgba(84,174,255,.4);--color-codemirror-activeline-bg: rgba(234,238,242,.5);--color-codemirror-matchingbracket-text: #24292f;--color-codemirror-lines-bg: #ffffff;--color-codemirror-syntax-comment: #24292f;--color-codemirror-syntax-constant: #0550ae;--color-codemirror-syntax-entity: #8250df;--color-codemirror-syntax-keyword: #cf222e;--color-codemirror-syntax-storage: #cf222e;--color-codemirror-syntax-string: #0a3069;--color-codemirror-syntax-support: #0550ae;--color-codemirror-syntax-variable: #953800;--color-checks-bg: #24292f;--color-checks-run-border-width: 0px;--color-checks-container-border-width: 0px;--color-checks-text-primary: #f6f8fa;--color-checks-text-secondary: #8c959f;--color-checks-text-link: #54aeff;--color-checks-btn-icon: #afb8c1;--color-checks-btn-hover-icon: #f6f8fa;--color-checks-btn-hover-bg: rgba(255,255,255,.125);--color-checks-input-text: #eaeef2;--color-checks-input-placeholder-text: #8c959f;--color-checks-input-focus-text: #8c959f;--color-checks-input-bg: #32383f;--color-checks-input-shadow: none;--color-checks-donut-error: #fa4549;--color-checks-donut-pending: #bf8700;--color-checks-donut-success: #2da44e;--color-checks-donut-neutral: #afb8c1;--color-checks-dropdown-text: #afb8c1;--color-checks-dropdown-bg: #32383f;--color-checks-dropdown-border: #424a53;--color-checks-dropdown-shadow: rgba(27,31,36,.3);--color-checks-dropdown-hover-text: #f6f8fa;--color-checks-dropdown-hover-bg: #424a53;--color-checks-dropdown-btn-hover-text: #f6f8fa;--color-checks-dropdown-btn-hover-bg: #32383f;--color-checks-scrollbar-thumb-bg: #57606a;--color-checks-header-label-text: #d0d7de;--color-checks-header-label-open-text: #f6f8fa;--color-checks-header-border: #32383f;--color-checks-header-icon: #8c959f;--color-checks-line-text: #d0d7de;--color-checks-line-num-text: rgba(140,149,159,.75);--color-checks-line-timestamp-text: #8c959f;--color-checks-line-hover-bg: #32383f;--color-checks-line-selected-bg: rgba(33,139,255,.15);--color-checks-line-selected-num-text: #54aeff;--color-checks-line-dt-fm-text: #24292f;--color-checks-line-dt-fm-bg: #9a6700;--color-checks-gate-bg: rgba(125,78,0,.15);--color-checks-gate-text: #d0d7de;--color-checks-gate-waiting-text: #afb8c1;--color-checks-step-header-open-bg: #32383f;--color-checks-step-error-text: #ff8182;--color-checks-step-warning-text: #d4a72c;--color-checks-logline-text: #8c959f;--color-checks-logline-num-text: rgba(140,149,159,.75);--color-checks-logline-debug-text: #c297ff;--color-checks-logline-error-text: #d0d7de;--color-checks-logline-error-num-text: #ff8182;--color-checks-logline-error-bg: rgba(164,14,38,.15);--color-checks-logline-warning-text: #d0d7de;--color-checks-logline-warning-num-text: #d4a72c;--color-checks-logline-warning-bg: rgba(125,78,0,.15);--color-checks-logline-command-text: #54aeff;--color-checks-logline-section-text: #4ac26b;--color-checks-ansi-black: #24292f;--color-checks-ansi-black-bright: #32383f;--color-checks-ansi-white: #d0d7de;--color-checks-ansi-white-bright: #d0d7de;--color-checks-ansi-gray: #8c959f;--color-checks-ansi-red: #ff8182;--color-checks-ansi-red-bright: #ffaba8;--color-checks-ansi-green: #4ac26b;--color-checks-ansi-green-bright: #6fdd8b;--color-checks-ansi-yellow: #d4a72c;--color-checks-ansi-yellow-bright: #eac54f;--color-checks-ansi-blue: #54aeff;--color-checks-ansi-blue-bright: #80ccff;--color-checks-ansi-magenta: #c297ff;--color-checks-ansi-magenta-bright: #d8b9ff;--color-checks-ansi-cyan: #76e3ea;--color-checks-ansi-cyan-bright: #b3f0ff;--color-project-header-bg: #24292f;--color-project-sidebar-bg: #ffffff;--color-project-gradient-in: #ffffff;--color-project-gradient-out: rgba(255,255,255,0);--color-mktg-success: rgba(36,146,67,1);--color-mktg-info: rgba(19,119,234,1);--color-mktg-bg-shade-gradient-top: rgba(27,31,36,.065);--color-mktg-bg-shade-gradient-bottom: rgba(27,31,36,0);--color-mktg-btn-bg-top: hsla(228,82%,66%,1);--color-mktg-btn-bg-bottom: #4969ed;--color-mktg-btn-bg-overlay-top: hsla(228,74%,59%,1);--color-mktg-btn-bg-overlay-bottom: #3355e0;--color-mktg-btn-text: #ffffff;--color-mktg-btn-primary-bg-top: hsla(137,56%,46%,1);--color-mktg-btn-primary-bg-bottom: #2ea44f;--color-mktg-btn-primary-bg-overlay-top: hsla(134,60%,38%,1);--color-mktg-btn-primary-bg-overlay-bottom: #22863a;--color-mktg-btn-primary-text: #ffffff;--color-mktg-btn-enterprise-bg-top: hsla(249,100%,72%,1);--color-mktg-btn-enterprise-bg-bottom: #6f57ff;--color-mktg-btn-enterprise-bg-overlay-top: hsla(248,65%,63%,1);--color-mktg-btn-enterprise-bg-overlay-bottom: #614eda;--color-mktg-btn-enterprise-text: #ffffff;--color-mktg-btn-outline-text: #4969ed;--color-mktg-btn-outline-border: rgba(73,105,237,.3);--color-mktg-btn-outline-hover-text: #3355e0;--color-mktg-btn-outline-hover-border: rgba(51,85,224,.5);--color-mktg-btn-outline-focus-border: #4969ed;--color-mktg-btn-outline-focus-border-inset: rgba(73,105,237,.5);--color-mktg-btn-dark-text: #ffffff;--color-mktg-btn-dark-border: rgba(255,255,255,.3);--color-mktg-btn-dark-hover-text: #ffffff;--color-mktg-btn-dark-hover-border: rgba(255,255,255,.5);--color-mktg-btn-dark-focus-border: #ffffff;--color-mktg-btn-dark-focus-border-inset: rgba(255,255,255,.5);--color-avatar-bg: #ffffff;--color-avatar-border: rgba(27,31,36,.15);--color-avatar-stack-fade: #afb8c1;--color-avatar-stack-fade-more: #d0d7de;--color-avatar-child-shadow: -2px -2px 0 rgba(255,255,255,.8);--color-topic-tag-border: rgba(0,0,0,0);--color-select-menu-backdrop-border: rgba(0,0,0,0);--color-select-menu-tap-highlight: rgba(175,184,193,.5);--color-select-menu-tap-focus-bg: #b6e3ff;--color-overlay-shadow: 0 1px 3px rgba(27,31,36,.12), 0 8px 24px rgba(66,74,83,.12);--color-header-text: rgba(255,255,255,.7);--color-header-bg: #24292f;--color-header-logo: #ffffff;--color-header-search-bg: #24292f;--color-header-search-border: #57606a;--color-sidenav-selected-bg: #ffffff;--color-menu-bg-active: rgba(0,0,0,0);--color-control-transparent-bg-hover: #818b981a;--color-input-disabled-bg: rgba(175,184,193,.2);--color-timeline-badge-bg: #eaeef2;--color-ansi-black: #24292f;--color-ansi-black-bright: #57606a;--color-ansi-white: #6e7781;--color-ansi-white-bright: #8c959f;--color-ansi-gray: #6e7781;--color-ansi-red: #cf222e;--color-ansi-red-bright: #a40e26;--color-ansi-green: #116329;--color-ansi-green-bright: #1a7f37;--color-ansi-yellow: #4d2d00;--color-ansi-yellow-bright: #633c01;--color-ansi-blue: #0969da;--color-ansi-blue-bright: #218bff;--color-ansi-magenta: #8250df;--color-ansi-magenta-bright: #a475f9;--color-ansi-cyan: #1b7c83;--color-ansi-cyan-bright: #3192aa;--color-btn-text: #24292f;--color-btn-bg: #f6f8fa;--color-btn-border: rgba(27,31,36,.15);--color-btn-shadow: 0 1px 0 rgba(27,31,36,.04);--color-btn-inset-shadow: inset 0 1px 0 rgba(255,255,255,.25);--color-btn-hover-bg: #f3f4f6;--color-btn-hover-border: rgba(27,31,36,.15);--color-btn-active-bg: hsla(220,14%,93%,1);--color-btn-active-border: rgba(27,31,36,.15);--color-btn-selected-bg: hsla(220,14%,94%,1);--color-btn-focus-bg: #f6f8fa;--color-btn-focus-border: rgba(27,31,36,.15);--color-btn-focus-shadow: 0 0 0 3px rgba(9,105,218,.3);--color-btn-shadow-active: inset 0 .15em .3em rgba(27,31,36,.15);--color-btn-shadow-input-focus: 0 0 0 .2em rgba(9,105,218,.3);--color-btn-counter-bg: rgba(27,31,36,.08);--color-btn-primary-text: #ffffff;--color-btn-primary-bg: #2da44e;--color-btn-primary-border: rgba(27,31,36,.15);--color-btn-primary-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-primary-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-primary-hover-bg: #2c974b;--color-btn-primary-hover-border: rgba(27,31,36,.15);--color-btn-primary-selected-bg: hsla(137,55%,36%,1);--color-btn-primary-selected-shadow: inset 0 1px 0 rgba(0,45,17,.2);--color-btn-primary-disabled-text: rgba(255,255,255,.8);--color-btn-primary-disabled-bg: #94d3a2;--color-btn-primary-disabled-border: rgba(27,31,36,.15);--color-btn-primary-focus-bg: #2da44e;--color-btn-primary-focus-border: rgba(27,31,36,.15);--color-btn-primary-focus-shadow: 0 0 0 3px rgba(45,164,78,.4);--color-btn-primary-icon: rgba(255,255,255,.8);--color-btn-primary-counter-bg: rgba(255,255,255,.2);--color-btn-outline-text: #0969da;--color-btn-outline-hover-text: #ffffff;--color-btn-outline-hover-bg: #0969da;--color-btn-outline-hover-border: rgba(27,31,36,.15);--color-btn-outline-hover-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-outline-hover-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-outline-hover-counter-bg: rgba(255,255,255,.2);--color-btn-outline-selected-text: #ffffff;--color-btn-outline-selected-bg: hsla(212,92%,42%,1);--color-btn-outline-selected-border: rgba(27,31,36,.15);--color-btn-outline-selected-shadow: inset 0 1px 0 rgba(0,33,85,.2);--color-btn-outline-disabled-text: rgba(9,105,218,.5);--color-btn-outline-disabled-bg: #f6f8fa;--color-btn-outline-disabled-counter-bg: rgba(9,105,218,.05);--color-btn-outline-focus-border: rgba(27,31,36,.15);--color-btn-outline-focus-shadow: 0 0 0 3px rgba(5,80,174,.4);--color-btn-outline-counter-bg: rgba(9,105,218,.1);--color-btn-danger-text: #cf222e;--color-btn-danger-hover-text: #ffffff;--color-btn-danger-hover-bg: #a40e26;--color-btn-danger-hover-border: rgba(27,31,36,.15);--color-btn-danger-hover-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-danger-hover-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-danger-hover-counter-bg: rgba(255,255,255,.2);--color-btn-danger-selected-text: #ffffff;--color-btn-danger-selected-bg: hsla(356,72%,44%,1);--color-btn-danger-selected-border: rgba(27,31,36,.15);--color-btn-danger-selected-shadow: inset 0 1px 0 rgba(76,0,20,.2);--color-btn-danger-disabled-text: rgba(207,34,46,.5);--color-btn-danger-disabled-bg: #f6f8fa;--color-btn-danger-disabled-counter-bg: rgba(207,34,46,.05);--color-btn-danger-focus-border: rgba(27,31,36,.15);--color-btn-danger-focus-shadow: 0 0 0 3px rgba(164,14,38,.4);--color-btn-danger-counter-bg: rgba(207,34,46,.1);--color-btn-danger-icon: #cf222e;--color-btn-danger-hover-icon: #ffffff;--color-underlinenav-icon: #6e7781;--color-underlinenav-border-hover: rgba(175,184,193,.2);--color-fg-default: #24292f;--color-fg-muted: #57606a;--color-fg-subtle: #6e7781;--color-fg-on-emphasis: #ffffff;--color-canvas-default: #ffffff;--color-canvas-overlay: #ffffff;--color-canvas-inset: #f6f8fa;--color-canvas-subtle: #f6f8fa;--color-border-default: #d0d7de;--color-border-muted: hsla(210,18%,87%,1);--color-border-subtle: rgba(27,31,36,.15);--color-shadow-small: 0 1px 0 rgba(27,31,36,.04);--color-shadow-medium: 0 3px 6px rgba(140,149,159,.15);--color-shadow-large: 0 8px 24px rgba(140,149,159,.2);--color-shadow-extra-large: 0 12px 28px rgba(140,149,159,.3);--color-neutral-emphasis-plus: #24292f;--color-neutral-emphasis: #6e7781;--color-neutral-muted: rgba(175,184,193,.2);--color-neutral-subtle: rgba(234,238,242,.5);--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-accent-muted: rgba(84,174,255,.4);--color-accent-subtle: #ddf4ff;--color-success-fg: #1a7f37;--color-success-emphasis: #2da44e;--color-success-muted: rgba(74,194,107,.4);--color-success-subtle: #dafbe1;--color-attention-fg: #9a6700;--color-attention-emphasis: #bf8700;--color-attention-muted: rgba(212,167,44,.4);--color-attention-subtle: #fff8c5;--color-severe-fg: #bc4c00;--color-severe-emphasis: #bc4c00;--color-severe-muted: rgba(251,143,68,.4);--color-severe-subtle: #fff1e5;--color-danger-fg: #cf222e;--color-danger-emphasis: #cf222e;--color-danger-muted: rgba(255,129,130,.4);--color-danger-subtle: #FFEBE9;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-done-muted: rgba(194,151,255,.4);--color-done-subtle: #fbefff;--color-sponsors-fg: #bf3989;--color-sponsors-emphasis: #bf3989;--color-sponsors-muted: rgba(255,128,200,.4);--color-sponsors-subtle: #ffeff7;--color-primer-canvas-backdrop: rgba(27,31,36,.5);--color-primer-canvas-sticky: rgba(255,255,255,.95);--color-primer-border-active: #FD8C73;--color-primer-border-contrast: rgba(27,31,36,.1);--color-primer-shadow-highlight: inset 0 1px 0 rgba(255,255,255,.25);--color-primer-shadow-inset: inset 0 1px 0 rgba(208,215,222,.2);--color-primer-shadow-focus: 0 0 0 3px rgba(9,105,218,.3);--color-scale-black: #1b1f24;--color-scale-white: #ffffff;--color-scale-gray-0: #f6f8fa;--color-scale-gray-1: #eaeef2;--color-scale-gray-2: #d0d7de;--color-scale-gray-3: #afb8c1;--color-scale-gray-4: #8c959f;--color-scale-gray-5: #6e7781;--color-scale-gray-6: #57606a;--color-scale-gray-7: #424a53;--color-scale-gray-8: #32383f;--color-scale-gray-9: #24292f;--color-scale-blue-0: #ddf4ff;--color-scale-blue-1: #b6e3ff;--color-scale-blue-2: #80ccff;--color-scale-blue-3: #54aeff;--color-scale-blue-4: #218bff;--color-scale-blue-5: #0969da;--color-scale-blue-6: #0550ae;--color-scale-blue-7: #033d8b;--color-scale-blue-8: #0a3069;--color-scale-blue-9: #002155;--color-scale-green-0: #dafbe1;--color-scale-green-1: #aceebb;--color-scale-green-2: #6fdd8b;--color-scale-green-3: #4ac26b;--color-scale-green-4: #2da44e;--color-scale-green-5: #1a7f37;--color-scale-green-6: #116329;--color-scale-green-7: #044f1e;--color-scale-green-8: #003d16;--color-scale-green-9: #002d11;--color-scale-yellow-0: #fff8c5;--color-scale-yellow-1: #fae17d;--color-scale-yellow-2: #eac54f;--color-scale-yellow-3: #d4a72c;--color-scale-yellow-4: #bf8700;--color-scale-yellow-5: #9a6700;--color-scale-yellow-6: #7d4e00;--color-scale-yellow-7: #633c01;--color-scale-yellow-8: #4d2d00;--color-scale-yellow-9: #3b2300;--color-scale-orange-0: #fff1e5;--color-scale-orange-1: #ffd8b5;--color-scale-orange-2: #ffb77c;--color-scale-orange-3: #fb8f44;--color-scale-orange-4: #e16f24;--color-scale-orange-5: #bc4c00;--color-scale-orange-6: #953800;--color-scale-orange-7: #762c00;--color-scale-orange-8: #5c2200;--color-scale-orange-9: #471700;--color-scale-red-0: #FFEBE9;--color-scale-red-1: #ffcecb;--color-scale-red-2: #ffaba8;--color-scale-red-3: #ff8182;--color-scale-red-4: #fa4549;--color-scale-red-5: #cf222e;--color-scale-red-6: #a40e26;--color-scale-red-7: #82071e;--color-scale-red-8: #660018;--color-scale-red-9: #4c0014;--color-scale-purple-0: #fbefff;--color-scale-purple-1: #ecd8ff;--color-scale-purple-2: #d8b9ff;--color-scale-purple-3: #c297ff;--color-scale-purple-4: #a475f9;--color-scale-purple-5: #8250df;--color-scale-purple-6: #6639ba;--color-scale-purple-7: #512a97;--color-scale-purple-8: #3e1f79;--color-scale-purple-9: #2e1461;--color-scale-pink-0: #ffeff7;--color-scale-pink-1: #ffd3eb;--color-scale-pink-2: #ffadda;--color-scale-pink-3: #ff80c8;--color-scale-pink-4: #e85aad;--color-scale-pink-5: #bf3989;--color-scale-pink-6: #99286e;--color-scale-pink-7: #772057;--color-scale-pink-8: #611347;--color-scale-pink-9: #4d0336;--color-scale-coral-0: #FFF0EB;--color-scale-coral-1: #FFD6CC;--color-scale-coral-2: #FFB4A1;--color-scale-coral-3: #FD8C73;--color-scale-coral-4: #EC6547;--color-scale-coral-5: #C4432B;--color-scale-coral-6: #9E2F1C;--color-scale-coral-7: #801F0F;--color-scale-coral-8: #691105;--color-scale-coral-9: #510901 }:root.dark-mode{color-scheme:dark;--color-canvas-default-transparent: rgba(13,17,23,0);--color-marketing-icon-primary: #79c0ff;--color-marketing-icon-secondary: #1f6feb;--color-diff-blob-addition-num-text: #c9d1d9;--color-diff-blob-addition-fg: #c9d1d9;--color-diff-blob-addition-num-bg: rgba(63,185,80,.3);--color-diff-blob-addition-line-bg: rgba(46,160,67,.15);--color-diff-blob-addition-word-bg: rgba(46,160,67,.4);--color-diff-blob-deletion-num-text: #c9d1d9;--color-diff-blob-deletion-fg: #c9d1d9;--color-diff-blob-deletion-num-bg: rgba(248,81,73,.3);--color-diff-blob-deletion-line-bg: rgba(248,81,73,.15);--color-diff-blob-deletion-word-bg: rgba(248,81,73,.4);--color-diff-blob-hunk-num-bg: rgba(56,139,253,.4);--color-diff-blob-expander-icon: #8b949e;--color-diff-blob-selected-line-highlight-mix-blend-mode: screen;--color-diffstat-deletion-border: rgba(240,246,252,.1);--color-diffstat-addition-border: rgba(240,246,252,.1);--color-diffstat-addition-bg: #3fb950;--color-search-keyword-hl: rgba(210,153,34,.4);--color-prettylights-syntax-comment: #8b949e;--color-prettylights-syntax-constant: #79c0ff;--color-prettylights-syntax-entity: #d2a8ff;--color-prettylights-syntax-storage-modifier-import: #c9d1d9;--color-prettylights-syntax-entity-tag: #7ee787;--color-prettylights-syntax-keyword: #ff7b72;--color-prettylights-syntax-string: #a5d6ff;--color-prettylights-syntax-variable: #ffa657;--color-prettylights-syntax-brackethighlighter-unmatched: #f85149;--color-prettylights-syntax-invalid-illegal-text: #f0f6fc;--color-prettylights-syntax-invalid-illegal-bg: #8e1519;--color-prettylights-syntax-carriage-return-text: #f0f6fc;--color-prettylights-syntax-carriage-return-bg: #b62324;--color-prettylights-syntax-string-regexp: #7ee787;--color-prettylights-syntax-markup-list: #f2cc60;--color-prettylights-syntax-markup-heading: #1f6feb;--color-prettylights-syntax-markup-italic: #c9d1d9;--color-prettylights-syntax-markup-bold: #c9d1d9;--color-prettylights-syntax-markup-deleted-text: #ffdcd7;--color-prettylights-syntax-markup-deleted-bg: #67060c;--color-prettylights-syntax-markup-inserted-text: #aff5b4;--color-prettylights-syntax-markup-inserted-bg: #033a16;--color-prettylights-syntax-markup-changed-text: #ffdfb6;--color-prettylights-syntax-markup-changed-bg: #5a1e02;--color-prettylights-syntax-markup-ignored-text: #c9d1d9;--color-prettylights-syntax-markup-ignored-bg: #1158c7;--color-prettylights-syntax-meta-diff-range: #d2a8ff;--color-prettylights-syntax-brackethighlighter-angle: #8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;--color-prettylights-syntax-constant-other-reference-link: #a5d6ff;--color-codemirror-text: #c9d1d9;--color-codemirror-bg: #0d1117;--color-codemirror-gutters-bg: #0d1117;--color-codemirror-guttermarker-text: #0d1117;--color-codemirror-guttermarker-subtle-text: #484f58;--color-codemirror-linenumber-text: #8b949e;--color-codemirror-cursor: #c9d1d9;--color-codemirror-selection-bg: rgba(56,139,253,.4);--color-codemirror-activeline-bg: rgba(110,118,129,.1);--color-codemirror-matchingbracket-text: #c9d1d9;--color-codemirror-lines-bg: #0d1117;--color-codemirror-syntax-comment: #8b949e;--color-codemirror-syntax-constant: #79c0ff;--color-codemirror-syntax-entity: #d2a8ff;--color-codemirror-syntax-keyword: #ff7b72;--color-codemirror-syntax-storage: #ff7b72;--color-codemirror-syntax-string: #a5d6ff;--color-codemirror-syntax-support: #79c0ff;--color-codemirror-syntax-variable: #ffa657;--color-checks-bg: #010409;--color-checks-run-border-width: 1px;--color-checks-container-border-width: 1px;--color-checks-text-primary: #c9d1d9;--color-checks-text-secondary: #8b949e;--color-checks-text-link: #58a6ff;--color-checks-btn-icon: #8b949e;--color-checks-btn-hover-icon: #c9d1d9;--color-checks-btn-hover-bg: rgba(110,118,129,.1);--color-checks-input-text: #8b949e;--color-checks-input-placeholder-text: #484f58;--color-checks-input-focus-text: #c9d1d9;--color-checks-input-bg: #161b22;--color-checks-input-shadow: none;--color-checks-donut-error: #f85149;--color-checks-donut-pending: #d29922;--color-checks-donut-success: #2ea043;--color-checks-donut-neutral: #8b949e;--color-checks-dropdown-text: #c9d1d9;--color-checks-dropdown-bg: #161b22;--color-checks-dropdown-border: #30363d;--color-checks-dropdown-shadow: rgba(1,4,9,.3);--color-checks-dropdown-hover-text: #c9d1d9;--color-checks-dropdown-hover-bg: rgba(110,118,129,.1);--color-checks-dropdown-btn-hover-text: #c9d1d9;--color-checks-dropdown-btn-hover-bg: rgba(110,118,129,.1);--color-checks-scrollbar-thumb-bg: rgba(110,118,129,.4);--color-checks-header-label-text: #8b949e;--color-checks-header-label-open-text: #c9d1d9;--color-checks-header-border: #21262d;--color-checks-header-icon: #8b949e;--color-checks-line-text: #8b949e;--color-checks-line-num-text: #484f58;--color-checks-line-timestamp-text: #484f58;--color-checks-line-hover-bg: rgba(110,118,129,.1);--color-checks-line-selected-bg: rgba(56,139,253,.15);--color-checks-line-selected-num-text: #58a6ff;--color-checks-line-dt-fm-text: #f0f6fc;--color-checks-line-dt-fm-bg: #9e6a03;--color-checks-gate-bg: rgba(187,128,9,.15);--color-checks-gate-text: #8b949e;--color-checks-gate-waiting-text: #d29922;--color-checks-step-header-open-bg: #161b22;--color-checks-step-error-text: #f85149;--color-checks-step-warning-text: #d29922;--color-checks-logline-text: #8b949e;--color-checks-logline-num-text: #484f58;--color-checks-logline-debug-text: #a371f7;--color-checks-logline-error-text: #8b949e;--color-checks-logline-error-num-text: #484f58;--color-checks-logline-error-bg: rgba(248,81,73,.15);--color-checks-logline-warning-text: #8b949e;--color-checks-logline-warning-num-text: #d29922;--color-checks-logline-warning-bg: rgba(187,128,9,.15);--color-checks-logline-command-text: #58a6ff;--color-checks-logline-section-text: #3fb950;--color-checks-ansi-black: #0d1117;--color-checks-ansi-black-bright: #161b22;--color-checks-ansi-white: #b1bac4;--color-checks-ansi-white-bright: #b1bac4;--color-checks-ansi-gray: #6e7681;--color-checks-ansi-red: #ff7b72;--color-checks-ansi-red-bright: #ffa198;--color-checks-ansi-green: #3fb950;--color-checks-ansi-green-bright: #56d364;--color-checks-ansi-yellow: #d29922;--color-checks-ansi-yellow-bright: #e3b341;--color-checks-ansi-blue: #58a6ff;--color-checks-ansi-blue-bright: #79c0ff;--color-checks-ansi-magenta: #bc8cff;--color-checks-ansi-magenta-bright: #d2a8ff;--color-checks-ansi-cyan: #76e3ea;--color-checks-ansi-cyan-bright: #b3f0ff;--color-project-header-bg: #0d1117;--color-project-sidebar-bg: #161b22;--color-project-gradient-in: #161b22;--color-project-gradient-out: rgba(22,27,34,0);--color-mktg-success: rgba(41,147,61,1);--color-mktg-info: rgba(42,123,243,1);--color-mktg-bg-shade-gradient-top: rgba(1,4,9,.065);--color-mktg-bg-shade-gradient-bottom: rgba(1,4,9,0);--color-mktg-btn-bg-top: hsla(228,82%,66%,1);--color-mktg-btn-bg-bottom: #4969ed;--color-mktg-btn-bg-overlay-top: hsla(228,74%,59%,1);--color-mktg-btn-bg-overlay-bottom: #3355e0;--color-mktg-btn-text: #f0f6fc;--color-mktg-btn-primary-bg-top: hsla(137,56%,46%,1);--color-mktg-btn-primary-bg-bottom: #2ea44f;--color-mktg-btn-primary-bg-overlay-top: hsla(134,60%,38%,1);--color-mktg-btn-primary-bg-overlay-bottom: #22863a;--color-mktg-btn-primary-text: #f0f6fc;--color-mktg-btn-enterprise-bg-top: hsla(249,100%,72%,1);--color-mktg-btn-enterprise-bg-bottom: #6f57ff;--color-mktg-btn-enterprise-bg-overlay-top: hsla(248,65%,63%,1);--color-mktg-btn-enterprise-bg-overlay-bottom: #614eda;--color-mktg-btn-enterprise-text: #f0f6fc;--color-mktg-btn-outline-text: #f0f6fc;--color-mktg-btn-outline-border: rgba(240,246,252,.3);--color-mktg-btn-outline-hover-text: #f0f6fc;--color-mktg-btn-outline-hover-border: rgba(240,246,252,.5);--color-mktg-btn-outline-focus-border: #f0f6fc;--color-mktg-btn-outline-focus-border-inset: rgba(240,246,252,.5);--color-mktg-btn-dark-text: #f0f6fc;--color-mktg-btn-dark-border: rgba(240,246,252,.3);--color-mktg-btn-dark-hover-text: #f0f6fc;--color-mktg-btn-dark-hover-border: rgba(240,246,252,.5);--color-mktg-btn-dark-focus-border: #f0f6fc;--color-mktg-btn-dark-focus-border-inset: rgba(240,246,252,.5);--color-avatar-bg: rgba(240,246,252,.1);--color-avatar-border: rgba(240,246,252,.1);--color-avatar-stack-fade: #30363d;--color-avatar-stack-fade-more: #21262d;--color-avatar-child-shadow: -2px -2px 0 #0d1117;--color-topic-tag-border: rgba(0,0,0,0);--color-select-menu-backdrop-border: #484f58;--color-select-menu-tap-highlight: rgba(48,54,61,.5);--color-select-menu-tap-focus-bg: #0c2d6b;--color-overlay-shadow: 0 0 0 1px #30363d, 0 16px 32px rgba(1,4,9,.85);--color-header-text: rgba(240,246,252,.7);--color-header-bg: #161b22;--color-header-logo: #f0f6fc;--color-header-search-bg: #0d1117;--color-header-search-border: #30363d;--color-sidenav-selected-bg: #21262d;--color-menu-bg-active: #161b22;--color-control-transparent-bg-hover: #656c7633;--color-input-disabled-bg: rgba(110,118,129,0);--color-timeline-badge-bg: #21262d;--color-ansi-black: #484f58;--color-ansi-black-bright: #6e7681;--color-ansi-white: #b1bac4;--color-ansi-white-bright: #f0f6fc;--color-ansi-gray: #6e7681;--color-ansi-red: #ff7b72;--color-ansi-red-bright: #ffa198;--color-ansi-green: #3fb950;--color-ansi-green-bright: #56d364;--color-ansi-yellow: #d29922;--color-ansi-yellow-bright: #e3b341;--color-ansi-blue: #58a6ff;--color-ansi-blue-bright: #79c0ff;--color-ansi-magenta: #bc8cff;--color-ansi-magenta-bright: #d2a8ff;--color-ansi-cyan: #39c5cf;--color-ansi-cyan-bright: #56d4dd;--color-btn-text: #c9d1d9;--color-btn-bg: #21262d;--color-btn-border: rgba(240,246,252,.1);--color-btn-shadow: 0 0 transparent;--color-btn-inset-shadow: 0 0 transparent;--color-btn-hover-bg: #30363d;--color-btn-hover-border: #8b949e;--color-btn-active-bg: hsla(212,12%,18%,1);--color-btn-active-border: #6e7681;--color-btn-selected-bg: #161b22;--color-btn-focus-bg: #21262d;--color-btn-focus-border: #8b949e;--color-btn-focus-shadow: 0 0 0 3px rgba(139,148,158,.3);--color-btn-shadow-active: inset 0 .15em .3em rgba(1,4,9,.15);--color-btn-shadow-input-focus: 0 0 0 .2em rgba(31,111,235,.3);--color-btn-counter-bg: #30363d;--color-btn-primary-text: #ffffff;--color-btn-primary-bg: #238636;--color-btn-primary-border: rgba(240,246,252,.1);--color-btn-primary-shadow: 0 0 transparent;--color-btn-primary-inset-shadow: 0 0 transparent;--color-btn-primary-hover-bg: #2ea043;--color-btn-primary-hover-border: rgba(240,246,252,.1);--color-btn-primary-selected-bg: #238636;--color-btn-primary-selected-shadow: 0 0 transparent;--color-btn-primary-disabled-text: rgba(240,246,252,.5);--color-btn-primary-disabled-bg: rgba(35,134,54,.6);--color-btn-primary-disabled-border: rgba(240,246,252,.1);--color-btn-primary-focus-bg: #238636;--color-btn-primary-focus-border: rgba(240,246,252,.1);--color-btn-primary-focus-shadow: 0 0 0 3px rgba(46,164,79,.4);--color-btn-primary-icon: #f0f6fc;--color-btn-primary-counter-bg: rgba(240,246,252,.2);--color-btn-outline-text: #58a6ff;--color-btn-outline-hover-text: #58a6ff;--color-btn-outline-hover-bg: #30363d;--color-btn-outline-hover-border: rgba(240,246,252,.1);--color-btn-outline-hover-shadow: 0 1px 0 rgba(1,4,9,.1);--color-btn-outline-hover-inset-shadow: inset 0 1px 0 rgba(240,246,252,.03);--color-btn-outline-hover-counter-bg: rgba(240,246,252,.2);--color-btn-outline-selected-text: #f0f6fc;--color-btn-outline-selected-bg: #0d419d;--color-btn-outline-selected-border: rgba(240,246,252,.1);--color-btn-outline-selected-shadow: 0 0 transparent;--color-btn-outline-disabled-text: rgba(88,166,255,.5);--color-btn-outline-disabled-bg: #0d1117;--color-btn-outline-disabled-counter-bg: rgba(31,111,235,.05);--color-btn-outline-focus-border: rgba(240,246,252,.1);--color-btn-outline-focus-shadow: 0 0 0 3px rgba(17,88,199,.4);--color-btn-outline-counter-bg: rgba(31,111,235,.1);--color-btn-danger-text: #f85149;--color-btn-danger-hover-text: #f0f6fc;--color-btn-danger-hover-bg: #da3633;--color-btn-danger-hover-border: #f85149;--color-btn-danger-hover-shadow: 0 0 transparent;--color-btn-danger-hover-inset-shadow: 0 0 transparent;--color-btn-danger-hover-icon: #f0f6fc;--color-btn-danger-hover-counter-bg: rgba(255,255,255,.2);--color-btn-danger-selected-text: #ffffff;--color-btn-danger-selected-bg: #b62324;--color-btn-danger-selected-border: #ff7b72;--color-btn-danger-selected-shadow: 0 0 transparent;--color-btn-danger-disabled-text: rgba(248,81,73,.5);--color-btn-danger-disabled-bg: #0d1117;--color-btn-danger-disabled-counter-bg: rgba(218,54,51,.05);--color-btn-danger-focus-border: #f85149;--color-btn-danger-focus-shadow: 0 0 0 3px rgba(248,81,73,.4);--color-btn-danger-counter-bg: rgba(218,54,51,.1);--color-btn-danger-icon: #f85149;--color-underlinenav-icon: #484f58;--color-underlinenav-border-hover: rgba(110,118,129,.4);--color-fg-default: #c9d1d9;--color-fg-muted: #8b949e;--color-fg-subtle: #484f58;--color-fg-on-emphasis: #f0f6fc;--color-canvas-default: #0d1117;--color-canvas-overlay: #161b22;--color-canvas-inset: #010409;--color-canvas-subtle: #161b22;--color-border-default: #30363d;--color-border-muted: #21262d;--color-border-subtle: rgba(240,246,252,.1);--color-shadow-small: 0 0 transparent;--color-shadow-medium: 0 3px 6px #010409;--color-shadow-large: 0 8px 24px #010409;--color-shadow-extra-large: 0 12px 48px #010409;--color-neutral-emphasis-plus: #6e7681;--color-neutral-emphasis: #6e7681;--color-neutral-muted: rgba(110,118,129,.4);--color-neutral-subtle: rgba(110,118,129,.1);--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-accent-muted: rgba(56,139,253,.4);--color-accent-subtle: rgba(56,139,253,.15);--color-success-fg: #3fb950;--color-success-emphasis: #238636;--color-success-muted: rgba(46,160,67,.4);--color-success-subtle: rgba(46,160,67,.15);--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-attention-muted: rgba(187,128,9,.4);--color-attention-subtle: rgba(187,128,9,.15);--color-severe-fg: #db6d28;--color-severe-emphasis: #bd561d;--color-severe-muted: rgba(219,109,40,.4);--color-severe-subtle: rgba(219,109,40,.15);--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-danger-muted: rgba(248,81,73,.4);--color-danger-subtle: rgba(248,81,73,.15);--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-done-muted: rgba(163,113,247,.4);--color-done-subtle: rgba(163,113,247,.15);--color-sponsors-fg: #db61a2;--color-sponsors-emphasis: #bf4b8a;--color-sponsors-muted: rgba(219,97,162,.4);--color-sponsors-subtle: rgba(219,97,162,.15);--color-primer-canvas-backdrop: rgba(1,4,9,.8);--color-primer-canvas-sticky: rgba(13,17,23,.95);--color-primer-border-active: #F78166;--color-primer-border-contrast: rgba(240,246,252,.2);--color-primer-shadow-highlight: 0 0 transparent;--color-primer-shadow-inset: 0 0 transparent;--color-primer-shadow-focus: 0 0 0 3px #0c2d6b;--color-scale-black: #010409;--color-scale-white: #f0f6fc;--color-scale-gray-0: #f0f6fc;--color-scale-gray-1: #c9d1d9;--color-scale-gray-2: #b1bac4;--color-scale-gray-3: #8b949e;--color-scale-gray-4: #6e7681;--color-scale-gray-5: #484f58;--color-scale-gray-6: #30363d;--color-scale-gray-7: #21262d;--color-scale-gray-8: #161b22;--color-scale-gray-9: #0d1117;--color-scale-blue-0: #cae8ff;--color-scale-blue-1: #a5d6ff;--color-scale-blue-2: #79c0ff;--color-scale-blue-3: #58a6ff;--color-scale-blue-4: #388bfd;--color-scale-blue-5: #1f6feb;--color-scale-blue-6: #1158c7;--color-scale-blue-7: #0d419d;--color-scale-blue-8: #0c2d6b;--color-scale-blue-9: #051d4d;--color-scale-green-0: #aff5b4;--color-scale-green-1: #7ee787;--color-scale-green-2: #56d364;--color-scale-green-3: #3fb950;--color-scale-green-4: #2ea043;--color-scale-green-5: #238636;--color-scale-green-6: #196c2e;--color-scale-green-7: #0f5323;--color-scale-green-8: #033a16;--color-scale-green-9: #04260f;--color-scale-yellow-0: #f8e3a1;--color-scale-yellow-1: #f2cc60;--color-scale-yellow-2: #e3b341;--color-scale-yellow-3: #d29922;--color-scale-yellow-4: #bb8009;--color-scale-yellow-5: #9e6a03;--color-scale-yellow-6: #845306;--color-scale-yellow-7: #693e00;--color-scale-yellow-8: #4b2900;--color-scale-yellow-9: #341a00;--color-scale-orange-0: #ffdfb6;--color-scale-orange-1: #ffc680;--color-scale-orange-2: #ffa657;--color-scale-orange-3: #f0883e;--color-scale-orange-4: #db6d28;--color-scale-orange-5: #bd561d;--color-scale-orange-6: #9b4215;--color-scale-orange-7: #762d0a;--color-scale-orange-8: #5a1e02;--color-scale-orange-9: #3d1300;--color-scale-red-0: #ffdcd7;--color-scale-red-1: #ffc1ba;--color-scale-red-2: #ffa198;--color-scale-red-3: #ff7b72;--color-scale-red-4: #f85149;--color-scale-red-5: #da3633;--color-scale-red-6: #b62324;--color-scale-red-7: #8e1519;--color-scale-red-8: #67060c;--color-scale-red-9: #490202;--color-scale-purple-0: #eddeff;--color-scale-purple-1: #e2c5ff;--color-scale-purple-2: #d2a8ff;--color-scale-purple-3: #bc8cff;--color-scale-purple-4: #a371f7;--color-scale-purple-5: #8957e5;--color-scale-purple-6: #6e40c9;--color-scale-purple-7: #553098;--color-scale-purple-8: #3c1e70;--color-scale-purple-9: #271052;--color-scale-pink-0: #ffdaec;--color-scale-pink-1: #ffbedd;--color-scale-pink-2: #ff9bce;--color-scale-pink-3: #f778ba;--color-scale-pink-4: #db61a2;--color-scale-pink-5: #bf4b8a;--color-scale-pink-6: #9e3670;--color-scale-pink-7: #7d2457;--color-scale-pink-8: #5e103e;--color-scale-pink-9: #42062a;--color-scale-coral-0: #FFDDD2;--color-scale-coral-1: #FFC2B2;--color-scale-coral-2: #FFA28B;--color-scale-coral-3: #F78166;--color-scale-coral-4: #EA6045;--color-scale-coral-5: #CF462D;--color-scale-coral-6: #AC3220;--color-scale-coral-7: #872012;--color-scale-coral-8: #640D04;--color-scale-coral-9: #460701 }:root{--box-shadow: rgba(0, 0, 0, .133) 0px 1.6px 3.6px 0px, rgba(0, 0, 0, .11) 0px .3px .9px 0px;--box-shadow-thick: rgb(0 0 0 / 10%) 0px 1.8px 1.9px, rgb(0 0 0 / 15%) 0px 6.1px 6.3px, rgb(0 0 0 / 10%) 0px -2px 4px, rgb(0 0 0 / 15%) 0px -6.1px 12px, rgb(0 0 0 / 25%) 0px 6px 12px}*{box-sizing:border-box;min-width:0;min-height:0}svg{fill:currentColor}.vbox{display:flex;flex-direction:column;flex:auto;position:relative}.hbox{display:flex;flex:auto;position:relative}.hidden{visibility:hidden}.d-flex{display:flex!important}.d-inline{display:inline!important}.m-1{margin:4px}.m-2{margin:8px}.m-3{margin:16px}.m-4{margin:24px}.m-5{margin:32px}.mx-1{margin:0 4px}.mx-2{margin:0 8px}.mx-3{margin:0 16px}.mx-4{margin:0 24px}.mx-5{margin:0 32px}.my-1{margin:4px 0}.my-2{margin:8px 0}.my-3{margin:16px 0}.my-4{margin:24px 0}.my-5{margin:32px 0}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:16px}.mt-4{margin-top:24px}.mt-5{margin-top:32px}.mr-1{margin-right:4px}.mr-2{margin-right:8px}.mr-3{margin-right:16px}.mr-4{margin-right:24px}.mr-5{margin-right:32px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:16px}.mb-4{margin-bottom:24px}.mb-5{margin-bottom:32px}.ml-1{margin-left:4px}.ml-2{margin-left:8px}.ml-3{margin-left:16px}.ml-4{margin-left:24px}.ml-5{margin-left:32px}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:16px}.p-4{padding:24px}.p-5{padding:32px}.px-1{padding:0 4px}.px-2{padding:0 8px}.px-3{padding:0 16px}.px-4{padding:0 24px}.px-5{padding:0 32px}.py-1{padding:4px 0}.py-2{padding:8px 0}.py-3{padding:16px 0}.py-4{padding:24px 0}.py-5{padding:32px 0}.pt-1{padding-top:4px}.pt-2{padding-top:8px}.pt-3{padding-top:16px}.pt-4{padding-top:24px}.pt-5{padding-top:32px}.pr-1{padding-right:4px}.pr-2{padding-right:8px}.pr-3{padding-right:16px}.pr-4{padding-right:24px}.pr-5{padding-right:32px}.pb-1{padding-bottom:4px}.pb-2{padding-bottom:8px}.pb-3{padding-bottom:16px}.pb-4{padding-bottom:24px}.pb-5{padding-bottom:32px}.pl-1{padding-left:4px}.pl-2{padding-left:8px}.pl-3{padding-left:16px}.pl-4{padding-left:24px}.pl-5{padding-left:32px}.no-wrap{white-space:nowrap!important}.float-left{float:left!important}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}.form-control,.form-select{padding:5px 12px;font-size:14px;line-height:20px;color:var(--color-fg-default);vertical-align:middle;background-color:var(--color-canvas-default);background-repeat:no-repeat;background-position:right 8px center;border:1px solid var(--color-border-default);border-radius:6px;outline:none;box-shadow:var(--color-primer-shadow-inset)}.input-contrast{background-color:var(--color-canvas-inset)}.subnav-search{position:relative;flex:auto;display:flex}.subnav-search-input{flex:auto;padding-left:32px;color:var(--color-fg-muted)}.subnav-search-icon{position:absolute;top:9px;left:8px;display:block;color:var(--color-fg-muted);text-align:center;pointer-events:none}.subnav-search-context+.subnav-search{margin-left:-1px}.subnav-item{flex:none;position:relative;float:left;padding:5px 8px;font-weight:500;line-height:20px;color:var(--color-fg-default);border:1px solid var(--color-border-default);-webkit-user-select:none;user-select:none}.subnav-item:hover{background-color:var(--color-canvas-subtle)}.subnav-item[aria-selected=true]{background:var(--color-control-transparent-bg-hover)}.subnav-item:first-child{border-top-left-radius:6px;border-bottom-left-radius:6px}.subnav-item:last-child{border-top-right-radius:6px;border-bottom-right-radius:6px}.subnav-item+.subnav-item{margin-left:-1px}.subnav-item .octicon,.subnav-item-label{margin-right:8px}.counter{display:inline-block;min-width:20px;padding:0 6px;font-size:12px;font-weight:500;line-height:18px;color:var(--color-fg-default);text-align:center;background-color:var(--color-neutral-muted);border:1px solid transparent;border-radius:2em}.color-icon-success{color:var(--color-success-fg)!important}.color-text-danger{color:var(--color-danger-fg)!important}.color-text-warning{color:var(--color-checks-step-warning-text)!important}.color-fg-muted{color:var(--color-fg-muted)!important}.octicon{display:inline-block;overflow:visible!important;vertical-align:text-bottom;fill:currentColor;margin-right:7px;flex:none}.button{flex:none;height:24px;border:1px solid var(--color-btn-border);outline:none;color:var(--color-btn-text);background:var(--color-btn-bg);padding:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:4px}.button:not(:disabled):hover{border-color:var(--color-btn-hover-border);background-color:var(--color-btn-hover-bg)}input[type=checkbox]{outline:var(--color-focus-border);height:24px}dialog{background-color:var(--color-canvas-subtle);border:1px solid var(--color-border-default);border-radius:6px;padding:6px}.subnav-item .octicon.octicon-settings{margin-right:0}.subnav-item .octicon.octicon-clock{margin-right:0;color:var(--color-fg-default)!important}@media only screen and (max-width: 600px){.subnav-item,.form-control{border-radius:0!important}.subnav-item{border:none}.subnav-search-input{border-left:0;border-right:0}}.header-view-status-container{float:right}.header-view{padding:12px 8px 0}.header-view div{flex-shrink:0;flex-wrap:wrap}.header-superheader{color:var(--color-fg-muted)}.header-title{flex:none;font-weight:400;font-size:32px;line-height:1.25}.header-setting-theme{display:grid;margin-left:22px}@media only screen and (max-width: 600px){.header-view{padding:0}.header-view div{flex-shrink:1}.header-view-status-container{float:none;margin:0 0 10px!important;overflow:hidden}.header-view-status-container .subnav-search-input{border-left:none;border-right:none}.header-title,.header-superheader{margin:0 8px}}.copy-icon{flex:none;height:24px;width:24px;border:none;outline:none;color:var(--color-fg-muted);background:transparent;padding:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:4px}.copy-icon svg{margin:0}.copy-icon:not(:disabled):hover{background-color:var(--color-border-default)}.copy-button-container{visibility:hidden;display:inline-flex;margin-left:8px;vertical-align:bottom}.copy-value-container:hover .copy-button-container{visibility:visible}.attachment-body{white-space:pre-wrap;background-color:var(--color-canvas-subtle);margin-left:24px;line-height:normal;padding:8px;font-family:monospace;position:relative}.attachment-body .copy-icon{position:absolute;right:5px;top:5px}.attachment-flash{animation:attachmentflash-bg 2s}@keyframes attachmentflash-bg{0%{background:var(--color-attention-subtle)}to{background:transparent}}.link-badge{flex:none;background-color:transparent;border-color:transparent;-webkit-user-select:none;user-select:none}.link-badge-dim span{color:var(--color-fg-muted)}.link-badge:hover{cursor:pointer}.link-badge svg{fill:var(--color-fg-default)}.link-badge-dim svg{fill:var(--color-fg-muted)}.link-badge-dim:hover svg{fill:var(--color-fg-muted)}.fullwidth-link{width:100%;text-align:left}.fullwidth-link:hover{background-color:var(--color-canvas-subtle)}.trace-link{margin-right:3px}.trace-link-separator{color:var(--color-fg-muted);-webkit-user-select:none;user-select:none}.expandable-summary{cursor:pointer;list-style:none;white-space:nowrap;padding-left:4px}.label{display:inline-block;padding:0 8px;font-size:12px;font-weight:500;line-height:18px;border:1px solid transparent;border-radius:2em;background-color:var(--color-scale-gray-4);color:#fff;margin:0 10px;flex:none;font-weight:600;cursor:pointer}.label-anchor{text-decoration:none;color:var(--color-fg-default)}:root.light-mode .label-color-0{background-color:var(--color-scale-blue-0);color:var(--color-scale-blue-6);border:1px solid var(--color-scale-blue-4)}:root.light-mode .label-color-1{background-color:var(--color-scale-yellow-0);color:var(--color-scale-yellow-6);border:1px solid var(--color-scale-yellow-4)}:root.light-mode .label-color-2{background-color:var(--color-scale-purple-0);color:var(--color-scale-purple-6);border:1px solid var(--color-scale-purple-4)}:root.light-mode .label-color-3{background-color:var(--color-scale-pink-0);color:var(--color-scale-pink-6);border:1px solid var(--color-scale-pink-4)}:root.light-mode .label-color-4{background-color:var(--color-scale-coral-0);color:var(--color-scale-coral-6);border:1px solid var(--color-scale-coral-4)}:root.light-mode .label-color-5{background-color:var(--color-scale-orange-0);color:var(--color-scale-orange-6);border:1px solid var(--color-scale-orange-4)}:root.dark-mode .label-color-0{background-color:var(--color-scale-blue-9);color:var(--color-scale-blue-2);border:1px solid var(--color-scale-blue-4)}:root.dark-mode .label-color-1{background-color:var(--color-scale-yellow-9);color:var(--color-scale-yellow-2);border:1px solid var(--color-scale-yellow-4)}:root.dark-mode .label-color-2{background-color:var(--color-scale-purple-9);color:var(--color-scale-purple-2);border:1px solid var(--color-scale-purple-4)}:root.dark-mode .label-color-3{background-color:var(--color-scale-pink-9);color:var(--color-scale-pink-2);border:1px solid var(--color-scale-pink-4)}:root.dark-mode .label-color-4{background-color:var(--color-scale-coral-9);color:var(--color-scale-coral-2);border:1px solid var(--color-scale-coral-4)}:root.dark-mode .label-color-5{background-color:var(--color-scale-orange-9);color:var(--color-scale-orange-2);border:1px solid var(--color-scale-orange-4)}.label-row .label{margin:0}.label-row .label:not(:first-child){margin-left:6px}html,body{width:100%;height:100%;padding:0;margin:0;overscroll-behavior-x:none}body{overflow:auto;max-width:1024px;margin:0 auto;width:100%}.test-file-test:not(:first-child){border-top:1px solid var(--color-border-default)}@media only screen and (max-width: 600px){.htmlreport{padding:0!important}}.tabbed-pane{display:flex;flex:auto;overflow:hidden}.tabbed-pane-tab-strip{display:flex;align-items:center;padding-right:10px;flex:none;width:100%;z-index:2;font-size:14px;line-height:32px;color:var(--color-fg-default);height:48px;min-width:70px;box-shadow:inset 0 -1px 0 var(--color-border-muted)!important}.tabbed-pane-tab-strip:focus{outline:none}.tabbed-pane-tab-element{padding:4px 8px 0;margin-right:4px;cursor:pointer;display:flex;flex:none;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-bottom:2px solid transparent;outline:none;height:100%}.tabbed-pane-tab-label{max-width:250px;white-space:pre;overflow:hidden;text-overflow:ellipsis;display:inline-block;height:30px;padding:0 8px;border-radius:6px}.tabbed-pane-tab-label:hover{background-color:var(--color-control-transparent-bg-hover)}.tabbed-pane-tab-element.selected{border-bottom-color:#666;-webkit-text-stroke:.5px currentColor}.chip-header{border:1px solid var(--color-border-default);border-top-left-radius:6px;border-top-right-radius:6px;background-color:var(--color-canvas-subtle);padding:0 8px;border-bottom:none;margin-top:12px;font-weight:600;line-height:38px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.chip-header-allow-selection{-webkit-user-select:text;user-select:text}.chip-header.expanded-false{border:1px solid var(--color-border-default);border-radius:6px}.chip-header.expanded-false,.chip-header.expanded-true{cursor:pointer}.chip-body{border:1px solid var(--color-border-default);border-bottom-left-radius:6px;border-bottom-right-radius:6px;padding:16px;margin-bottom:12px;overflow:hidden}.chip-body-no-insets{padding:0}.chip-footer{border-top:1px solid var(--color-border-default)}@media only screen and (max-width: 600px){.chip-header{border-radius:0;border-right:none;border-left:none}.chip-body{border-radius:0;border-right:none;border-left:none;padding:8px}.chip-body-no-insets{padding:0}}.test-case-column{border-radius:6px;margin-bottom:24px}.test-case-column .tab-element.selected{font-weight:600;border-bottom-color:var(--color-primer-border-active)}.test-case-column .tab-element{border:none;color:var(--color-fg-default);border-bottom:2px solid transparent}.test-case-column .tab-element:hover{color:var(--color-fg-default)}.test-case-location,.test-case-duration{flex:none;align-items:center;padding:0 8px 8px}.selected .test-case-run-duration{-webkit-text-stroke:0}.test-case-run-duration{color:var(--color-fg-muted);padding-left:8px}.header-view .test-case-path{flex:none;flex-shrink:1;align-items:center;padding-right:8px}.test-case-annotation{flex:none;align-items:center;padding:0 8px;line-height:24px;white-space:pre-wrap}@media only screen and (max-width: 600px){.test-case-column{border-radius:0!important;margin:0!important}}.tree-item{display:flex;flex-direction:column;overflow:hidden;min-width:0;line-height:38px}.tree-item-title{cursor:pointer;overflow:hidden;text-overflow:ellipsis;min-width:0;display:flex;align-items:center}.tree-item-body{min-height:18px}.yellow-flash{animation:yellowflash-bg 2s}@keyframes yellowflash-bg{0%{background:var(--color-attention-subtle)}to{background:transparent}}:root{--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #616161;--vscode-disabledForeground: rgba(97, 97, 97, .5);--vscode-errorForeground: #a1260d;--vscode-descriptionForeground: #717171;--vscode-icon-foreground: #424242;--vscode-focusBorder: #0090f1;--vscode-textSeparator-foreground: rgba(0, 0, 0, .18);--vscode-textLink-foreground: #006ab1;--vscode-textLink-activeForeground: #006ab1;--vscode-textPreformat-foreground: #a31515;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(220, 220, 220, .4);--vscode-widget-shadow: rgba(0, 0, 0, .16);--vscode-input-background: #ffffff;--vscode-input-foreground: #616161;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(184, 184, 184, .31);--vscode-inputOption-activeBackground: rgba(0, 144, 241, .2);--vscode-inputOption-activeForeground: #000000;--vscode-input-placeholderForeground: #767676;--vscode-inputValidation-infoBackground: #d6ecf2;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #f6f5d2;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #f2dede;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #ffffff;--vscode-dropdown-border: #cecece;--vscode-checkbox-background: #ffffff;--vscode-checkbox-border: #cecece;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #007acc;--vscode-button-hoverBackground: #0062a3;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #5f6a79;--vscode-button-secondaryHoverBackground: #4c5561;--vscode-badge-background: #c4c4c4;--vscode-badge-foreground: #333333;--vscode-scrollbar-shadow: #dddddd;--vscode-scrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #e51400;--vscode-editorWarning-foreground: #bf8803;--vscode-editorInfo-foreground: #1a85ff;--vscode-editorHint-foreground: #6c6c6c;--vscode-sash-hoverBorder: #0090f1;--vscode-editor-background: #ffffff;--vscode-editor-foreground: #000000;--vscode-editorStickyScroll-background: #ffffff;--vscode-editorStickyScrollHover-background: #f0f0f0;--vscode-editorWidget-background: #f3f3f3;--vscode-editorWidget-foreground: #616161;--vscode-editorWidget-border: #c8c8c8;--vscode-quickInput-background: #f3f3f3;--vscode-quickInput-foreground: #616161;--vscode-quickInputTitle-background: rgba(0, 0, 0, .06);--vscode-pickerGroup-foreground: #0066bf;--vscode-pickerGroup-border: #cccedb;--vscode-keybindingLabel-background: rgba(221, 221, 221, .4);--vscode-keybindingLabel-foreground: #555555;--vscode-keybindingLabel-border: rgba(204, 204, 204, .4);--vscode-keybindingLabel-bottomBorder: rgba(187, 187, 187, .4);--vscode-editor-selectionBackground: #add6ff;--vscode-editor-inactiveSelectionBackground: #e5ebf1;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .5);--vscode-editor-findMatchBackground: #a8ac94;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(180, 180, 180, .3);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(173, 214, 255, .15);--vscode-editorHoverWidget-background: #f3f3f3;--vscode-editorHoverWidget-foreground: #616161;--vscode-editorHoverWidget-border: #c8c8c8;--vscode-editorHoverWidget-statusBarBackground: #e7e7e7;--vscode-editorLink-activeForeground: #0000ff;--vscode-editorInlayHint-foreground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-background: rgba(196, 196, 196, .3);--vscode-editorInlayHint-typeForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-typeBackground: rgba(196, 196, 196, .3);--vscode-editorInlayHint-parameterForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-parameterBackground: rgba(196, 196, 196, .3);--vscode-editorLightBulb-foreground: #ddb100;--vscode-editorLightBulbAutoFix-foreground: #007acc;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .4);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .3);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(34, 34, 34, .2);--vscode-list-focusOutline: #0090f1;--vscode-list-focusAndSelectionOutline: #90c2f9;--vscode-list-activeSelectionBackground: #0060c0;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #e4e6f1;--vscode-list-hoverBackground: #e8e8e8;--vscode-list-dropBackground: #d6ebff;--vscode-list-highlightForeground: #0066bf;--vscode-list-focusHighlightForeground: #bbe7ff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #b01011;--vscode-list-warningForeground: #855f00;--vscode-listFilterWidget-background: #f3f3f3;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .16);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #a9a9a9;--vscode-tree-tableColumnsBorder: rgba(97, 97, 97, .13);--vscode-tree-tableOddRowsBackground: rgba(97, 97, 97, .04);--vscode-list-deemphasizedForeground: #8e8e90;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #0060c0;--vscode-menu-foreground: #616161;--vscode-menu-background: #ffffff;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #0060c0;--vscode-menu-separatorBackground: #d4d4d4;--vscode-toolbar-hoverBackground: rgba(184, 184, 184, .31);--vscode-toolbar-activeBackground: rgba(166, 166, 166, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(10, 50, 100, .2);--vscode-editor-snippetFinalTabstopHighlightBorder: rgba(10, 50, 100, .5);--vscode-breadcrumb-foreground: rgba(97, 97, 97, .8);--vscode-breadcrumb-background: #ffffff;--vscode-breadcrumb-focusForeground: #4e4e4e;--vscode-breadcrumb-activeSelectionForeground: #4e4e4e;--vscode-breadcrumbPicker-background: #f3f3f3;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #c9c9c9;--vscode-minimap-selectionHighlight: #add6ff;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #bf8803;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(100, 100, 100, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(0, 0, 0, .3);--vscode-problemsErrorIcon-foreground: #e51400;--vscode-problemsWarningIcon-foreground: #bf8803;--vscode-problemsInfoIcon-foreground: #1a85ff;--vscode-charts-foreground: #616161;--vscode-charts-lines: rgba(97, 97, 97, .5);--vscode-charts-red: #e51400;--vscode-charts-blue: #1a85ff;--vscode-charts-yellow: #bf8803;--vscode-charts-orange: #d18616;--vscode-charts-green: #388a34;--vscode-charts-purple: #652d90;--vscode-editor-lineHighlightBorder: #eeeeee;--vscode-editor-rangeHighlightBackground: rgba(253, 255, 0, .2);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #000000;--vscode-editorWhitespace-foreground: rgba(51, 51, 51, .2);--vscode-editorIndentGuide-background: #d3d3d3;--vscode-editorIndentGuide-activeBackground: #939393;--vscode-editorLineNumber-foreground: #237893;--vscode-editorActiveLineNumber-foreground: #0b216f;--vscode-editorLineNumber-activeForeground: #0b216f;--vscode-editorRuler-foreground: #d3d3d3;--vscode-editorCodeLens-foreground: #919191;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #b9b9b9;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #ffffff;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .47);--vscode-editorGhostText-foreground: rgba(0, 0, 0, .47);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #bf8803;--vscode-editorOverviewRuler-infoForeground: #1a85ff;--vscode-editorBracketHighlight-foreground1: #0431fa;--vscode-editorBracketHighlight-foreground2: #319331;--vscode-editorBracketHighlight-foreground3: #7b3814;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #cea33d;--vscode-editorUnicodeHighlight-background: rgba(206, 163, 61, .08);--vscode-symbolIcon-arrayForeground: #616161;--vscode-symbolIcon-booleanForeground: #616161;--vscode-symbolIcon-classForeground: #d67e00;--vscode-symbolIcon-colorForeground: #616161;--vscode-symbolIcon-constantForeground: #616161;--vscode-symbolIcon-constructorForeground: #652d90;--vscode-symbolIcon-enumeratorForeground: #d67e00;--vscode-symbolIcon-enumeratorMemberForeground: #007acc;--vscode-symbolIcon-eventForeground: #d67e00;--vscode-symbolIcon-fieldForeground: #007acc;--vscode-symbolIcon-fileForeground: #616161;--vscode-symbolIcon-folderForeground: #616161;--vscode-symbolIcon-functionForeground: #652d90;--vscode-symbolIcon-interfaceForeground: #007acc;--vscode-symbolIcon-keyForeground: #616161;--vscode-symbolIcon-keywordForeground: #616161;--vscode-symbolIcon-methodForeground: #652d90;--vscode-symbolIcon-moduleForeground: #616161;--vscode-symbolIcon-namespaceForeground: #616161;--vscode-symbolIcon-nullForeground: #616161;--vscode-symbolIcon-numberForeground: #616161;--vscode-symbolIcon-objectForeground: #616161;--vscode-symbolIcon-operatorForeground: #616161;--vscode-symbolIcon-packageForeground: #616161;--vscode-symbolIcon-propertyForeground: #616161;--vscode-symbolIcon-referenceForeground: #616161;--vscode-symbolIcon-snippetForeground: #616161;--vscode-symbolIcon-stringForeground: #616161;--vscode-symbolIcon-structForeground: #616161;--vscode-symbolIcon-textForeground: #616161;--vscode-symbolIcon-typeParameterForeground: #616161;--vscode-symbolIcon-unitForeground: #616161;--vscode-symbolIcon-variableForeground: #007acc;--vscode-editorHoverWidget-highlightForeground: #0066bf;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(173, 214, 255, .3);--vscode-editorGutter-foldingControlForeground: #424242;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .25);--vscode-editor-wordHighlightStrongBackground: rgba(14, 99, 156, .25);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(26, 133, 255, .1);--vscode-peekViewTitleLabel-foreground: #000000;--vscode-peekViewTitleDescription-foreground: #616161;--vscode-peekView-border: #1a85ff;--vscode-peekViewResult-background: #f3f3f3;--vscode-peekViewResult-lineForeground: #646465;--vscode-peekViewResult-fileForeground: #1e1e1e;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #6c6c6c;--vscode-peekViewEditor-background: #f2f8fc;--vscode-peekViewEditorGutter-background: #f2f8fc;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(245, 216, 2, .87);--vscode-editorMarkerNavigationError-background: #e51400;--vscode-editorMarkerNavigationError-headerBackground: rgba(229, 20, 0, .1);--vscode-editorMarkerNavigationWarning-background: #bf8803;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(191, 136, 3, .1);--vscode-editorMarkerNavigationInfo-background: #1a85ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(26, 133, 255, .1);--vscode-editorMarkerNavigation-background: #ffffff;--vscode-editorSuggestWidget-background: #f3f3f3;--vscode-editorSuggestWidget-border: #c8c8c8;--vscode-editorSuggestWidget-foreground: #000000;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #0060c0;--vscode-editorSuggestWidget-highlightForeground: #0066bf;--vscode-editorSuggestWidget-focusHighlightForeground: #bbe7ff;--vscode-editorSuggestWidgetStatus-foreground: rgba(0, 0, 0, .5);--vscode-tab-activeBackground: #ffffff;--vscode-tab-unfocusedActiveBackground: #ffffff;--vscode-tab-inactiveBackground: #ececec;--vscode-tab-unfocusedInactiveBackground: #ececec;--vscode-tab-activeForeground: #333333;--vscode-tab-inactiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedActiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedInactiveForeground: rgba(51, 51, 51, .35);--vscode-tab-border: #f3f3f3;--vscode-tab-lastPinnedBorder: rgba(97, 97, 97, .19);--vscode-tab-activeModifiedBorder: #33aaee;--vscode-tab-inactiveModifiedBorder: rgba(51, 170, 238, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 170, 238, .7);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 170, 238, .25);--vscode-editorPane-background: #ffffff;--vscode-editorGroupHeader-tabsBackground: #f3f3f3;--vscode-editorGroupHeader-noTabsBackground: #ffffff;--vscode-editorGroup-border: #e7e7e7;--vscode-editorGroup-dropBackground: rgba(38, 119, 203, .18);--vscode-editorGroup-dropIntoPromptForeground: #616161;--vscode-editorGroup-dropIntoPromptBackground: #f3f3f3;--vscode-sideBySideEditor-horizontalBorder: #e7e7e7;--vscode-sideBySideEditor-verticalBorder: #e7e7e7;--vscode-panel-background: #ffffff;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #424242;--vscode-panelTitle-inactiveForeground: rgba(66, 66, 66, .75);--vscode-panelTitle-activeBorder: #424242;--vscode-panelInput-border: #dddddd;--vscode-panel-dropBorder: #424242;--vscode-panelSection-dropBackground: rgba(38, 119, 203, .18);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #004386;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #1a85ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #725102;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #2c2c2c;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #f3f3f3;--vscode-sideBarTitle-foreground: #6f6f6f;--vscode-sideBar-dropBackground: rgba(38, 119, 203, .18);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(97, 97, 97, .19);--vscode-titleBar-activeForeground: #333333;--vscode-titleBar-inactiveForeground: rgba(51, 51, 51, .6);--vscode-titleBar-activeBackground: #dddddd;--vscode-titleBar-inactiveBackground: rgba(221, 221, 221, .6);--vscode-menubar-selectionForeground: #333333;--vscode-menubar-selectionBackground: rgba(184, 184, 184, .31);--vscode-notifications-foreground: #616161;--vscode-notifications-background: #f3f3f3;--vscode-notificationLink-foreground: #006ab1;--vscode-notificationCenterHeader-background: #e7e7e7;--vscode-notifications-border: #e7e7e7;--vscode-notificationsErrorIcon-foreground: #e51400;--vscode-notificationsWarningIcon-foreground: #bf8803;--vscode-notificationsInfoIcon-foreground: #1a85ff;--vscode-commandCenter-foreground: #333333;--vscode-commandCenter-activeForeground: #333333;--vscode-commandCenter-activeBackground: rgba(184, 184, 184, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(97, 97, 97, .5);--vscode-editorCommentsWidget-unresolvedBorder: #1a85ff;--vscode-editorCommentsWidget-rangeBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(26, 133, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(26, 133, 255, .4);--vscode-editorGutter-commentRangeForeground: #d5d8e9;--vscode-debugToolBar-background: #f3f3f3;--vscode-debugIcon-startForeground: #388a34;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 102, .45);--vscode-editor-focusedStackFrameHighlightBackground: rgba(206, 231, 206, .45);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .4);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #444444;--vscode-settings-modifiedItemIndicator: #66afe0;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #ffffff;--vscode-settings-dropdownBorder: #cecece;--vscode-settings-dropdownListBorder: #c8c8c8;--vscode-settings-checkboxBackground: #ffffff;--vscode-settings-checkboxBorder: #cecece;--vscode-settings-textInputBackground: #ffffff;--vscode-settings-textInputForeground: #616161;--vscode-settings-textInputBorder: #cecece;--vscode-settings-numberInputBackground: #ffffff;--vscode-settings-numberInputForeground: #616161;--vscode-settings-numberInputBorder: #cecece;--vscode-settings-focusedRowBackground: rgba(232, 232, 232, .6);--vscode-settings-rowHoverBackground: rgba(232, 232, 232, .3);--vscode-settings-focusedRowBorder: rgba(0, 0, 0, .12);--vscode-terminal-foreground: #333333;--vscode-terminal-selectionBackground: #add6ff;--vscode-terminal-inactiveSelectionBackground: #e5ebf1;--vscode-terminalCommandDecoration-defaultBackground: rgba(0, 0, 0, .25);--vscode-terminalCommandDecoration-successBackground: #2090d3;--vscode-terminalCommandDecoration-errorBackground: #e51400;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #a8ac94;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(38, 119, 203, .18);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #e51400;--vscode-testing-peekHeaderBackground: rgba(229, 20, 0, .1);--vscode-testing-message\.error\.decorationForeground: #e51400;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(0, 0, 0, .5);--vscode-welcomePage-tileBackground: #f3f3f3;--vscode-welcomePage-tileHoverBackground: #dbdbdb;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .16);--vscode-welcomePage-progress\.background: #ffffff;--vscode-welcomePage-progress\.foreground: #006ab1;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #f1dfde;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(0, 0, 0, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #2090d3;--vscode-editorGutter-addedBackground: #48985d;--vscode-editorGutter-deletedBackground: #e51400;--vscode-minimapGutter-modifiedBackground: #2090d3;--vscode-minimapGutter-addedBackground: #48985d;--vscode-minimapGutter-deletedBackground: #e51400;--vscode-editorOverviewRuler-modifiedForeground: rgba(32, 144, 211, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 152, 93, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(229, 20, 0, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #be8700;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #e8e8e8;--vscode-notebook-focusedEditorBorder: #0090f1;--vscode-notebookStatusSuccessIcon-foreground: #388a34;--vscode-notebookStatusErrorIcon-foreground: #a1260d;--vscode-notebookStatusRunningIcon-foreground: #616161;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: rgba(200, 221, 241, .31);--vscode-notebook-selectedCellBorder: #e8e8e8;--vscode-notebook-focusedCellBorder: #0090f1;--vscode-notebook-inactiveFocusedCellBorder: #e8e8e8;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(0, 0, 0, .08);--vscode-notebook-cellInsertionIndicator: #0090f1;--vscode-notebookScrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-notebook-symbolHighlightBackground: rgba(253, 255, 0, .2);--vscode-notebook-cellEditorBackground: #f3f3f3;--vscode-notebook-editorBackground: #ffffff;--vscode-keybindingTable-headerBackground: rgba(97, 97, 97, .04);--vscode-keybindingTable-rowsBackground: rgba(97, 97, 97, .04);--vscode-scm-providerBorder: #c8c8c8;--vscode-searchEditor-textInputBorder: #cecece;--vscode-debugTokenExpression-name: #9b46b0;--vscode-debugTokenExpression-value: rgba(108, 108, 108, .8);--vscode-debugTokenExpression-string: #a31515;--vscode-debugTokenExpression-boolean: #0000ff;--vscode-debugTokenExpression-number: #098658;--vscode-debugTokenExpression-error: #e51400;--vscode-debugView-exceptionLabelForeground: #ffffff;--vscode-debugView-exceptionLabelBackground: #a31515;--vscode-debugView-stateLabelForeground: #616161;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #1a85ff;--vscode-debugConsole-warningForeground: #bf8803;--vscode-debugConsole-errorForeground: #a1260d;--vscode-debugConsole-sourceForeground: #616161;--vscode-debugConsoleInputIcon-foreground: #616161;--vscode-debugIcon-pauseForeground: #007acc;--vscode-debugIcon-stopForeground: #a1260d;--vscode-debugIcon-disconnectForeground: #a1260d;--vscode-debugIcon-restartForeground: #388a34;--vscode-debugIcon-stepOverForeground: #007acc;--vscode-debugIcon-stepIntoForeground: #007acc;--vscode-debugIcon-stepOutForeground: #007acc;--vscode-debugIcon-continueForeground: #007acc;--vscode-debugIcon-stepBackForeground: #007acc;--vscode-extensionButton-prominentBackground: #007acc;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #0062a3;--vscode-extensionIcon-starForeground: #df6100;--vscode-extensionIcon-verifiedForeground: #006ab1;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #b51e78;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #00bc00;--vscode-terminal-ansiYellow: #949800;--vscode-terminal-ansiBlue: #0451a5;--vscode-terminal-ansiMagenta: #bc05bc;--vscode-terminal-ansiCyan: #0598bc;--vscode-terminal-ansiWhite: #555555;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #cd3131;--vscode-terminal-ansiBrightGreen: #14ce14;--vscode-terminal-ansiBrightYellow: #b5ba00;--vscode-terminal-ansiBrightBlue: #0451a5;--vscode-terminal-ansiBrightMagenta: #bc05bc;--vscode-terminal-ansiBrightCyan: #0598bc;--vscode-terminal-ansiBrightWhite: #a5a5a5;--vscode-interactive-activeCodeBorder: #1a85ff;--vscode-interactive-inactiveCodeBorder: #e4e6f1;--vscode-gitDecoration-addedResourceForeground: #587c0c;--vscode-gitDecoration-modifiedResourceForeground: #895503;--vscode-gitDecoration-deletedResourceForeground: #ad0707;--vscode-gitDecoration-renamedResourceForeground: #007100;--vscode-gitDecoration-untrackedResourceForeground: #007100;--vscode-gitDecoration-ignoredResourceForeground: #8e8e90;--vscode-gitDecoration-stageModifiedResourceForeground: #895503;--vscode-gitDecoration-stageDeletedResourceForeground: #ad0707;--vscode-gitDecoration-conflictingResourceForeground: #ad0707;--vscode-gitDecoration-submoduleResourceForeground: #1258a7}:root.light-mode{color-scheme:light}:root.dark-mode{color-scheme:dark;--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #cccccc;--vscode-disabledForeground: rgba(204, 204, 204, .5);--vscode-errorForeground: #f48771;--vscode-descriptionForeground: rgba(204, 204, 204, .7);--vscode-icon-foreground: #c5c5c5;--vscode-focusBorder: #007fd4;--vscode-textSeparator-foreground: rgba(255, 255, 255, .18);--vscode-textLink-foreground: #3794ff;--vscode-textLink-activeForeground: #3794ff;--vscode-textPreformat-foreground: #d7ba7d;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(10, 10, 10, .4);--vscode-widget-shadow: rgba(0, 0, 0, .36);--vscode-input-background: #3c3c3c;--vscode-input-foreground: #cccccc;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(90, 93, 94, .5);--vscode-inputOption-activeBackground: rgba(0, 127, 212, .4);--vscode-inputOption-activeForeground: #ffffff;--vscode-input-placeholderForeground: #a6a6a6;--vscode-inputValidation-infoBackground: #063b49;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #352a05;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #5a1d1d;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #3c3c3c;--vscode-dropdown-foreground: #f0f0f0;--vscode-dropdown-border: #3c3c3c;--vscode-checkbox-background: #3c3c3c;--vscode-checkbox-foreground: #f0f0f0;--vscode-checkbox-border: #3c3c3c;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #0e639c;--vscode-button-hoverBackground: #1177bb;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #3a3d41;--vscode-button-secondaryHoverBackground: #45494e;--vscode-badge-background: #4d4d4d;--vscode-badge-foreground: #ffffff;--vscode-scrollbar-shadow: #000000;--vscode-scrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #f14c4c;--vscode-editorWarning-foreground: #cca700;--vscode-editorInfo-foreground: #3794ff;--vscode-editorHint-foreground: rgba(238, 238, 238, .7);--vscode-sash-hoverBorder: #007fd4;--vscode-editor-background: #1e1e1e;--vscode-editor-foreground: #d4d4d4;--vscode-editorStickyScroll-background: #1e1e1e;--vscode-editorStickyScrollHover-background: #2a2d2e;--vscode-editorWidget-background: #252526;--vscode-editorWidget-foreground: #cccccc;--vscode-editorWidget-border: #454545;--vscode-quickInput-background: #252526;--vscode-quickInput-foreground: #cccccc;--vscode-quickInputTitle-background: rgba(255, 255, 255, .1);--vscode-pickerGroup-foreground: #3794ff;--vscode-pickerGroup-border: #3f3f46;--vscode-keybindingLabel-background: rgba(128, 128, 128, .17);--vscode-keybindingLabel-foreground: #cccccc;--vscode-keybindingLabel-border: rgba(51, 51, 51, .6);--vscode-keybindingLabel-bottomBorder: rgba(68, 68, 68, .6);--vscode-editor-selectionBackground: #264f78;--vscode-editor-inactiveSelectionBackground: #3a3d41;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .15);--vscode-editor-findMatchBackground: #515c6a;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(58, 61, 65, .4);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(38, 79, 120, .25);--vscode-editorHoverWidget-background: #252526;--vscode-editorHoverWidget-foreground: #cccccc;--vscode-editorHoverWidget-border: #454545;--vscode-editorHoverWidget-statusBarBackground: #2c2c2d;--vscode-editorLink-activeForeground: #4e94ce;--vscode-editorInlayHint-foreground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-background: rgba(77, 77, 77, .6);--vscode-editorInlayHint-typeForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-typeBackground: rgba(77, 77, 77, .6);--vscode-editorInlayHint-parameterForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-parameterBackground: rgba(77, 77, 77, .6);--vscode-editorLightBulb-foreground: #ffcc00;--vscode-editorLightBulbAutoFix-foreground: #75beff;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .2);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .4);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(204, 204, 204, .2);--vscode-list-focusOutline: #007fd4;--vscode-list-activeSelectionBackground: #04395e;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #37373d;--vscode-list-hoverBackground: #2a2d2e;--vscode-list-dropBackground: #383b3d;--vscode-list-highlightForeground: #2aaaff;--vscode-list-focusHighlightForeground: #2aaaff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #f88070;--vscode-list-warningForeground: #cca700;--vscode-listFilterWidget-background: #252526;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .36);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #585858;--vscode-tree-tableColumnsBorder: rgba(204, 204, 204, .13);--vscode-tree-tableOddRowsBackground: rgba(204, 204, 204, .04);--vscode-list-deemphasizedForeground: #8c8c8c;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #04395e;--vscode-menu-foreground: #cccccc;--vscode-menu-background: #303031;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #04395e;--vscode-menu-separatorBackground: #606060;--vscode-toolbar-hoverBackground: rgba(90, 93, 94, .31);--vscode-toolbar-activeBackground: rgba(99, 102, 103, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(124, 124, 124, .3);--vscode-editor-snippetFinalTabstopHighlightBorder: #525252;--vscode-breadcrumb-foreground: rgba(204, 204, 204, .8);--vscode-breadcrumb-background: #1e1e1e;--vscode-breadcrumb-focusForeground: #e0e0e0;--vscode-breadcrumb-activeSelectionForeground: #e0e0e0;--vscode-breadcrumbPicker-background: #252526;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #676767;--vscode-minimap-selectionHighlight: #264f78;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #cca700;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(121, 121, 121, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(191, 191, 191, .2);--vscode-problemsErrorIcon-foreground: #f14c4c;--vscode-problemsWarningIcon-foreground: #cca700;--vscode-problemsInfoIcon-foreground: #3794ff;--vscode-charts-foreground: #cccccc;--vscode-charts-lines: rgba(204, 204, 204, .5);--vscode-charts-red: #f14c4c;--vscode-charts-blue: #3794ff;--vscode-charts-yellow: #cca700;--vscode-charts-orange: #d18616;--vscode-charts-green: #89d185;--vscode-charts-purple: #b180d7;--vscode-editor-lineHighlightBorder: #282828;--vscode-editor-rangeHighlightBackground: rgba(255, 255, 255, .04);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #aeafad;--vscode-editorWhitespace-foreground: rgba(227, 228, 226, .16);--vscode-editorIndentGuide-background: #404040;--vscode-editorIndentGuide-activeBackground: #707070;--vscode-editorLineNumber-foreground: #858585;--vscode-editorActiveLineNumber-foreground: #c6c6c6;--vscode-editorLineNumber-activeForeground: #c6c6c6;--vscode-editorRuler-foreground: #5a5a5a;--vscode-editorCodeLens-foreground: #999999;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #888888;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #1e1e1e;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .67);--vscode-editorGhostText-foreground: rgba(255, 255, 255, .34);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #cca700;--vscode-editorOverviewRuler-infoForeground: #3794ff;--vscode-editorBracketHighlight-foreground1: #ffd700;--vscode-editorBracketHighlight-foreground2: #da70d6;--vscode-editorBracketHighlight-foreground3: #179fff;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #bd9b03;--vscode-editorUnicodeHighlight-background: rgba(189, 155, 3, .15);--vscode-symbolIcon-arrayForeground: #cccccc;--vscode-symbolIcon-booleanForeground: #cccccc;--vscode-symbolIcon-classForeground: #ee9d28;--vscode-symbolIcon-colorForeground: #cccccc;--vscode-symbolIcon-constantForeground: #cccccc;--vscode-symbolIcon-constructorForeground: #b180d7;--vscode-symbolIcon-enumeratorForeground: #ee9d28;--vscode-symbolIcon-enumeratorMemberForeground: #75beff;--vscode-symbolIcon-eventForeground: #ee9d28;--vscode-symbolIcon-fieldForeground: #75beff;--vscode-symbolIcon-fileForeground: #cccccc;--vscode-symbolIcon-folderForeground: #cccccc;--vscode-symbolIcon-functionForeground: #b180d7;--vscode-symbolIcon-interfaceForeground: #75beff;--vscode-symbolIcon-keyForeground: #cccccc;--vscode-symbolIcon-keywordForeground: #cccccc;--vscode-symbolIcon-methodForeground: #b180d7;--vscode-symbolIcon-moduleForeground: #cccccc;--vscode-symbolIcon-namespaceForeground: #cccccc;--vscode-symbolIcon-nullForeground: #cccccc;--vscode-symbolIcon-numberForeground: #cccccc;--vscode-symbolIcon-objectForeground: #cccccc;--vscode-symbolIcon-operatorForeground: #cccccc;--vscode-symbolIcon-packageForeground: #cccccc;--vscode-symbolIcon-propertyForeground: #cccccc;--vscode-symbolIcon-referenceForeground: #cccccc;--vscode-symbolIcon-snippetForeground: #cccccc;--vscode-symbolIcon-stringForeground: #cccccc;--vscode-symbolIcon-structForeground: #cccccc;--vscode-symbolIcon-textForeground: #cccccc;--vscode-symbolIcon-typeParameterForeground: #cccccc;--vscode-symbolIcon-unitForeground: #cccccc;--vscode-symbolIcon-variableForeground: #75beff;--vscode-editorHoverWidget-highlightForeground: #2aaaff;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(38, 79, 120, .3);--vscode-editorGutter-foldingControlForeground: #c5c5c5;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .72);--vscode-editor-wordHighlightStrongBackground: rgba(0, 73, 114, .72);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(55, 148, 255, .1);--vscode-peekViewTitleLabel-foreground: #ffffff;--vscode-peekViewTitleDescription-foreground: rgba(204, 204, 204, .7);--vscode-peekView-border: #3794ff;--vscode-peekViewResult-background: #252526;--vscode-peekViewResult-lineForeground: #bbbbbb;--vscode-peekViewResult-fileForeground: #ffffff;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #ffffff;--vscode-peekViewEditor-background: #001f33;--vscode-peekViewEditorGutter-background: #001f33;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(255, 143, 0, .6);--vscode-editorMarkerNavigationError-background: #f14c4c;--vscode-editorMarkerNavigationError-headerBackground: rgba(241, 76, 76, .1);--vscode-editorMarkerNavigationWarning-background: #cca700;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(204, 167, 0, .1);--vscode-editorMarkerNavigationInfo-background: #3794ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(55, 148, 255, .1);--vscode-editorMarkerNavigation-background: #1e1e1e;--vscode-editorSuggestWidget-background: #252526;--vscode-editorSuggestWidget-border: #454545;--vscode-editorSuggestWidget-foreground: #d4d4d4;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #04395e;--vscode-editorSuggestWidget-highlightForeground: #2aaaff;--vscode-editorSuggestWidget-focusHighlightForeground: #2aaaff;--vscode-editorSuggestWidgetStatus-foreground: rgba(212, 212, 212, .5);--vscode-tab-activeBackground: #1e1e1e;--vscode-tab-unfocusedActiveBackground: #1e1e1e;--vscode-tab-inactiveBackground: #2d2d2d;--vscode-tab-unfocusedInactiveBackground: #2d2d2d;--vscode-tab-activeForeground: #ffffff;--vscode-tab-inactiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedActiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedInactiveForeground: rgba(255, 255, 255, .25);--vscode-tab-border: #252526;--vscode-tab-lastPinnedBorder: rgba(204, 204, 204, .2);--vscode-tab-activeModifiedBorder: #3399cc;--vscode-tab-inactiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 153, 204, .25);--vscode-editorPane-background: #1e1e1e;--vscode-editorGroupHeader-tabsBackground: #252526;--vscode-editorGroupHeader-noTabsBackground: #1e1e1e;--vscode-editorGroup-border: #444444;--vscode-editorGroup-dropBackground: rgba(83, 89, 93, .5);--vscode-editorGroup-dropIntoPromptForeground: #cccccc;--vscode-editorGroup-dropIntoPromptBackground: #252526;--vscode-sideBySideEditor-horizontalBorder: #444444;--vscode-sideBySideEditor-verticalBorder: #444444;--vscode-panel-background: #1e1e1e;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #e7e7e7;--vscode-panelTitle-inactiveForeground: rgba(231, 231, 231, .6);--vscode-panelTitle-activeBorder: #e7e7e7;--vscode-panel-dropBorder: #e7e7e7;--vscode-panelSection-dropBackground: rgba(83, 89, 93, .5);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #04395e;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #3794ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #7a6400;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #333333;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #252526;--vscode-sideBarTitle-foreground: #bbbbbb;--vscode-sideBar-dropBackground: rgba(83, 89, 93, .5);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(204, 204, 204, .2);--vscode-titleBar-activeForeground: #cccccc;--vscode-titleBar-inactiveForeground: rgba(204, 204, 204, .6);--vscode-titleBar-activeBackground: #3c3c3c;--vscode-titleBar-inactiveBackground: rgba(60, 60, 60, .6);--vscode-menubar-selectionForeground: #cccccc;--vscode-menubar-selectionBackground: rgba(90, 93, 94, .31);--vscode-notifications-foreground: #cccccc;--vscode-notifications-background: #252526;--vscode-notificationLink-foreground: #3794ff;--vscode-notificationCenterHeader-background: #303031;--vscode-notifications-border: #303031;--vscode-notificationsErrorIcon-foreground: #f14c4c;--vscode-notificationsWarningIcon-foreground: #cca700;--vscode-notificationsInfoIcon-foreground: #3794ff;--vscode-commandCenter-foreground: #cccccc;--vscode-commandCenter-activeForeground: #cccccc;--vscode-commandCenter-activeBackground: rgba(90, 93, 94, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(204, 204, 204, .5);--vscode-editorCommentsWidget-unresolvedBorder: #3794ff;--vscode-editorCommentsWidget-rangeBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(55, 148, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(55, 148, 255, .4);--vscode-editorGutter-commentRangeForeground: #37373d;--vscode-debugToolBar-background: #333333;--vscode-debugIcon-startForeground: #89d185;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 0, .2);--vscode-editor-focusedStackFrameHighlightBackground: rgba(122, 189, 122, .3);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .2);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #e7e7e7;--vscode-settings-modifiedItemIndicator: #0c7d9d;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #3c3c3c;--vscode-settings-dropdownForeground: #f0f0f0;--vscode-settings-dropdownBorder: #3c3c3c;--vscode-settings-dropdownListBorder: #454545;--vscode-settings-checkboxBackground: #3c3c3c;--vscode-settings-checkboxForeground: #f0f0f0;--vscode-settings-checkboxBorder: #3c3c3c;--vscode-settings-textInputBackground: #3c3c3c;--vscode-settings-textInputForeground: #cccccc;--vscode-settings-numberInputBackground: #3c3c3c;--vscode-settings-numberInputForeground: #cccccc;--vscode-settings-focusedRowBackground: rgba(42, 45, 46, .6);--vscode-settings-rowHoverBackground: rgba(42, 45, 46, .3);--vscode-settings-focusedRowBorder: rgba(255, 255, 255, .12);--vscode-terminal-foreground: #cccccc;--vscode-terminal-selectionBackground: #264f78;--vscode-terminal-inactiveSelectionBackground: #3a3d41;--vscode-terminalCommandDecoration-defaultBackground: rgba(255, 255, 255, .25);--vscode-terminalCommandDecoration-successBackground: #1b81a8;--vscode-terminalCommandDecoration-errorBackground: #f14c4c;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #515c6a;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(83, 89, 93, .5);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #f14c4c;--vscode-testing-peekHeaderBackground: rgba(241, 76, 76, .1);--vscode-testing-message\.error\.decorationForeground: #f14c4c;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(212, 212, 212, .5);--vscode-welcomePage-tileBackground: #252526;--vscode-welcomePage-tileHoverBackground: #2c2c2d;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .36);--vscode-welcomePage-progress\.background: #3c3c3c;--vscode-welcomePage-progress\.foreground: #3794ff;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #420b0d;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(255, 255, 255, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #1b81a8;--vscode-editorGutter-addedBackground: #487e02;--vscode-editorGutter-deletedBackground: #f14c4c;--vscode-minimapGutter-modifiedBackground: #1b81a8;--vscode-minimapGutter-addedBackground: #487e02;--vscode-minimapGutter-deletedBackground: #f14c4c;--vscode-editorOverviewRuler-modifiedForeground: rgba(27, 129, 168, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 126, 2, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(241, 76, 76, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #ffcc00;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #37373d;--vscode-notebook-focusedEditorBorder: #007fd4;--vscode-notebookStatusSuccessIcon-foreground: #89d185;--vscode-notebookStatusErrorIcon-foreground: #f48771;--vscode-notebookStatusRunningIcon-foreground: #cccccc;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: #37373d;--vscode-notebook-selectedCellBorder: #37373d;--vscode-notebook-focusedCellBorder: #007fd4;--vscode-notebook-inactiveFocusedCellBorder: #37373d;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(255, 255, 255, .15);--vscode-notebook-cellInsertionIndicator: #007fd4;--vscode-notebookScrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-notebook-symbolHighlightBackground: rgba(255, 255, 255, .04);--vscode-notebook-cellEditorBackground: #252526;--vscode-notebook-editorBackground: #1e1e1e;--vscode-keybindingTable-headerBackground: rgba(204, 204, 204, .04);--vscode-keybindingTable-rowsBackground: rgba(204, 204, 204, .04);--vscode-scm-providerBorder: #454545;--vscode-debugTokenExpression-name: #c586c0;--vscode-debugTokenExpression-value: rgba(204, 204, 204, .6);--vscode-debugTokenExpression-string: #ce9178;--vscode-debugTokenExpression-boolean: #4e94ce;--vscode-debugTokenExpression-number: #b5cea8;--vscode-debugTokenExpression-error: #f48771;--vscode-debugView-exceptionLabelForeground: #cccccc;--vscode-debugView-exceptionLabelBackground: #6c2022;--vscode-debugView-stateLabelForeground: #cccccc;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #3794ff;--vscode-debugConsole-warningForeground: #cca700;--vscode-debugConsole-errorForeground: #f48771;--vscode-debugConsole-sourceForeground: #cccccc;--vscode-debugConsoleInputIcon-foreground: #cccccc;--vscode-debugIcon-pauseForeground: #75beff;--vscode-debugIcon-stopForeground: #f48771;--vscode-debugIcon-disconnectForeground: #f48771;--vscode-debugIcon-restartForeground: #89d185;--vscode-debugIcon-stepOverForeground: #75beff;--vscode-debugIcon-stepIntoForeground: #75beff;--vscode-debugIcon-stepOutForeground: #75beff;--vscode-debugIcon-continueForeground: #75beff;--vscode-debugIcon-stepBackForeground: #75beff;--vscode-extensionButton-prominentBackground: #0e639c;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #1177bb;--vscode-extensionIcon-starForeground: #ff8e00;--vscode-extensionIcon-verifiedForeground: #3794ff;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #d758b3;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #0dbc79;--vscode-terminal-ansiYellow: #e5e510;--vscode-terminal-ansiBlue: #2472c8;--vscode-terminal-ansiMagenta: #bc3fbc;--vscode-terminal-ansiCyan: #11a8cd;--vscode-terminal-ansiWhite: #e5e5e5;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #f14c4c;--vscode-terminal-ansiBrightGreen: #23d18b;--vscode-terminal-ansiBrightYellow: #f5f543;--vscode-terminal-ansiBrightBlue: #3b8eea;--vscode-terminal-ansiBrightMagenta: #d670d6;--vscode-terminal-ansiBrightCyan: #29b8db;--vscode-terminal-ansiBrightWhite: #e5e5e5;--vscode-interactive-activeCodeBorder: #3794ff;--vscode-interactive-inactiveCodeBorder: #37373d;--vscode-gitDecoration-addedResourceForeground: #81b88b;--vscode-gitDecoration-modifiedResourceForeground: #e2c08d;--vscode-gitDecoration-deletedResourceForeground: #c74e39;--vscode-gitDecoration-renamedResourceForeground: #73c991;--vscode-gitDecoration-untrackedResourceForeground: #73c991;--vscode-gitDecoration-ignoredResourceForeground: #8c8c8c;--vscode-gitDecoration-stageModifiedResourceForeground: #e2c08d;--vscode-gitDecoration-stageDeletedResourceForeground: #c74e39;--vscode-gitDecoration-conflictingResourceForeground: #e4676b;--vscode-gitDecoration-submoduleResourceForeground: #8db9e2}.test-error-container{position:relative;white-space:pre;flex:none;padding:0;background-color:var(--color-canvas-subtle);border-radius:6px;line-height:initial;margin-bottom:6px}.test-error-view{overflow:auto;padding:16px}.test-error-text{font-family:monospace}.test-result{flex:auto;display:flex;flex-direction:column;margin-bottom:24px}.test-result>div{flex:none}.test-result video,.test-result img.screenshot{flex:none;box-shadow:var(--box-shadow-thick);margin:24px auto;min-width:200px;max-width:80%}.test-result-path{padding:0 0 0 5px;color:var(--color-fg-muted)}.test-result-counter{border-radius:12px;color:var(--color-canvas-default);padding:2px 8px;line-height:normal}.step-title-container{display:flex;align-items:center;flex:auto;min-width:0}.step-title-container>*{flex-shrink:0}.step-title-text{flex-shrink:1;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;min-width:0}.step-title-highlight{background:var(--color-attention-subtle)}.step-spacer{flex:auto}.step-attachment-link{display:flex;flex:none;border-radius:4px;padding:4px}.step-attachment-link:hover{background-color:var(--color-neutral-muted)}.step-attachment-link .octicon{margin-right:0}.step-indirect-attachment-indicator{display:flex;flex:none;padding:4px;opacity:.5}.step-indirect-attachment-indicator .octicon{margin-right:0}.step-duration{flex:none;white-space:nowrap;margin-left:4px}:root.light-mode .test-result-counter{background:var(--color-scale-gray-5)}:root.dark-mode .test-result-counter{background:var(--color-scale-gray-3)}.step-filter{margin-bottom:8px}@media only screen and (max-width: 600px){.test-result{padding:0!important}}.test-file-test{line-height:32px;align-items:center;padding:2px 8px;overflow:hidden;text-overflow:ellipsis}.test-file-test-selected,.test-file-test:hover{background-color:var(--color-canvas-subtle)}.test-file-title{font-weight:600;font-size:16px}.test-file-details-row{padding:0 0 6px 8px;margin:0 0 0 15px;line-height:16px;font-weight:400;color:var(--color-fg-muted);display:flex;align-items:center}.test-file-details-row-items{display:flex;height:16px}.test-file-details-row-items>.link-badge{margin-top:-2px}.test-file-details-row-items>.trace-link{margin-top:-4px}.test-file-path{text-overflow:ellipsis;overflow:hidden;color:var(--color-fg-muted)}.test-file-path-link{margin-right:10px}.test-file-test-outcome-skipped{color:var(--color-fg-muted)}.test-file-test-status-icon{flex:none}.test-file-header-info{display:flex;align-items:center;gap:4px 8px;color:var(--color-fg-muted)}.test-file-header-br{flex-basis:100%;height:0}.test-file-no-files{margin-top:12px;color:var(--color-fg-muted);background-color:unset;font-weight:unset;border:1px solid var(--color-border-default);border-bottom-left-radius:6px;border-bottom-right-radius:6px}#root{color:var(--color-fg-default);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";-webkit-font-smoothing:antialiased}.metadata-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--color-fg-default)}.metadata-toggle-second-line{margin-top:8px;margin-left:8px}.metadata-view{border:1px solid var(--color-border-default);border-radius:6px;margin-top:12px}.metadata-view .metadata-section{margin:8px 10px 8px 32px}.metadata-view span:not(.copy-button-container),.metadata-view a{display:inline-block;line-height:24px}.metadata-properties{display:flex;flex-direction:column;align-items:normal;gap:8px}.metadata-properties>div{height:24px}.metadata-separator{height:1px;border-bottom:1px solid var(--color-border-default)}.metadata-view a{color:var(--color-fg-default)}.copyable-property{white-space:pre}.copyable-property>span{display:flex;align-items:center}.gantt-bar{transition:opacity .2s;cursor:pointer;outline:none}.gantt-bar:hover,.gantt-bar:focus{opacity:.8;stroke:var(--color-fg-default);stroke-width:2}
scripts/node_modules/playwright-core/lib/vite/htmlReport/report.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,72 @@
(function(){const u=document.createElement("link").relList;if(u&&u.supports&&u.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))f(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const h of o.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&f(h)}).observe(document,{childList:!0,subtree:!0});function c(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function f(r){if(r.ep)return;r.ep=!0;const o=c(r);fetch(r.href,o)}})();function EA(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var Of={exports:{}},vi={};/**
 * @license React
 * react-jsx-runtime.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var y1;function pA(){if(y1)return vi;y1=1;var i=Symbol.for("react.transitional.element"),u=Symbol.for("react.fragment");function c(f,r,o){var h=null;if(o!==void 0&&(h=""+o),r.key!==void 0&&(h=""+r.key),"key"in r){o={};for(var v in r)v!=="key"&&(o[v]=r[v])}else o=r;return r=o.ref,{$$typeof:i,type:f,key:h,ref:r!==void 0?r:null,props:o}}return vi.Fragment=u,vi.jsx=c,vi.jsxs=c,vi}var E1;function xA(){return E1||(E1=1,Of.exports=pA()),Of.exports}var m=xA();const bA=15,bt=0,En=1,SA=2,ye=-2,Ut=-3,p1=-4,pn=-5,Me=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],w2=1440,TA=0,CA=4,OA=9,DA=5,RA=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],wA=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],MA=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],jA=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],NA=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],HA=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],_n=15;function qf(){const i=this;let u,c,f,r,o,h;function v(A,x,T,D,X,q,p,E,b,R,N){let V,F,H,j,Y,z,I,k,nt,P,st,ut,M,_,$;P=0,Y=T;do f[A[x+P]]++,P++,Y--;while(Y!==0);if(f[0]==T)return p[0]=-1,E[0]=0,bt;for(k=E[0],z=1;z<=_n&&f[z]===0;z++);for(I=z,k<z&&(k=z),Y=_n;Y!==0&&f[Y]===0;Y--);for(H=Y,k>Y&&(k=Y),E[0]=k,_=1<<z;z<Y;z++,_<<=1)if((_-=f[z])<0)return Ut;if((_-=f[Y])<0)return Ut;for(f[Y]+=_,h[1]=z=0,P=1,M=2;--Y!==0;)h[M]=z+=f[P],M++,P++;Y=0,P=0;do(z=A[x+P])!==0&&(N[h[z]++]=Y),P++;while(++Y<T);for(T=h[H],h[0]=Y=0,P=0,j=-1,ut=-k,o[0]=0,st=0,$=0;I<=H;I++)for(V=f[I];V--!==0;){for(;I>ut+k;){if(j++,ut+=k,$=H-ut,$=$>k?k:$,(F=1<<(z=I-ut))>V+1&&(F-=V+1,M=I,z<$))for(;++z<$&&!((F<<=1)<=f[++M]);)F-=f[M];if($=1<<z,R[0]+$>w2)return Ut;o[j]=st=R[0],R[0]+=$,j!==0?(h[j]=Y,r[0]=z,r[1]=k,z=Y>>>ut-k,r[2]=st-o[j-1]-z,b.set(r,(o[j-1]+z)*3)):p[0]=st}for(r[1]=I-ut,P>=T?r[0]=192:N[P]<D?(r[0]=N[P]<256?0:96,r[2]=N[P++]):(r[0]=q[N[P]-D]+16+64,r[2]=X[N[P++]-D]),F=1<<I-ut,z=Y>>>ut;z<$;z+=F)b.set(r,(st+z)*3);for(z=1<<I-1;(Y&z)!==0;z>>>=1)Y^=z;for(Y^=z,nt=(1<<ut)-1;(Y&nt)!=h[j];)j--,ut-=k,nt=(1<<ut)-1}return _!==0&&H!=1?pn:bt}function y(A){let x;for(u||(u=[],c=[],f=new Int32Array(_n+1),r=[],o=new Int32Array(_n),h=new Int32Array(_n+1)),c.length<A&&(c=[]),x=0;x<A;x++)c[x]=0;for(x=0;x<_n+1;x++)f[x]=0;for(x=0;x<3;x++)r[x]=0;o.set(f.subarray(0,_n),0),h.set(f.subarray(0,_n+1),0)}i.inflate_trees_bits=function(A,x,T,D,X){let q;return y(19),u[0]=0,q=v(A,0,19,19,null,null,T,x,D,u,c),q==Ut?X.msg="oversubscribed dynamic bit lengths tree":(q==pn||x[0]===0)&&(X.msg="incomplete dynamic bit lengths tree",q=Ut),q},i.inflate_trees_dynamic=function(A,x,T,D,X,q,p,E,b){let R;return y(288),u[0]=0,R=v(T,0,A,257,MA,jA,q,D,E,u,c),R!=bt||D[0]===0?(R==Ut?b.msg="oversubscribed literal/length tree":R!=p1&&(b.msg="incomplete literal/length tree",R=Ut),R):(y(288),R=v(T,A,x,0,NA,HA,p,X,E,u,c),R!=bt||X[0]===0&&A>257?(R==Ut?b.msg="oversubscribed distance tree":R==pn?(b.msg="incomplete distance tree",R=Ut):R!=p1&&(b.msg="empty distance tree with lengths",R=Ut),R):bt)}}qf.inflate_trees_fixed=function(i,u,c,f){return i[0]=OA,u[0]=DA,c[0]=RA,f[0]=wA,bt};const Fu=0,x1=1,b1=2,S1=3,T1=4,C1=5,O1=6,Df=7,D1=8,Wu=9;function BA(){const i=this;let u,c=0,f,r=0,o=0,h=0,v=0,y=0,A=0,x=0,T,D=0,X,q=0;function p(E,b,R,N,V,F,H,j){let Y,z,I,k,nt,P,st,ut,M,_,$,ht,tt,C,L,W;st=j.next_in_index,ut=j.avail_in,nt=H.bitb,P=H.bitk,M=H.write,_=M<H.read?H.read-M-1:H.end-M,$=Me[E],ht=Me[b];do{for(;P<20;)ut--,nt|=(j.read_byte(st++)&255)<<P,P+=8;if(Y=nt&$,z=R,I=N,W=(I+Y)*3,(k=z[W])===0){nt>>=z[W+1],P-=z[W+1],H.win[M++]=z[W+2],_--;continue}do{if(nt>>=z[W+1],P-=z[W+1],(k&16)!==0){for(k&=15,tt=z[W+2]+(nt&Me[k]),nt>>=k,P-=k;P<15;)ut--,nt|=(j.read_byte(st++)&255)<<P,P+=8;Y=nt&ht,z=V,I=F,W=(I+Y)*3,k=z[W];do if(nt>>=z[W+1],P-=z[W+1],(k&16)!==0){for(k&=15;P<k;)ut--,nt|=(j.read_byte(st++)&255)<<P,P+=8;if(C=z[W+2]+(nt&Me[k]),nt>>=k,P-=k,_-=tt,M>=C)L=M-C,M-L>0&&2>M-L?(H.win[M++]=H.win[L++],H.win[M++]=H.win[L++],tt-=2):(H.win.set(H.win.subarray(L,L+2),M),M+=2,L+=2,tt-=2);else{L=M-C;do L+=H.end;while(L<0);if(k=H.end-L,tt>k){if(tt-=k,M-L>0&&k>M-L)do H.win[M++]=H.win[L++];while(--k!==0);else H.win.set(H.win.subarray(L,L+k),M),M+=k,L+=k,k=0;L=0}}if(M-L>0&&tt>M-L)do H.win[M++]=H.win[L++];while(--tt!==0);else H.win.set(H.win.subarray(L,L+tt),M),M+=tt,L+=tt,tt=0;break}else if((k&64)===0)Y+=z[W+2],Y+=nt&Me[k],W=(I+Y)*3,k=z[W];else return j.msg="invalid distance code",tt=j.avail_in-ut,tt=P>>3<tt?P>>3:tt,ut+=tt,st-=tt,P-=tt<<3,H.bitb=nt,H.bitk=P,j.avail_in=ut,j.total_in+=st-j.next_in_index,j.next_in_index=st,H.write=M,Ut;while(!0);break}if((k&64)===0){if(Y+=z[W+2],Y+=nt&Me[k],W=(I+Y)*3,(k=z[W])===0){nt>>=z[W+1],P-=z[W+1],H.win[M++]=z[W+2],_--;break}}else return(k&32)!==0?(tt=j.avail_in-ut,tt=P>>3<tt?P>>3:tt,ut+=tt,st-=tt,P-=tt<<3,H.bitb=nt,H.bitk=P,j.avail_in=ut,j.total_in+=st-j.next_in_index,j.next_in_index=st,H.write=M,En):(j.msg="invalid literal/length code",tt=j.avail_in-ut,tt=P>>3<tt?P>>3:tt,ut+=tt,st-=tt,P-=tt<<3,H.bitb=nt,H.bitk=P,j.avail_in=ut,j.total_in+=st-j.next_in_index,j.next_in_index=st,H.write=M,Ut)}while(!0)}while(_>=258&&ut>=10);return tt=j.avail_in-ut,tt=P>>3<tt?P>>3:tt,ut+=tt,st-=tt,P-=tt<<3,H.bitb=nt,H.bitk=P,j.avail_in=ut,j.total_in+=st-j.next_in_index,j.next_in_index=st,H.write=M,bt}i.init=function(E,b,R,N,V,F){u=Fu,A=E,x=b,T=R,D=N,X=V,q=F,f=null},i.proc=function(E,b,R){let N,V,F,H=0,j=0,Y=0,z,I,k,nt;for(Y=b.next_in_index,z=b.avail_in,H=E.bitb,j=E.bitk,I=E.write,k=I<E.read?E.read-I-1:E.end-I;;)switch(u){case Fu:if(k>=258&&z>=10&&(E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,R=p(A,x,T,D,X,q,E,b),Y=b.next_in_index,z=b.avail_in,H=E.bitb,j=E.bitk,I=E.write,k=I<E.read?E.read-I-1:E.end-I,R!=bt)){u=R==En?Df:Wu;break}o=A,f=T,r=D,u=x1;case x1:for(N=o;j<N;){if(z!==0)R=bt;else return E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);z--,H|=(b.read_byte(Y++)&255)<<j,j+=8}if(V=(r+(H&Me[N]))*3,H>>>=f[V+1],j-=f[V+1],F=f[V],F===0){h=f[V+2],u=O1;break}if((F&16)!==0){v=F&15,c=f[V+2],u=b1;break}if((F&64)===0){o=F,r=V/3+f[V+2];break}if((F&32)!==0){u=Df;break}return u=Wu,b.msg="invalid literal/length code",R=Ut,E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);case b1:for(N=v;j<N;){if(z!==0)R=bt;else return E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);z--,H|=(b.read_byte(Y++)&255)<<j,j+=8}c+=H&Me[N],H>>=N,j-=N,o=x,f=X,r=q,u=S1;case S1:for(N=o;j<N;){if(z!==0)R=bt;else return E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);z--,H|=(b.read_byte(Y++)&255)<<j,j+=8}if(V=(r+(H&Me[N]))*3,H>>=f[V+1],j-=f[V+1],F=f[V],(F&16)!==0){v=F&15,y=f[V+2],u=T1;break}if((F&64)===0){o=F,r=V/3+f[V+2];break}return u=Wu,b.msg="invalid distance code",R=Ut,E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);case T1:for(N=v;j<N;){if(z!==0)R=bt;else return E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);z--,H|=(b.read_byte(Y++)&255)<<j,j+=8}y+=H&Me[N],H>>=N,j-=N,u=C1;case C1:for(nt=I-y;nt<0;)nt+=E.end;for(;c!==0;){if(k===0&&(I==E.end&&E.read!==0&&(I=0,k=I<E.read?E.read-I-1:E.end-I),k===0&&(E.write=I,R=E.inflate_flush(b,R),I=E.write,k=I<E.read?E.read-I-1:E.end-I,I==E.end&&E.read!==0&&(I=0,k=I<E.read?E.read-I-1:E.end-I),k===0)))return E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);E.win[I++]=E.win[nt++],k--,nt==E.end&&(nt=0),c--}u=Fu;break;case O1:if(k===0&&(I==E.end&&E.read!==0&&(I=0,k=I<E.read?E.read-I-1:E.end-I),k===0&&(E.write=I,R=E.inflate_flush(b,R),I=E.write,k=I<E.read?E.read-I-1:E.end-I,I==E.end&&E.read!==0&&(I=0,k=I<E.read?E.read-I-1:E.end-I),k===0)))return E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);R=bt,E.win[I++]=h,k--,u=Fu;break;case Df:if(j>7&&(j-=8,z++,Y--),E.write=I,R=E.inflate_flush(b,R),I=E.write,k=I<E.read?E.read-I-1:E.end-I,E.read!=E.write)return E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);u=D1;case D1:return R=En,E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);case Wu:return R=Ut,E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);default:return R=ye,E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R)}},i.free=function(){}}const R1=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ya=0,Rf=1,w1=2,M1=3,j1=4,N1=5,_u=6,Pu=7,H1=8,Cl=9;function UA(i,u){const c=this;let f=ya,r=0,o=0,h=0,v;const y=[0],A=[0],x=new BA;let T=0,D=new Int32Array(w2*3);const X=0,q=new qf;c.bitk=0,c.bitb=0,c.win=new Uint8Array(u),c.end=u,c.read=0,c.write=0,c.reset=function(p,E){E&&(E[0]=X),f==_u&&x.free(p),f=ya,c.bitk=0,c.bitb=0,c.read=c.write=0},c.reset(i,null),c.inflate_flush=function(p,E){let b,R,N;return R=p.next_out_index,N=c.read,b=(N<=c.write?c.write:c.end)-N,b>p.avail_out&&(b=p.avail_out),b!==0&&E==pn&&(E=bt),p.avail_out-=b,p.total_out+=b,p.next_out.set(c.win.subarray(N,N+b),R),R+=b,N+=b,N==c.end&&(N=0,c.write==c.end&&(c.write=0),b=c.write-N,b>p.avail_out&&(b=p.avail_out),b!==0&&E==pn&&(E=bt),p.avail_out-=b,p.total_out+=b,p.next_out.set(c.win.subarray(N,N+b),R),R+=b,N+=b),p.next_out_index=R,c.read=N,E},c.proc=function(p,E){let b,R,N,V,F,H,j,Y;for(V=p.next_in_index,F=p.avail_in,R=c.bitb,N=c.bitk,H=c.write,j=H<c.read?c.read-H-1:c.end-H;;){let z,I,k,nt,P,st,ut,M;switch(f){case ya:for(;N<3;){if(F!==0)E=bt;else return c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);F--,R|=(p.read_byte(V++)&255)<<N,N+=8}switch(b=R&7,T=b&1,b>>>1){case 0:R>>>=3,N-=3,b=N&7,R>>>=b,N-=b,f=Rf;break;case 1:z=[],I=[],k=[[]],nt=[[]],qf.inflate_trees_fixed(z,I,k,nt),x.init(z[0],I[0],k[0],0,nt[0],0),R>>>=3,N-=3,f=_u;break;case 2:R>>>=3,N-=3,f=M1;break;case 3:return R>>>=3,N-=3,f=Cl,p.msg="invalid block type",E=Ut,c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E)}break;case Rf:for(;N<32;){if(F!==0)E=bt;else return c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);F--,R|=(p.read_byte(V++)&255)<<N,N+=8}if((~R>>>16&65535)!=(R&65535))return f=Cl,p.msg="invalid stored block lengths",E=Ut,c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);r=R&65535,R=N=0,f=r!==0?w1:T!==0?Pu:ya;break;case w1:if(F===0||j===0&&(H==c.end&&c.read!==0&&(H=0,j=H<c.read?c.read-H-1:c.end-H),j===0&&(c.write=H,E=c.inflate_flush(p,E),H=c.write,j=H<c.read?c.read-H-1:c.end-H,H==c.end&&c.read!==0&&(H=0,j=H<c.read?c.read-H-1:c.end-H),j===0)))return c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);if(E=bt,b=r,b>F&&(b=F),b>j&&(b=j),c.win.set(p.read_buf(V,b),H),V+=b,F-=b,H+=b,j-=b,(r-=b)!==0)break;f=T!==0?Pu:ya;break;case M1:for(;N<14;){if(F!==0)E=bt;else return c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);F--,R|=(p.read_byte(V++)&255)<<N,N+=8}if(o=b=R&16383,(b&31)>29||(b>>5&31)>29)return f=Cl,p.msg="too many length or distance symbols",E=Ut,c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);if(b=258+(b&31)+(b>>5&31),!v||v.length<b)v=[];else for(Y=0;Y<b;Y++)v[Y]=0;R>>>=14,N-=14,h=0,f=j1;case j1:for(;h<4+(o>>>10);){for(;N<3;){if(F!==0)E=bt;else return c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);F--,R|=(p.read_byte(V++)&255)<<N,N+=8}v[R1[h++]]=R&7,R>>>=3,N-=3}for(;h<19;)v[R1[h++]]=0;if(y[0]=7,b=q.inflate_trees_bits(v,y,A,D,p),b!=bt)return E=b,E==Ut&&(v=null,f=Cl),c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);h=0,f=N1;case N1:for(;b=o,!(h>=258+(b&31)+(b>>5&31));){let _,$;for(b=y[0];N<b;){if(F!==0)E=bt;else return c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);F--,R|=(p.read_byte(V++)&255)<<N,N+=8}if(b=D[(A[0]+(R&Me[b]))*3+1],$=D[(A[0]+(R&Me[b]))*3+2],$<16)R>>>=b,N-=b,v[h++]=$;else{for(Y=$==18?7:$-14,_=$==18?11:3;N<b+Y;){if(F!==0)E=bt;else return c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);F--,R|=(p.read_byte(V++)&255)<<N,N+=8}if(R>>>=b,N-=b,_+=R&Me[Y],R>>>=Y,N-=Y,Y=h,b=o,Y+_>258+(b&31)+(b>>5&31)||$==16&&Y<1)return v=null,f=Cl,p.msg="invalid bit length repeat",E=Ut,c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);$=$==16?v[Y-1]:0;do v[Y++]=$;while(--_!==0);h=Y}}if(A[0]=-1,P=[],st=[],ut=[],M=[],P[0]=9,st[0]=6,b=o,b=q.inflate_trees_dynamic(257+(b&31),1+(b>>5&31),v,P,st,ut,M,D,p),b!=bt)return b==Ut&&(v=null,f=Cl),E=b,c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);x.init(P[0],st[0],D,ut[0],D,M[0]),f=_u;case _u:if(c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,(E=x.proc(c,p,E))!=En)return c.inflate_flush(p,E);if(E=bt,x.free(p),V=p.next_in_index,F=p.avail_in,R=c.bitb,N=c.bitk,H=c.write,j=H<c.read?c.read-H-1:c.end-H,T===0){f=ya;break}f=Pu;case Pu:if(c.write=H,E=c.inflate_flush(p,E),H=c.write,j=H<c.read?c.read-H-1:c.end-H,c.read!=c.write)return c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);f=H1;case H1:return E=En,c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);case Cl:return E=Ut,c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E);default:return E=ye,c.bitb=R,c.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,c.write=H,c.inflate_flush(p,E)}}},c.free=function(p){c.reset(p,null),c.win=null,D=null},c.set_dictionary=function(p,E,b){c.win.set(p.subarray(E,E+b),0),c.read=c.write=b},c.sync_point=function(){return f==Rf?1:0}}const QA=32,zA=8,YA=0,B1=1,U1=2,Q1=3,z1=4,Y1=5,wf=6,yi=7,L1=12,Pn=13,LA=[0,0,255,255];function GA(){const i=this;i.mode=0,i.method=0,i.was=[0],i.need=0,i.marker=0,i.wbits=0;function u(c){return!c||!c.istate?ye:(c.total_in=c.total_out=0,c.msg=null,c.istate.mode=yi,c.istate.blocks.reset(c,null),bt)}i.inflateEnd=function(c){return i.blocks&&i.blocks.free(c),i.blocks=null,bt},i.inflateInit=function(c,f){return c.msg=null,i.blocks=null,f<8||f>15?(i.inflateEnd(c),ye):(i.wbits=f,c.istate.blocks=new UA(c,1<<f),u(c),bt)},i.inflate=function(c,f){let r,o;if(!c||!c.istate||!c.next_in)return ye;const h=c.istate;for(f=f==CA?pn:bt,r=pn;;)switch(h.mode){case YA:if(c.avail_in===0)return r;if(r=f,c.avail_in--,c.total_in++,((h.method=c.read_byte(c.next_in_index++))&15)!=zA){h.mode=Pn,c.msg="unknown compression method",h.marker=5;break}if((h.method>>4)+8>h.wbits){h.mode=Pn,c.msg="invalid win size",h.marker=5;break}h.mode=B1;case B1:if(c.avail_in===0)return r;if(r=f,c.avail_in--,c.total_in++,o=c.read_byte(c.next_in_index++)&255,((h.method<<8)+o)%31!==0){h.mode=Pn,c.msg="incorrect header check",h.marker=5;break}if((o&QA)===0){h.mode=yi;break}h.mode=U1;case U1:if(c.avail_in===0)return r;r=f,c.avail_in--,c.total_in++,h.need=(c.read_byte(c.next_in_index++)&255)<<24&4278190080,h.mode=Q1;case Q1:if(c.avail_in===0)return r;r=f,c.avail_in--,c.total_in++,h.need+=(c.read_byte(c.next_in_index++)&255)<<16&16711680,h.mode=z1;case z1:if(c.avail_in===0)return r;r=f,c.avail_in--,c.total_in++,h.need+=(c.read_byte(c.next_in_index++)&255)<<8&65280,h.mode=Y1;case Y1:return c.avail_in===0?r:(r=f,c.avail_in--,c.total_in++,h.need+=c.read_byte(c.next_in_index++)&255,h.mode=wf,SA);case wf:return h.mode=Pn,c.msg="need dictionary",h.marker=0,ye;case yi:if(r=h.blocks.proc(c,r),r==Ut){h.mode=Pn,h.marker=0;break}if(r==bt&&(r=f),r!=En)return r;r=f,h.blocks.reset(c,h.was),h.mode=L1;case L1:return c.avail_in=0,En;case Pn:return Ut;default:return ye}},i.inflateSetDictionary=function(c,f,r){let o=0,h=r;if(!c||!c.istate||c.istate.mode!=wf)return ye;const v=c.istate;return h>=1<<v.wbits&&(h=(1<<v.wbits)-1,o=r-h),v.blocks.set_dictionary(f,o,h),v.mode=yi,bt},i.inflateSync=function(c){let f,r,o,h,v;if(!c||!c.istate)return ye;const y=c.istate;if(y.mode!=Pn&&(y.mode=Pn,y.marker=0),(f=c.avail_in)===0)return pn;for(r=c.next_in_index,o=y.marker;f!==0&&o<4;)c.read_byte(r)==LA[o]?o++:c.read_byte(r)!==0?o=0:o=4-o,r++,f--;return c.total_in+=r-c.next_in_index,c.next_in_index=r,c.avail_in=f,y.marker=o,o!=4?Ut:(h=c.total_in,v=c.total_out,u(c),c.total_in=h,c.total_out=v,y.mode=yi,bt)},i.inflateSyncPoint=function(c){return!c||!c.istate||!c.istate.blocks?ye:c.istate.blocks.sync_point()}}function M2(){}M2.prototype={inflateInit(i){const u=this;return u.istate=new GA,i||(i=bA),u.istate.inflateInit(u,i)},inflate(i){const u=this;return u.istate?u.istate.inflate(u,i):ye},inflateEnd(){const i=this;if(!i.istate)return ye;const u=i.istate.inflateEnd(i);return i.istate=null,u},inflateSync(){const i=this;return i.istate?i.istate.inflateSync(i):ye},inflateSetDictionary(i,u){const c=this;return c.istate?c.istate.inflateSetDictionary(c,i,u):ye},read_byte(i){return this.next_in[i]},read_buf(i,u){return this.next_in.subarray(i,i+u)}};function XA(i){const u=this,c=new M2,f=i&&i.chunkSize?Math.floor(i.chunkSize*2):128*1024,r=TA,o=new Uint8Array(f);let h=!1;c.inflateInit(),c.next_out=o,u.append=function(v,y){const A=[];let x,T,D=0,X=0,q=0;if(v.length!==0){c.next_in_index=0,c.next_in=v,c.avail_in=v.length;do{if(c.next_out_index=0,c.avail_out=f,c.avail_in===0&&!h&&(c.next_in_index=0,h=!0),x=c.inflate(r),h&&x===pn){if(c.avail_in!==0)throw new Error("inflating: bad input")}else if(x!==bt&&x!==En)throw new Error("inflating: "+c.msg);if((h||x===En)&&c.avail_in===v.length)throw new Error("inflating: bad input");c.next_out_index&&(c.next_out_index===f?A.push(new Uint8Array(o)):A.push(o.subarray(0,c.next_out_index))),q+=c.next_out_index,y&&c.next_in_index>0&&c.next_in_index!=D&&(y(c.next_in_index),D=c.next_in_index)}while(c.avail_in>0||c.avail_out===0);return A.length>1?(T=new Uint8Array(q),A.forEach(function(p){T.set(p,X),X+=p.length})):T=A[0]?new Uint8Array(A[0]):new Uint8Array,T}},u.flush=function(){c.inflateEnd()}}const Rl=4294967295,el=65535,VA=8,ZA=0,IA=99,qA=67324752,j2=134695760,KA=j2,G1=33639248,kA=101010256,X1=101075792,JA=117853008,Ea=22,Mf=20,jf=56,FA=12,WA=20,V1=4,_A=1,PA=39169,$A=10,t5=1,e5=21589,n5=28789,l5=25461,a5=6534,Z1=1,i5=6,I1=8,q1=2048,K1=16,u5=61440,c5=16384,s5=73,k1="/",Nf=30,f5=10,r5=14,o5=18,$t=void 0,al="undefined",Ri="function";class J1{constructor(u){return class extends TransformStream{constructor(c,f){const r=new u(f);super({transform(o,h){h.enqueue(r.append(o))},flush(o){const h=r.flush();h&&o.enqueue(h)}})}}}}const d5=64;let N2=2;try{typeof navigator!=al&&navigator.hardwareConcurrency&&(N2=navigator.hardwareConcurrency)}catch{}const h5={chunkSize:512*1024,maxWorkers:N2,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:$t,CompressionStreamNative:typeof CompressionStream!=al&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=al&&DecompressionStream},nl=Object.assign({},h5);function m5(){return nl}function g5(i){return Math.max(i.chunkSize,d5)}function H2(i){const{baseURL:u,chunkSize:c,maxWorkers:f,terminateWorkerTimeout:r,useCompressionStream:o,useWebWorkers:h,Deflate:v,Inflate:y,CompressionStream:A,DecompressionStream:x,workerScripts:T}=i;if($n("baseURL",u),$n("chunkSize",c),$n("maxWorkers",f),$n("terminateWorkerTimeout",r),$n("useCompressionStream",o),$n("useWebWorkers",h),v&&(nl.CompressionStream=new J1(v)),y&&(nl.DecompressionStream=new J1(y)),$n("CompressionStream",A),$n("DecompressionStream",x),T!==$t){const{deflate:D,inflate:X}=T;if((D||X)&&(nl.workerScripts||(nl.workerScripts={})),D){if(!Array.isArray(D))throw new Error("workerScripts.deflate must be an array");nl.workerScripts.deflate=D}if(X){if(!Array.isArray(X))throw new Error("workerScripts.inflate must be an array");nl.workerScripts.inflate=X}}}function $n(i,u){u!==$t&&(nl[i]=u)}const B2=[];for(let i=0;i<256;i++){let u=i;for(let c=0;c<8;c++)u&1?u=u>>>1^3988292384:u=u>>>1;B2[i]=u}class ac{constructor(u){this.crc=u||-1}append(u){let c=this.crc|0;for(let f=0,r=u.length|0;f<r;f++)c=c>>>8^B2[(c^u[f])&255];this.crc=c}get(){return~this.crc}}class U2 extends TransformStream{constructor(){let u;const c=new ac;super({transform(f,r){c.append(f),r.enqueue(f)},flush(){const f=new Uint8Array(4);new DataView(f.buffer).setUint32(0,c.get()),u.value=f}}),u=this}}function A5(i){if(typeof TextEncoder==al){i=unescape(encodeURIComponent(i));const u=new Uint8Array(i.length);for(let c=0;c<u.length;c++)u[c]=i.charCodeAt(c);return u}else return new TextEncoder().encode(i)}const re={concat(i,u){if(i.length===0||u.length===0)return i.concat(u);const c=i[i.length-1],f=re.getPartial(c);return f===32?i.concat(u):re._shiftRight(u,f,c|0,i.slice(0,i.length-1))},bitLength(i){const u=i.length;if(u===0)return 0;const c=i[u-1];return(u-1)*32+re.getPartial(c)},clamp(i,u){if(i.length*32<u)return i;i=i.slice(0,Math.ceil(u/32));const c=i.length;return u=u&31,c>0&&u&&(i[c-1]=re.partial(u,i[c-1]&2147483648>>u-1,1)),i},partial(i,u,c){return i===32?u:(c?u|0:u<<32-i)+i*1099511627776},getPartial(i){return Math.round(i/1099511627776)||32},_shiftRight(i,u,c,f){for(f===void 0&&(f=[]);u>=32;u-=32)f.push(c),c=0;if(u===0)return f.concat(i);for(let h=0;h<i.length;h++)f.push(c|i[h]>>>u),c=i[h]<<32-u;const r=i.length?i[i.length-1]:0,o=re.getPartial(r);return f.push(re.partial(u+o&31,u+o>32?c:f.pop(),1)),f}},ic={bytes:{fromBits(i){const c=re.bitLength(i)/8,f=new Uint8Array(c);let r;for(let o=0;o<c;o++)(o&3)===0&&(r=i[o/4]),f[o]=r>>>24,r<<=8;return f},toBits(i){const u=[];let c,f=0;for(c=0;c<i.length;c++)f=f<<8|i[c],(c&3)===3&&(u.push(f),f=0);return c&3&&u.push(re.partial(8*(c&3),f)),u}}},Q2={};Q2.sha1=class{constructor(i){const u=this;u.blockSize=512,u._init=[1732584193,4023233417,2562383102,271733878,3285377520],u._key=[1518500249,1859775393,2400959708,3395469782],i?(u._h=i._h.slice(0),u._buffer=i._buffer.slice(0),u._length=i._length):u.reset()}reset(){const i=this;return i._h=i._init.slice(0),i._buffer=[],i._length=0,i}update(i){const u=this;typeof i=="string"&&(i=ic.utf8String.toBits(i));const c=u._buffer=re.concat(u._buffer,i),f=u._length,r=u._length=f+re.bitLength(i);if(r>9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const o=new Uint32Array(c);let h=0;for(let v=u.blockSize+f-(u.blockSize+f&u.blockSize-1);v<=r;v+=u.blockSize)u._block(o.subarray(16*h,16*(h+1))),h+=1;return c.splice(0,16*h),u}finalize(){const i=this;let u=i._buffer;const c=i._h;u=re.concat(u,[re.partial(1,1)]);for(let f=u.length+2;f&15;f++)u.push(0);for(u.push(Math.floor(i._length/4294967296)),u.push(i._length|0);u.length;)i._block(u.splice(0,16));return i.reset(),c}_f(i,u,c,f){if(i<=19)return u&c|~u&f;if(i<=39)return u^c^f;if(i<=59)return u&c|u&f|c&f;if(i<=79)return u^c^f}_S(i,u){return u<<i|u>>>32-i}_block(i){const u=this,c=u._h,f=Array(80);for(let A=0;A<16;A++)f[A]=i[A];let r=c[0],o=c[1],h=c[2],v=c[3],y=c[4];for(let A=0;A<=79;A++){A>=16&&(f[A]=u._S(1,f[A-3]^f[A-8]^f[A-14]^f[A-16]));const x=u._S(5,r)+u._f(A,o,h,v)+y+f[A]+u._key[Math.floor(A/20)]|0;y=v,v=h,h=u._S(30,o),o=r,r=x}c[0]=c[0]+r|0,c[1]=c[1]+o|0,c[2]=c[2]+h|0,c[3]=c[3]+v|0,c[4]=c[4]+y|0}};const z2={};z2.aes=class{constructor(i){const u=this;u._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],u._tables[0][0][0]||u._precompute();const c=u._tables[0][4],f=u._tables[1],r=i.length;let o,h,v,y=1;if(r!==4&&r!==6&&r!==8)throw new Error("invalid aes key size");for(u._key=[h=i.slice(0),v=[]],o=r;o<4*r+28;o++){let A=h[o-1];(o%r===0||r===8&&o%r===4)&&(A=c[A>>>24]<<24^c[A>>16&255]<<16^c[A>>8&255]<<8^c[A&255],o%r===0&&(A=A<<8^A>>>24^y<<24,y=y<<1^(y>>7)*283)),h[o]=h[o-r]^A}for(let A=0;o;A++,o--){const x=h[A&3?o:o-4];o<=4||A<4?v[A]=x:v[A]=f[0][c[x>>>24]]^f[1][c[x>>16&255]]^f[2][c[x>>8&255]]^f[3][c[x&255]]}}encrypt(i){return this._crypt(i,0)}decrypt(i){return this._crypt(i,1)}_precompute(){const i=this._tables[0],u=this._tables[1],c=i[4],f=u[4],r=[],o=[];let h,v,y,A;for(let x=0;x<256;x++)o[(r[x]=x<<1^(x>>7)*283)^x]=x;for(let x=h=0;!c[x];x^=v||1,h=o[h]||1){let T=h^h<<1^h<<2^h<<3^h<<4;T=T>>8^T&255^99,c[x]=T,f[T]=x,A=r[y=r[v=r[x]]];let D=A*16843009^y*65537^v*257^x*16843008,X=r[T]*257^T*16843008;for(let q=0;q<4;q++)i[q][x]=X=X<<24^X>>>8,u[q][T]=D=D<<24^D>>>8}for(let x=0;x<5;x++)i[x]=i[x].slice(0),u[x]=u[x].slice(0)}_crypt(i,u){if(i.length!==4)throw new Error("invalid aes block size");const c=this._key[u],f=c.length/4-2,r=[0,0,0,0],o=this._tables[u],h=o[0],v=o[1],y=o[2],A=o[3],x=o[4];let T=i[0]^c[0],D=i[u?3:1]^c[1],X=i[2]^c[2],q=i[u?1:3]^c[3],p=4,E,b,R;for(let N=0;N<f;N++)E=h[T>>>24]^v[D>>16&255]^y[X>>8&255]^A[q&255]^c[p],b=h[D>>>24]^v[X>>16&255]^y[q>>8&255]^A[T&255]^c[p+1],R=h[X>>>24]^v[q>>16&255]^y[T>>8&255]^A[D&255]^c[p+2],q=h[q>>>24]^v[T>>16&255]^y[D>>8&255]^A[X&255]^c[p+3],p+=4,T=E,D=b,X=R;for(let N=0;N<4;N++)r[u?3&-N:N]=x[T>>>24]<<24^x[D>>16&255]<<16^x[X>>8&255]<<8^x[q&255]^c[p++],E=T,T=D,D=X,X=q,q=E;return r}};const v5={getRandomValues(i){const u=new Uint32Array(i.buffer),c=f=>{let r=987654321;const o=4294967295;return function(){return r=36969*(r&65535)+(r>>16)&o,f=18e3*(f&65535)+(f>>16)&o,(((r<<16)+f&o)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let f=0,r;f<i.length;f+=4){const o=c((r||Math.random())*4294967296);r=o()*987654071,u[f/4]=o()*4294967296|0}return i}},Y2={};Y2.ctrGladman=class{constructor(i,u){this._prf=i,this._initIv=u,this._iv=u}reset(){this._iv=this._initIv}update(i){return this.calculate(this._prf,i,this._iv)}incWord(i){if((i>>24&255)===255){let u=i>>16&255,c=i>>8&255,f=i&255;u===255?(u=0,c===255?(c=0,f===255?f=0:++f):++c):++u,i=0,i+=u<<16,i+=c<<8,i+=f}else i+=1<<24;return i}incCounter(i){(i[0]=this.incWord(i[0]))===0&&(i[1]=this.incWord(i[1]))}calculate(i,u,c){let f;if(!(f=u.length))return[];const r=re.bitLength(u);for(let o=0;o<f;o+=4){this.incCounter(c);const h=i.encrypt(c);u[o]^=h[0],u[o+1]^=h[1],u[o+2]^=h[2],u[o+3]^=h[3]}return re.clamp(u,r)}};const wl={importKey(i){return new wl.hmacSha1(ic.bytes.toBits(i))},pbkdf2(i,u,c,f){if(c=c||1e4,f<0||c<0)throw new Error("invalid params to pbkdf2");const r=(f>>5)+1<<2;let o,h,v,y,A;const x=new ArrayBuffer(r),T=new DataView(x);let D=0;const X=re;for(u=ic.bytes.toBits(u),A=1;D<(r||1);A++){for(o=h=i.encrypt(X.concat(u,[A])),v=1;v<c;v++)for(h=i.encrypt(h),y=0;y<h.length;y++)o[y]^=h[y];for(v=0;D<(r||1)&&v<o.length;v++)T.setInt32(D,o[v]),D+=4}return x.slice(0,f/8)}};wl.hmacSha1=class{constructor(i){const u=this,c=u._hash=Q2.sha1,f=[[],[]];u._baseHash=[new c,new c];const r=u._baseHash[0].blockSize/32;i.length>r&&(i=new c().update(i).finalize());for(let o=0;o<r;o++)f[0][o]=i[o]^909522486,f[1][o]=i[o]^1549556828;u._baseHash[0].update(f[0]),u._baseHash[1].update(f[1]),u._resultHash=new c(u._baseHash[0])}reset(){const i=this;i._resultHash=new i._hash(i._baseHash[0]),i._updated=!1}update(i){const u=this;u._updated=!0,u._resultHash.update(i)}digest(){const i=this,u=i._resultHash.finalize(),c=new i._hash(i._baseHash[1]).update(u).finalize();return i.reset(),c}encrypt(i){if(this._updated)throw new Error("encrypt on already updated hmac called!");return this.update(i),this.digest(i)}};const y5=typeof crypto!=al&&typeof crypto.getRandomValues==Ri,lr="Invalid password",ar="Invalid signature",ir="zipjs-abort-check-password";function L2(i){return y5?crypto.getRandomValues(i):v5.getRandomValues(i)}const pa=16,E5="raw",G2={name:"PBKDF2"},p5={name:"HMAC"},x5="SHA-1",b5=Object.assign({hash:p5},G2),Kf=Object.assign({iterations:1e3,hash:{name:x5}},G2),S5=["deriveBits"],Si=[8,12,16],Ei=[16,24,32],tl=10,T5=[0,0,0,0],cc=typeof crypto!=al,wi=cc&&crypto.subtle,X2=cc&&typeof wi!=al,Pe=ic.bytes,C5=z2.aes,O5=Y2.ctrGladman,D5=wl.hmacSha1;let F1=cc&&X2&&typeof wi.importKey==Ri,W1=cc&&X2&&typeof wi.deriveBits==Ri;class R5 extends TransformStream{constructor({password:u,rawPassword:c,signed:f,encryptionStrength:r,checkPasswordOnly:o}){super({start(){Object.assign(this,{ready:new Promise(h=>this.resolveReady=h),password:I2(u,c),signed:f,strength:r-1,pending:new Uint8Array})},async transform(h,v){const y=this,{password:A,strength:x,resolveReady:T,ready:D}=y;A?(await M5(y,x,A,Xe(h,0,Si[x]+2)),h=Xe(h,Si[x]+2),o?v.error(new Error(ir)):T()):await D;const X=new Uint8Array(h.length-tl-(h.length-tl)%pa);v.enqueue(V2(y,h,X,0,tl,!0))},async flush(h){const{signed:v,ctr:y,hmac:A,pending:x,ready:T}=this;if(A&&y){await T;const D=Xe(x,0,x.length-tl),X=Xe(x,x.length-tl);let q=new Uint8Array;if(D.length){const p=Ci(Pe,D);A.update(p);const E=y.update(p);q=Ti(Pe,E)}if(v){const p=Xe(Ti(Pe,A.digest()),0,tl);for(let E=0;E<tl;E++)if(p[E]!=X[E])throw new Error(ar)}h.enqueue(q)}}})}}class w5 extends TransformStream{constructor({password:u,rawPassword:c,encryptionStrength:f}){let r;super({start(){Object.assign(this,{ready:new Promise(o=>this.resolveReady=o),password:I2(u,c),strength:f-1,pending:new Uint8Array})},async transform(o,h){const v=this,{password:y,strength:A,resolveReady:x,ready:T}=v;let D=new Uint8Array;y?(D=await j5(v,A,y),x()):await T;const X=new Uint8Array(D.length+o.length-o.length%pa);X.set(D,0),h.enqueue(V2(v,o,X,D.length,0))},async flush(o){const{ctr:h,hmac:v,pending:y,ready:A}=this;if(v&&h){await A;let x=new Uint8Array;if(y.length){const T=h.update(Ci(Pe,y));v.update(T),x=Ti(Pe,T)}r.signature=Ti(Pe,v.digest()).slice(0,tl),o.enqueue(ur(x,r.signature))}}}),r=this}}function V2(i,u,c,f,r,o){const{ctr:h,hmac:v,pending:y}=i,A=u.length-r;y.length&&(u=ur(y,u),c=B5(c,A-A%pa));let x;for(x=0;x<=A-pa;x+=pa){const T=Ci(Pe,Xe(u,x,x+pa));o&&v.update(T);const D=h.update(T);o||v.update(D),c.set(Ti(Pe,D),x+f)}return i.pending=Xe(u,x),c}async function M5(i,u,c,f){const r=await Z2(i,u,c,Xe(f,0,Si[u])),o=Xe(f,Si[u]);if(r[0]!=o[0]||r[1]!=o[1])throw new Error(lr)}async function j5(i,u,c){const f=L2(new Uint8Array(Si[u])),r=await Z2(i,u,c,f);return ur(f,r)}async function Z2(i,u,c,f){i.password=null;const r=await N5(E5,c,b5,!1,S5),o=await H5(Object.assign({salt:f},Kf),r,8*(Ei[u]*2+2)),h=new Uint8Array(o),v=Ci(Pe,Xe(h,0,Ei[u])),y=Ci(Pe,Xe(h,Ei[u],Ei[u]*2)),A=Xe(h,Ei[u]*2);return Object.assign(i,{keys:{key:v,authentication:y,passwordVerification:A},ctr:new O5(new C5(v),Array.from(T5)),hmac:new D5(y)}),A}async function N5(i,u,c,f,r){if(F1)try{return await wi.importKey(i,u,c,f,r)}catch{return F1=!1,wl.importKey(u)}else return wl.importKey(u)}async function H5(i,u,c){if(W1)try{return await wi.deriveBits(i,u,c)}catch{return W1=!1,wl.pbkdf2(u,i.salt,Kf.iterations,c)}else return wl.pbkdf2(u,i.salt,Kf.iterations,c)}function I2(i,u){return u===$t?A5(i):u}function ur(i,u){let c=i;return i.length+u.length&&(c=new Uint8Array(i.length+u.length),c.set(i,0),c.set(u,i.length)),c}function B5(i,u){if(u&&u>i.length){const c=i;i=new Uint8Array(u),i.set(c,0)}return i}function Xe(i,u,c){return i.subarray(u,c)}function Ti(i,u){return i.fromBits(u)}function Ci(i,u){return i.toBits(u)}const bi=12;class U5 extends TransformStream{constructor({password:u,passwordVerification:c,checkPasswordOnly:f}){super({start(){Object.assign(this,{password:u,passwordVerification:c}),q2(this,u)},transform(r,o){const h=this;if(h.password){const v=_1(h,r.subarray(0,bi));if(h.password=null,v.at(-1)!=h.passwordVerification)throw new Error(lr);r=r.subarray(bi)}f?o.error(new Error(ir)):o.enqueue(_1(h,r))}})}}class Q5 extends TransformStream{constructor({password:u,passwordVerification:c}){super({start(){Object.assign(this,{password:u,passwordVerification:c}),q2(this,u)},transform(f,r){const o=this;let h,v;if(o.password){o.password=null;const y=L2(new Uint8Array(bi));y[bi-1]=o.passwordVerification,h=new Uint8Array(f.length+y.length),h.set(P1(o,y),0),v=bi}else h=new Uint8Array(f.length),v=0;h.set(P1(o,f),v),r.enqueue(h)}})}}function _1(i,u){const c=new Uint8Array(u.length);for(let f=0;f<u.length;f++)c[f]=K2(i)^u[f],cr(i,c[f]);return c}function P1(i,u){const c=new Uint8Array(u.length);for(let f=0;f<u.length;f++)c[f]=K2(i)^u[f],cr(i,u[f]);return c}function q2(i,u){const c=[305419896,591751049,878082192];Object.assign(i,{keys:c,crcKey0:new ac(c[0]),crcKey2:new ac(c[2])});for(let f=0;f<u.length;f++)cr(i,u.charCodeAt(f))}function cr(i,u){let[c,f,r]=i.keys;i.crcKey0.append([u]),c=~i.crcKey0.get(),f=$1(Math.imul($1(f+k2(c)),134775813)+1),i.crcKey2.append([f>>>24]),r=~i.crcKey2.get(),i.keys=[c,f,r]}function K2(i){const u=i.keys[2]|2;return k2(Math.imul(u,u^1)>>>8)}function k2(i){return i&255}function $1(i){return i&4294967295}const sr="Invalid uncompressed size",t2="deflate-raw";class z5 extends TransformStream{constructor(u,{chunkSize:c,CompressionStream:f,CompressionStreamNative:r}){super({});const{compressed:o,encrypted:h,useCompressionStream:v,zipCrypto:y,signed:A,level:x}=u,T=this;let D,X,q=super.readable;(!h||y)&&A&&(D=new U2,q=xn(q,D)),o&&(q=F2(q,v,{level:x,chunkSize:c},r,f)),h&&(y?q=xn(q,new Q5(u)):(X=new w5(u),q=xn(q,X))),J2(T,q,()=>{let p;h&&!y&&(p=X.signature),(!h||y)&&A&&(p=new DataView(D.value.buffer).getUint32(0)),T.signature=p})}}class Y5 extends TransformStream{constructor(u,{chunkSize:c,DecompressionStream:f,DecompressionStreamNative:r}){super({});const{zipCrypto:o,encrypted:h,signed:v,signature:y,compressed:A,useCompressionStream:x}=u;let T,D,X=super.readable;h&&(o?X=xn(X,new U5(u)):(D=new R5(u),X=xn(X,D))),A&&(X=F2(X,x,{chunkSize:c},r,f)),(!h||o)&&v&&(T=new U2,X=xn(X,T)),J2(this,X,()=>{if((!h||o)&&v){const q=new DataView(T.value.buffer);if(y!=q.getUint32(0,!1))throw new Error(ar)}})}}function J2(i,u,c){u=xn(u,new TransformStream({flush:c})),Object.defineProperty(i,"readable",{get(){return u}})}function F2(i,u,c,f,r){try{const o=u&&f?f:r;i=xn(i,new o(t2,c))}catch(o){if(u)i=xn(i,new r(t2,c));else throw o}return i}function xn(i,u){return i.pipeThrough(u)}const L5="message",G5="start",X5="pull",e2="data",V5="ack",n2="close",Z5="deflate",W2="inflate";class I5 extends TransformStream{constructor(u,c){super({});const f=this,{codecType:r}=u;let o;r.startsWith(Z5)?o=z5:r.startsWith(W2)&&(o=Y5),f.outputSize=0;let h=0;const v=new o(u,c),y=super.readable,A=new TransformStream({transform(T,D){T&&T.length&&(h+=T.length,D.enqueue(T))},flush(){Object.assign(f,{inputSize:h})}}),x=new TransformStream({transform(T,D){if(T&&T.length&&(D.enqueue(T),f.outputSize+=T.length,u.outputSize&&f.outputSize>u.outputSize))throw new Error(sr)},flush(){const{signature:T}=v;Object.assign(f,{signature:T,inputSize:h})}});Object.defineProperty(f,"readable",{get(){return y.pipeThrough(A).pipeThrough(v).pipeThrough(x)}})}}class q5 extends TransformStream{constructor(u){let c;super({transform:f,flush(r){c&&c.length&&r.enqueue(c)}});function f(r,o){if(c){const h=new Uint8Array(c.length+r.length);h.set(c),h.set(r,c.length),r=h,c=null}r.length>u?(o.enqueue(r.slice(0,u)),f(r.slice(u),o)):c=r}}}let _2=typeof Worker!=al;class Hf{constructor(u,{readable:c,writable:f},{options:r,config:o,streamOptions:h,useWebWorkers:v,transferStreams:y,scripts:A},x){const{signal:T}=h;return Object.assign(u,{busy:!0,readable:c.pipeThrough(new q5(o.chunkSize)).pipeThrough(new K5(h),{signal:T}),writable:f,options:Object.assign({},r),scripts:A,transferStreams:y,terminate(){return new Promise(D=>{const{worker:X,busy:q}=u;X?(q?u.resolveTerminated=D:(X.terminate(),D()),u.interface=null):D()})},onTaskFinished(){const{resolveTerminated:D}=u;D&&(u.resolveTerminated=null,u.terminated=!0,u.worker.terminate(),D()),u.busy=!1,x(u)}}),(v&&_2?k5:P2)(u,o)}}class K5 extends TransformStream{constructor({onstart:u,onprogress:c,size:f,onend:r}){let o=0;super({async start(){u&&await Bf(u,f)},async transform(h,v){o+=h.length,c&&await Bf(c,o,f),v.enqueue(h)},async flush(){r&&await Bf(r,o)}})}}async function Bf(i,...u){try{await i(...u)}catch{}}function P2(i,u){return{run:()=>J5(i,u)}}function k5(i,u){const{baseURL:c,chunkSize:f}=u;if(!i.interface){let r;try{r=_5(i.scripts[0],c,i)}catch{return _2=!1,P2(i,u)}Object.assign(i,{worker:r,interface:{run:()=>F5(i,{chunkSize:f})}})}return i.interface}async function J5({options:i,readable:u,writable:c,onTaskFinished:f},r){let o;try{o=new I5(i,r),await u.pipeThrough(o).pipeTo(c,{preventClose:!0,preventAbort:!0});const{signature:h,inputSize:v,outputSize:y}=o;return{signature:h,inputSize:v,outputSize:y}}catch(h){throw o&&(h.outputSize=o.outputSize),h}finally{f()}}async function F5(i,u){let c,f;const r=new Promise((D,X)=>{c=D,f=X});Object.assign(i,{reader:null,writer:null,resolveResult:c,rejectResult:f,result:r});const{readable:o,options:h,scripts:v}=i,{writable:y,closed:A}=W5(i.writable),x=ec({type:G5,scripts:v.slice(1),options:h,config:u,readable:o,writable:y},i);x||Object.assign(i,{reader:o.getReader(),writer:y.getWriter()});const T=await r;return x||await y.getWriter().close(),await A,T}function W5(i){let u;const c=new Promise(r=>u=r);return{writable:new WritableStream({async write(r){const o=i.getWriter();await o.ready,await o.write(r),o.releaseLock()},close(){u()},abort(r){return i.getWriter().abort(r)}}),closed:c}}let l2=!0,a2=!0;function _5(i,u,c){const f={type:"module"};let r,o;typeof i==Ri&&(i=i());try{r=new URL(i,u)}catch{r=i}if(l2)try{o=new Worker(r)}catch{l2=!1,o=new Worker(r,f)}else o=new Worker(r,f);return o.addEventListener(L5,h=>P5(h,c)),o}function ec(i,{worker:u,writer:c,onTaskFinished:f,transferStreams:r}){try{const{value:o,readable:h,writable:v}=i,y=[];if(o&&(o.byteLength<o.buffer.byteLength?i.value=o.buffer.slice(0,o.byteLength):i.value=o.buffer,y.push(i.value)),r&&a2?(h&&y.push(h),v&&y.push(v)):i.readable=i.writable=null,y.length)try{return u.postMessage(i,y),!0}catch{a2=!1,i.readable=i.writable=null,u.postMessage(i)}else u.postMessage(i)}catch(o){throw c&&c.releaseLock(),f(),o}}async function P5({data:i},u){const{type:c,value:f,messageId:r,result:o,error:h}=i,{reader:v,writer:y,resolveResult:A,rejectResult:x,onTaskFinished:T}=u;try{if(h){const{message:X,stack:q,code:p,name:E,outputSize:b}=h,R=new Error(X);Object.assign(R,{stack:q,code:p,name:E,outputSize:b}),D(R)}else{if(c==X5){const{value:X,done:q}=await v.read();ec({type:e2,value:X,done:q,messageId:r},u)}c==e2&&(await y.ready,await y.write(new Uint8Array(f)),ec({type:V5,messageId:r},u)),c==n2&&D(null,o)}}catch(X){ec({type:n2,messageId:r},u),D(X)}function D(X,q){X?x(X):A(q),y&&y.releaseLock(),T()}}let Ol=[];const Uf=[];let i2=0;async function $5(i,u){const{options:c,config:f}=u,{transferStreams:r,useWebWorkers:o,useCompressionStream:h,codecType:v,compressed:y,signed:A,encrypted:x}=c,{workerScripts:T,maxWorkers:D}=f;u.transferStreams=r||r===$t;const X=!y&&!A&&!x&&!u.transferStreams;return u.useWebWorkers=!X&&(o||o===$t&&f.useWebWorkers),u.scripts=u.useWebWorkers&&T?T[v]:[],c.useCompressionStream=h||h===$t&&f.useCompressionStream,(await q()).run();async function q(){const E=Ol.find(b=>!b.busy);if(E)return u2(E),new Hf(E,i,u,p);if(Ol.length<D){const b={indexWorker:i2};return i2++,Ol.push(b),new Hf(b,i,u,p)}else return new Promise(b=>Uf.push({resolve:b,stream:i,workerOptions:u}))}function p(E){if(Uf.length){const[{resolve:b,stream:R,workerOptions:N}]=Uf.splice(0,1);b(new Hf(E,R,N,p))}else E.worker?(u2(E),t8(E,u)):Ol=Ol.filter(b=>b!=E)}}function t8(i,u){const{config:c}=u,{terminateWorkerTimeout:f}=c;Number.isFinite(f)&&f>=0&&(i.terminated?i.terminated=!1:i.terminateTimeout=setTimeout(async()=>{Ol=Ol.filter(r=>r!=i);try{await i.terminate()}catch{}},f))}function u2(i){const{terminateTimeout:u}=i;u&&(clearTimeout(u),i.terminateTimeout=null)}const $2="Writer iterator completed too soon",e8="Content-Type",n8=64*1024,th="writable";class fr{constructor(){this.size=0}init(){this.initialized=!0}}class sc extends fr{get readable(){const u=this,{chunkSize:c=n8}=u,f=new ReadableStream({start(){this.chunkOffset=0},async pull(r){const{offset:o=0,size:h,diskNumberStart:v}=f,{chunkOffset:y}=this,A=h===$t?c:Math.min(c,h-y),x=await _t(u,o+y,A,v);r.enqueue(x),y+c>h||h===$t&&!x.length&&A?r.close():this.chunkOffset+=c}});return f}}class l8 extends sc{constructor(u){super();let c=u.length;for(;u.charAt(c-1)=="=";)c--;const f=u.indexOf(",")+1;Object.assign(this,{dataURI:u,dataStart:f,size:Math.floor((c-f)*.75)})}readUint8Array(u,c){const{dataStart:f,dataURI:r}=this,o=new Uint8Array(c),h=Math.floor(u/3)*4,v=atob(r.substring(h+f,Math.ceil((u+c)/3)*4+f)),y=u-Math.floor(h/4)*3;let A=0;for(let x=y;x<y+c&&x<v.length;x++)o[x-y]=v.charCodeAt(x),A++;return A<o.length?o.subarray(0,A):o}}class eh extends sc{constructor(u){super(),Object.assign(this,{blob:u,size:u.size})}async readUint8Array(u,c){const f=this,r=u+c;let h=await(u||r<f.size?f.blob.slice(u,r):f.blob).arrayBuffer();return h.byteLength>c&&(h=h.slice(u,r)),new Uint8Array(h)}}class nh extends fr{constructor(u){super();const c=this,f=new TransformStream,r=[];u&&r.push([e8,u]),Object.defineProperty(c,th,{get(){return f.writable}}),c.blob=new Response(f.readable,{headers:r}).blob()}getData(){return this.blob}}class a8 extends nh{constructor(u){super(u),Object.assign(this,{encoding:u,utf8:!u||u.toLowerCase()=="utf-8"})}async getData(){const{encoding:u,utf8:c}=this,f=await super.getData();if(f.text&&c)return f.text();{const r=new FileReader;return new Promise((o,h)=>{Object.assign(r,{onload:({target:v})=>o(v.result),onerror:()=>h(r.error)}),r.readAsText(f,u)})}}}class lh extends sc{constructor(u){super(),this.readers=u}async init(){const u=this,{readers:c}=u;u.lastDiskNumber=0,u.lastDiskOffset=0,await Promise.all(c.map(async(f,r)=>{await f.init(),r!=c.length-1&&(u.lastDiskOffset+=f.size),u.size+=f.size})),super.init()}async readUint8Array(u,c,f=0){const r=this,{readers:o}=this;let h,v=f;v==-1&&(v=o.length-1);let y=u;for(;o[v]&&y>=o[v].size;)y-=o[v].size,v++;const A=o[v];if(A){const x=A.size;if(y+c<=x)h=await _t(A,y,c);else{const T=x-y;h=new Uint8Array(c);const D=await _t(A,y,T);h.set(D,0);const X=await r.readUint8Array(u+T,c-T,f);h.set(X,T),D.length+X.length<c&&(h=h.subarray(0,D.length+X.length))}}else h=new Uint8Array;return r.lastDiskNumber=Math.max(v,r.lastDiskNumber),h}}class kf extends fr{constructor(u,c=4294967295){super();const f=this;Object.assign(f,{diskNumber:0,diskOffset:0,size:0,maxSize:c,availableSize:c});let r,o,h;const v=new WritableStream({async write(x){const{availableSize:T}=f;if(h)x.length>=T?(await y(x.subarray(0,T)),await A(),f.diskOffset+=r.size,f.diskNumber++,h=null,await this.write(x.subarray(T))):await y(x);else{const{value:D,done:X}=await u.next();if(X&&!D)throw new Error($2);r=D,r.size=0,r.maxSize&&(f.maxSize=r.maxSize),f.availableSize=f.maxSize,await Oi(r),o=D.writable,h=o.getWriter(),await this.write(x)}},async close(){await h.ready,await A()}});Object.defineProperty(f,th,{get(){return v}});async function y(x){const T=x.length;T&&(await h.ready,await h.write(x),r.size+=T,f.size+=T,f.availableSize-=T)}async function A(){await h.close()}}}class ah{constructor(u){return Array.isArray(u)&&(u=new lh(u)),u instanceof ReadableStream&&(u={readable:u}),u}}class ih{constructor(u){return u.writable===$t&&typeof u.next==Ri&&(u=new kf(u)),u instanceof WritableStream&&(u={writable:u}),u.size===$t&&(u.size=0),u instanceof kf||Object.assign(u,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),u}}async function Oi(i,u){if(i.init&&!i.initialized)await i.init(u);else return Promise.resolve()}function _t(i,u,c,f){return i.readUint8Array(u,c,f)}const uh="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""),i8=uh.length==256;function u8(i){if(i8){let u="";for(let c=0;c<i.length;c++)u+=uh[i[c]];return u}else return new TextDecoder().decode(i)}function nc(i,u){return u&&u.trim().toLowerCase()=="cp437"?u8(i):new TextDecoder(u).decode(i)}const ch="filename",sh="rawFilename",fh="comment",rh="rawComment",oh="uncompressedSize",dh="compressedSize",hh="offset",Jf="diskNumberStart",Ff="lastModDate",Wf="rawLastModDate",mh="lastAccessDate",c8="rawLastAccessDate",gh="creationDate",s8="rawCreationDate",f8="internalFileAttribute",r8="internalFileAttributes",o8="externalFileAttribute",d8="externalFileAttributes",h8="msDosCompatible",m8="zip64",g8="encrypted",A8="version",v8="versionMadeBy",y8="zipCrypto",E8="directory",p8="executable",x8="compressionMethod",b8="signature",S8="extraField",T8=[ch,sh,dh,oh,Ff,Wf,fh,rh,mh,gh,hh,Jf,Jf,f8,r8,o8,d8,h8,m8,g8,A8,v8,y8,E8,p8,x8,b8,S8,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class c2{constructor(u){T8.forEach(c=>this[c]=u[c])}}const C8="filenameEncoding",O8="commentEncoding",D8="decodeText",R8="extractPrependedData",w8="extractAppendedData",M8="password",j8="rawPassword",N8="passThrough",H8="signal",B8="checkPasswordOnly",U8="checkOverlappingEntryOnly",Q8="checkOverlappingEntry",z8="checkSignature",Y8="useWebWorkers",L8="useCompressionStream",G8="transferStreams",X8="preventClose",lc="File format is not recognized",Ah="End of central directory not found",vh="End of Zip64 central directory locator not found",yh="Central directory header not found",Eh="Local file header not found",ph="Zip64 extra field not found",xh="File contains encrypted entry",bh="Encryption method not supported",_f="Compression method not supported",Pf="Split zip file",Sh="Overlapping entry found",s2="utf-8",f2="cp437",V8=[[oh,Rl],[dh,Rl],[hh,Rl],[Jf,el]],Z8={[el]:{getValue:Bt,bytes:4},[Rl]:{getValue:ba,bytes:8}};class I8{constructor(u,c={}){Object.assign(this,{reader:new ah(u),options:c,config:m5(),readRanges:[]})}async*getEntriesGenerator(u={}){const c=this;let{reader:f}=c;const{config:r}=c;if(await Oi(f),(f.size===$t||!f.readUint8Array)&&(f=new eh(await new Response(f.readable).blob()),await Oi(f)),f.size<Ea)throw new Error(lc);f.chunkSize=g5(r);const o=await _8(f,kA,f.size,Ea,el*16);if(!o){const I=await _t(f,0,4),k=Yt(I);throw Bt(k)==j2?new Error(Pf):new Error(Ah)}const h=Yt(o);let v=Bt(h,12),y=Bt(h,16);const A=o.offset,x=Pt(h,20),T=A+Ea+x;let D=Pt(h,4);const X=f.lastDiskNumber||0;let q=Pt(h,6),p=Pt(h,8),E=0,b=0;if(y==Rl||v==Rl||p==el||q==el){const I=await _t(f,o.offset-Mf,Mf),k=Yt(I);if(Bt(k,0)==JA){y=ba(k,8);let nt=await _t(f,y,jf,-1),P=Yt(nt);const st=o.offset-Mf-jf;if(Bt(P,0)!=X1&&y!=st){const ut=y;y=st,y>ut&&(E=y-ut),nt=await _t(f,y,jf,-1),P=Yt(nt)}if(Bt(P,0)!=X1)throw new Error(vh);D==el&&(D=Bt(P,16)),q==el&&(q=Bt(P,20)),p==el&&(p=ba(P,32)),v==Rl&&(v=ba(P,40)),y-=v}}if(y>=f.size&&(E=f.size-y-v-Ea,y=f.size-v-Ea),X!=D)throw new Error(Pf);if(y<0)throw new Error(lc);let R=0,N=await _t(f,y,v,q),V=Yt(N);if(v){const I=o.offset-v;if(Bt(V,R)!=G1&&y!=I){const k=y;y=I,y>k&&(E+=y-k),N=await _t(f,y,v,q),V=Yt(N)}}const F=o.offset-y-(f.lastDiskOffset||0);if(v!=F&&F>=0&&(v=F,N=await _t(f,y,v,q),V=Yt(N)),y<0||y>=f.size)throw new Error(lc);const H=ie(c,u,C8),j=ie(c,u,O8);for(let I=0;I<p;I++){const k=new q8(f,r,c.options);if(Bt(V,R)!=G1)throw new Error(yh);Th(k,V,R+6);const nt=!!k.bitFlag.languageEncodingFlag,P=R+46,st=P+k.filenameLength,ut=st+k.extraFieldLength,M=Pt(V,R+4),_=M>>8==0,$=M>>8==3,ht=N.subarray(P,st),tt=Pt(V,R+32),C=ut+tt,L=N.subarray(ut,C),W=nt,et=nt,rt=Bt(V,R+38),ot=_&&(xa(V,R+38)&K1)==K1||$&&(rt>>16&u5)==c5||ht.length&&ht.at(-1)==k1.charCodeAt(0),gt=$&&(rt>>16&s5)!=0,Jt=Bt(V,R+42)+E;Object.assign(k,{versionMadeBy:M,msDosCompatible:_,compressedSize:0,uncompressedSize:0,commentLength:tt,directory:ot,offset:Jt,diskNumberStart:Pt(V,R+34),internalFileAttributes:Pt(V,R+36),externalFileAttributes:rt,rawFilename:ht,filenameUTF8:W,commentUTF8:et,rawExtraField:N.subarray(st,ut),executable:gt}),k.internalFileAttribute=k.internalFileAttributes,k.externalFileAttribute=k.externalFileAttributes;const Qt=ie(c,u,D8)||nc,Sn=W?s2:H||f2,ul=et?s2:j||f2;let Tn=Qt(ht,Sn);Tn===$t&&(Tn=nc(ht,Sn));let jl=Qt(L,ul);jl===$t&&(jl=nc(L,ul)),Object.assign(k,{rawComment:L,filename:Tn,comment:jl,directory:ot||Tn.endsWith(k1)}),b=Math.max(Jt,b),Ch(k,k,V,R+6),k.zipCrypto=k.encrypted&&!k.extraFieldAES;const Ee=new c2(k);Ee.getData=(Cn,Hl)=>k.getData(Cn,Ee,c.readRanges,Hl),Ee.arrayBuffer=async Cn=>{const Hl=new TransformStream,[ji]=await Promise.all([new Response(Hl.readable).arrayBuffer(),k.getData(Hl,Ee,c.readRanges,Cn)]);return ji},R=C;const{onprogress:Nl}=u;if(Nl)try{await Nl(I+1,p,new c2(k))}catch{}yield Ee}const Y=ie(c,u,R8),z=ie(c,u,w8);return Y&&(c.prependedData=b>0?await _t(f,0,b):new Uint8Array),c.comment=x?await _t(f,A+Ea,x):new Uint8Array,z&&(c.appendedData=T<f.size?await _t(f,T,f.size-T):new Uint8Array),!0}async getEntries(u={}){const c=[];for await(const f of this.getEntriesGenerator(u))c.push(f);return c}async close(){}}class q8{constructor(u,c,f){Object.assign(this,{reader:u,config:c,options:f})}async getData(u,c,f,r={}){const o=this,{reader:h,offset:v,diskNumberStart:y,extraFieldAES:A,extraFieldZip64:x,compressionMethod:T,config:D,bitFlag:X,signature:q,rawLastModDate:p,uncompressedSize:E,compressedSize:b}=o,{dataDescriptor:R}=X,N=c.localDirectory={},V=await _t(h,v,Nf,y),F=Yt(V);let H=ie(o,r,M8),j=ie(o,r,j8);const Y=ie(o,r,N8);if(H=H&&H.length&&H,j=j&&j.length&&j,A&&A.originalCompressionMethod!=IA)throw new Error(_f);if(T!=ZA&&T!=VA&&!Y)throw new Error(_f);if(Bt(F,0)!=qA)throw new Error(Eh);Th(N,F,4);const{extraFieldLength:z,filenameLength:I,lastAccessDate:k,creationDate:nt}=N;N.rawExtraField=z?await _t(h,v+Nf+I,z,y):new Uint8Array,Ch(o,N,F,4,!0),Object.assign(c,{lastAccessDate:k,creationDate:nt});const P=o.encrypted&&N.encrypted&&!Y,st=P&&!A;if(Y||(c.zipCrypto=st),P){if(!st&&A.strength===$t)throw new Error(bh);if(!H&&!j)throw new Error(xh)}const ut=v+Nf+I+z,M=b,_=h.readable;Object.assign(_,{diskNumberStart:y,offset:ut,size:M});const $=ie(o,r,H8),ht=ie(o,r,B8);let tt=ie(o,r,Q8);const C=ie(o,r,U8);C&&(tt=!0);const{onstart:L,onprogress:W,onend:et}=r,rt={options:{codecType:W2,password:H,rawPassword:j,zipCrypto:st,encryptionStrength:A&&A.strength,signed:ie(o,r,z8)&&!Y,passwordVerification:st&&(R?p>>>8&255:q>>>24&255),outputSize:E,signature:q,compressed:T!=0&&!Y,encrypted:o.encrypted&&!Y,useWebWorkers:ie(o,r,Y8),useCompressionStream:ie(o,r,L8),transferStreams:ie(o,r,G8),checkPasswordOnly:ht},config:D,streamOptions:{signal:$,size:M,onstart:L,onprogress:W,onend:et}};tt&&await W8({reader:h,fileEntry:c,offset:v,diskNumberStart:y,signature:q,compressedSize:b,uncompressedSize:E,dataOffset:ut,dataDescriptor:R||N.bitFlag.dataDescriptor,extraFieldZip64:x||N.extraFieldZip64,readRanges:f});let ot;try{if(!C){ht&&(u=new WritableStream),u=new ih(u),await Oi(u,Y?b:E),{writable:ot}=u;const{outputSize:gt}=await $5({readable:_,writable:ot},rt);if(u.size+=gt,gt!=(Y?b:E))throw new Error(sr)}}catch(gt){if(gt.outputSize!==$t&&(u.size+=gt.outputSize),!ht||gt.message!=ir)throw gt}finally{!ie(o,r,X8)&&ot&&!ot.locked&&await ot.getWriter().close()}return ht||C?$t:u.getData?u.getData():ot}}function Th(i,u,c){const f=i.rawBitFlag=Pt(u,c+2),r=(f&Z1)==Z1,o=Bt(u,c+6);Object.assign(i,{encrypted:r,version:Pt(u,c),bitFlag:{level:(f&i5)>>1,dataDescriptor:(f&I1)==I1,languageEncodingFlag:(f&q1)==q1},rawLastModDate:o,lastModDate:P8(o),filenameLength:Pt(u,c+22),extraFieldLength:Pt(u,c+24)})}function Ch(i,u,c,f,r){const{rawExtraField:o}=u,h=u.extraField=new Map,v=Yt(new Uint8Array(o));let y=0;try{for(;y<o.length;){const b=Pt(v,y),R=Pt(v,y+2);h.set(b,{type:b,data:o.slice(y+4,y+4+R)}),y+=4+R}}catch{}const A=Pt(c,f+4);Object.assign(u,{signature:Bt(c,f+f5),compressedSize:Bt(c,f+r5),uncompressedSize:Bt(c,f+o5)});const x=h.get(_A);x&&(K8(x,u),u.extraFieldZip64=x);const T=h.get(n5);T&&(r2(T,ch,sh,u,i),u.extraFieldUnicodePath=T);const D=h.get(l5);D&&(r2(D,fh,rh,u,i),u.extraFieldUnicodeComment=D);const X=h.get(PA);X?(k8(X,u,A),u.extraFieldAES=X):u.compressionMethod=A;const q=h.get($A);q&&(J8(q,u),u.extraFieldNTFS=q);const p=h.get(e5);p&&(F8(p,u,r),u.extraFieldExtendedTimestamp=p);const E=h.get(a5);E&&(u.extraFieldUSDZ=E)}function K8(i,u){u.zip64=!0;const c=Yt(i.data),f=V8.filter(([r,o])=>u[r]==o);for(let r=0,o=0;r<f.length;r++){const[h,v]=f[r];if(u[h]==v){const y=Z8[v];u[h]=i[h]=y.getValue(c,o),o+=y.bytes}else if(i[h])throw new Error(ph)}}function r2(i,u,c,f,r){const o=Yt(i.data),h=new ac;h.append(r[c]);const v=Yt(new Uint8Array(4));v.setUint32(0,h.get(),!0);const y=Bt(o,1);Object.assign(i,{version:xa(o,0),[u]:nc(i.data.subarray(5)),valid:!r.bitFlag.languageEncodingFlag&&y==Bt(v,0)}),i.valid&&(f[u]=i[u],f[u+"UTF8"]=!0)}function k8(i,u,c){const f=Yt(i.data),r=xa(f,4);Object.assign(i,{vendorVersion:xa(f,0),vendorId:xa(f,2),strength:r,originalCompressionMethod:c,compressionMethod:Pt(f,5)}),u.compressionMethod=i.compressionMethod}function J8(i,u){const c=Yt(i.data);let f=4,r;try{for(;f<i.data.length&&!r;){const o=Pt(c,f),h=Pt(c,f+2);o==t5&&(r=i.data.slice(f+4,f+4+h)),f+=4+h}}catch{}try{if(r&&r.length==24){const o=Yt(r),h=o.getBigUint64(0,!0),v=o.getBigUint64(8,!0),y=o.getBigUint64(16,!0);Object.assign(i,{rawLastModDate:h,rawLastAccessDate:v,rawCreationDate:y});const A=Qf(h),x=Qf(v),T=Qf(y),D={lastModDate:A,lastAccessDate:x,creationDate:T};Object.assign(i,D),Object.assign(u,D)}}catch{}}function F8(i,u,c){const f=Yt(i.data),r=xa(f,0),o=[],h=[];c?((r&1)==1&&(o.push(Ff),h.push(Wf)),(r&2)==2&&(o.push(mh),h.push(c8)),(r&4)==4&&(o.push(gh),h.push(s8))):i.data.length>=5&&(o.push(Ff),h.push(Wf));let v=1;o.forEach((y,A)=>{if(i.data.length>=v+4){const x=Bt(f,v);u[y]=i[y]=new Date(x*1e3);const T=h[A];i[T]=x}v+=4})}async function W8({reader:i,fileEntry:u,offset:c,diskNumberStart:f,signature:r,compressedSize:o,uncompressedSize:h,dataOffset:v,dataDescriptor:y,extraFieldZip64:A,readRanges:x}){let T=0;if(f)for(let q=0;q<f;q++){const p=i.readers[q];T+=p.size}let D=0;if(y&&(A?D=WA:D=FA),D){const q=await _t(i,v+o,D+V1,f);if(Bt(Yt(q),0)==KA){const E=Bt(Yt(q),4);let b,R;A?(b=ba(Yt(q),8),R=ba(Yt(q),16)):(b=Bt(Yt(q),8),R=Bt(Yt(q),12)),(u.encrypted&&!u.zipCrypto||E==r)&&b==o&&R==h&&(D+=V1)}}const X={start:T+c,end:T+v+o+D,fileEntry:u};for(const q of x)if(q.fileEntry!=u&&X.start>=q.start&&X.start<q.end){const p=new Error(Sh);throw p.overlappingEntry=q.fileEntry,p}x.push(X)}async function _8(i,u,c,f,r){const o=new Uint8Array(4),h=Yt(o);$8(h,0,u);const v=f+r;return await y(f)||await y(Math.min(v,c));async function y(A){const x=c-A,T=await _t(i,x,A);for(let D=T.length-f;D>=0;D--)if(T[D]==o[0]&&T[D+1]==o[1]&&T[D+2]==o[2]&&T[D+3]==o[3])return{offset:x+D,buffer:T.slice(D,D+f).buffer}}}function ie(i,u,c){return u[c]===$t?i.options[c]:u[c]}function P8(i){const u=(i&4294901760)>>16,c=i&65535;try{return new Date(1980+((u&65024)>>9),((u&480)>>5)-1,u&31,(c&63488)>>11,(c&2016)>>5,(c&31)*2,0)}catch{}}function Qf(i){return new Date(Number(i/BigInt(1e4)-BigInt(116444736e5)))}function xa(i,u){return i.getUint8(u)}function Pt(i,u){return i.getUint16(u,!0)}function Bt(i,u){return i.getUint32(u,!0)}function ba(i,u){return Number(i.getBigUint64(u,!0))}function $8(i,u,c){i.setUint32(u,c,!0)}function Yt(i){return new DataView(i.buffer)}H2({Inflate:XA});const t3=Object.freeze(Object.defineProperty({__proto__:null,BlobReader:eh,BlobWriter:nh,Data64URIReader:l8,ERR_BAD_FORMAT:lc,ERR_CENTRAL_DIRECTORY_NOT_FOUND:yh,ERR_ENCRYPTED:xh,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:vh,ERR_EOCDR_NOT_FOUND:Ah,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:ph,ERR_INVALID_PASSWORD:lr,ERR_INVALID_SIGNATURE:ar,ERR_INVALID_UNCOMPRESSED_SIZE:sr,ERR_ITERATOR_COMPLETED_TOO_SOON:$2,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Eh,ERR_OVERLAPPING_ENTRY:Sh,ERR_SPLIT_ZIP_FILE:Pf,ERR_UNSUPPORTED_COMPRESSION:_f,ERR_UNSUPPORTED_ENCRYPTION:bh,GenericReader:ah,GenericWriter:ih,Reader:sc,SplitDataReader:lh,SplitDataWriter:kf,TextWriter:a8,ZipReader:I8,configure:H2,initStream:Oi,readUint8Array:_t},Symbol.toStringTag,{value:"Module"}));var zf={exports:{}},dt={};/**
 * @license React
 * react.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var o2;function e3(){if(o2)return dt;o2=1;var i=Symbol.for("react.transitional.element"),u=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),h=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),x=Symbol.for("react.lazy"),T=Symbol.for("react.activity"),D=Symbol.iterator;function X(C){return C===null||typeof C!="object"?null:(C=D&&C[D]||C["@@iterator"],typeof C=="function"?C:null)}var q={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},p=Object.assign,E={};function b(C,L,W){this.props=C,this.context=L,this.refs=E,this.updater=W||q}b.prototype.isReactComponent={},b.prototype.setState=function(C,L){if(typeof C!="object"&&typeof C!="function"&&C!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,C,L,"setState")},b.prototype.forceUpdate=function(C){this.updater.enqueueForceUpdate(this,C,"forceUpdate")};function R(){}R.prototype=b.prototype;function N(C,L,W){this.props=C,this.context=L,this.refs=E,this.updater=W||q}var V=N.prototype=new R;V.constructor=N,p(V,b.prototype),V.isPureReactComponent=!0;var F=Array.isArray;function H(){}var j={H:null,A:null,T:null,S:null},Y=Object.prototype.hasOwnProperty;function z(C,L,W){var et=W.ref;return{$$typeof:i,type:C,key:L,ref:et!==void 0?et:null,props:W}}function I(C,L){return z(C.type,L,C.props)}function k(C){return typeof C=="object"&&C!==null&&C.$$typeof===i}function nt(C){var L={"=":"=0",":":"=2"};return"$"+C.replace(/[=:]/g,function(W){return L[W]})}var P=/\/+/g;function st(C,L){return typeof C=="object"&&C!==null&&C.key!=null?nt(""+C.key):L.toString(36)}function ut(C){switch(C.status){case"fulfilled":return C.value;case"rejected":throw C.reason;default:switch(typeof C.status=="string"?C.then(H,H):(C.status="pending",C.then(function(L){C.status==="pending"&&(C.status="fulfilled",C.value=L)},function(L){C.status==="pending"&&(C.status="rejected",C.reason=L)})),C.status){case"fulfilled":return C.value;case"rejected":throw C.reason}}throw C}function M(C,L,W,et,rt){var ot=typeof C;(ot==="undefined"||ot==="boolean")&&(C=null);var gt=!1;if(C===null)gt=!0;else switch(ot){case"bigint":case"string":case"number":gt=!0;break;case"object":switch(C.$$typeof){case i:case u:gt=!0;break;case x:return gt=C._init,M(gt(C._payload),L,W,et,rt)}}if(gt)return rt=rt(C),gt=et===""?"."+st(C,0):et,F(rt)?(W="",gt!=null&&(W=gt.replace(P,"$&/")+"/"),M(rt,L,W,"",function(Sn){return Sn})):rt!=null&&(k(rt)&&(rt=I(rt,W+(rt.key==null||C&&C.key===rt.key?"":(""+rt.key).replace(P,"$&/")+"/")+gt)),L.push(rt)),1;gt=0;var Jt=et===""?".":et+":";if(F(C))for(var Qt=0;Qt<C.length;Qt++)et=C[Qt],ot=Jt+st(et,Qt),gt+=M(et,L,W,ot,rt);else if(Qt=X(C),typeof Qt=="function")for(C=Qt.call(C),Qt=0;!(et=C.next()).done;)et=et.value,ot=Jt+st(et,Qt++),gt+=M(et,L,W,ot,rt);else if(ot==="object"){if(typeof C.then=="function")return M(ut(C),L,W,et,rt);throw L=String(C),Error("Objects are not valid as a React child (found: "+(L==="[object Object]"?"object with keys {"+Object.keys(C).join(", ")+"}":L)+"). If you meant to render a collection of children, use an array instead.")}return gt}function _(C,L,W){if(C==null)return C;var et=[],rt=0;return M(C,et,"","",function(ot){return L.call(W,ot,rt++)}),et}function $(C){if(C._status===-1){var L=C._result;L=L(),L.then(function(W){(C._status===0||C._status===-1)&&(C._status=1,C._result=W)},function(W){(C._status===0||C._status===-1)&&(C._status=2,C._result=W)}),C._status===-1&&(C._status=0,C._result=L)}if(C._status===1)return C._result.default;throw C._result}var ht=typeof reportError=="function"?reportError:function(C){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var L=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof C=="object"&&C!==null&&typeof C.message=="string"?String(C.message):String(C),error:C});if(!window.dispatchEvent(L))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",C);return}console.error(C)},tt={map:_,forEach:function(C,L,W){_(C,function(){L.apply(this,arguments)},W)},count:function(C){var L=0;return _(C,function(){L++}),L},toArray:function(C){return _(C,function(L){return L})||[]},only:function(C){if(!k(C))throw Error("React.Children.only expected to receive a single React element child.");return C}};return dt.Activity=T,dt.Children=tt,dt.Component=b,dt.Fragment=c,dt.Profiler=r,dt.PureComponent=N,dt.StrictMode=f,dt.Suspense=y,dt.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=j,dt.__COMPILER_RUNTIME={__proto__:null,c:function(C){return j.H.useMemoCache(C)}},dt.cache=function(C){return function(){return C.apply(null,arguments)}},dt.cacheSignal=function(){return null},dt.cloneElement=function(C,L,W){if(C==null)throw Error("The argument must be a React element, but you passed "+C+".");var et=p({},C.props),rt=C.key;if(L!=null)for(ot in L.key!==void 0&&(rt=""+L.key),L)!Y.call(L,ot)||ot==="key"||ot==="__self"||ot==="__source"||ot==="ref"&&L.ref===void 0||(et[ot]=L[ot]);var ot=arguments.length-2;if(ot===1)et.children=W;else if(1<ot){for(var gt=Array(ot),Jt=0;Jt<ot;Jt++)gt[Jt]=arguments[Jt+2];et.children=gt}return z(C.type,rt,et)},dt.createContext=function(C){return C={$$typeof:h,_currentValue:C,_currentValue2:C,_threadCount:0,Provider:null,Consumer:null},C.Provider=C,C.Consumer={$$typeof:o,_context:C},C},dt.createElement=function(C,L,W){var et,rt={},ot=null;if(L!=null)for(et in L.key!==void 0&&(ot=""+L.key),L)Y.call(L,et)&&et!=="key"&&et!=="__self"&&et!=="__source"&&(rt[et]=L[et]);var gt=arguments.length-2;if(gt===1)rt.children=W;else if(1<gt){for(var Jt=Array(gt),Qt=0;Qt<gt;Qt++)Jt[Qt]=arguments[Qt+2];rt.children=Jt}if(C&&C.defaultProps)for(et in gt=C.defaultProps,gt)rt[et]===void 0&&(rt[et]=gt[et]);return z(C,ot,rt)},dt.createRef=function(){return{current:null}},dt.forwardRef=function(C){return{$$typeof:v,render:C}},dt.isValidElement=k,dt.lazy=function(C){return{$$typeof:x,_payload:{_status:-1,_result:C},_init:$}},dt.memo=function(C,L){return{$$typeof:A,type:C,compare:L===void 0?null:L}},dt.startTransition=function(C){var L=j.T,W={};j.T=W;try{var et=C(),rt=j.S;rt!==null&&rt(W,et),typeof et=="object"&&et!==null&&typeof et.then=="function"&&et.then(H,ht)}catch(ot){ht(ot)}finally{L!==null&&W.types!==null&&(L.types=W.types),j.T=L}},dt.unstable_useCacheRefresh=function(){return j.H.useCacheRefresh()},dt.use=function(C){return j.H.use(C)},dt.useActionState=function(C,L,W){return j.H.useActionState(C,L,W)},dt.useCallback=function(C,L){return j.H.useCallback(C,L)},dt.useContext=function(C){return j.H.useContext(C)},dt.useDebugValue=function(){},dt.useDeferredValue=function(C,L){return j.H.useDeferredValue(C,L)},dt.useEffect=function(C,L){return j.H.useEffect(C,L)},dt.useEffectEvent=function(C){return j.H.useEffectEvent(C)},dt.useId=function(){return j.H.useId()},dt.useImperativeHandle=function(C,L,W){return j.H.useImperativeHandle(C,L,W)},dt.useInsertionEffect=function(C,L){return j.H.useInsertionEffect(C,L)},dt.useLayoutEffect=function(C,L){return j.H.useLayoutEffect(C,L)},dt.useMemo=function(C,L){return j.H.useMemo(C,L)},dt.useOptimistic=function(C,L){return j.H.useOptimistic(C,L)},dt.useReducer=function(C,L,W){return j.H.useReducer(C,L,W)},dt.useRef=function(C){return j.H.useRef(C)},dt.useState=function(C){return j.H.useState(C)},dt.useSyncExternalStore=function(C,L,W){return j.H.useSyncExternalStore(C,L,W)},dt.useTransition=function(){return j.H.useTransition()},dt.version="19.2.1",dt}var d2;function rr(){return d2||(d2=1,zf.exports=e3()),zf.exports}var it=rr();const ue=EA(it);var Yf={exports:{}},pi={},Lf={exports:{}},Gf={};/**
 * @license React
 * scheduler.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var h2;function n3(){return h2||(h2=1,(function(i){function u(M,_){var $=M.length;M.push(_);t:for(;0<$;){var ht=$-1>>>1,tt=M[ht];if(0<r(tt,_))M[ht]=_,M[$]=tt,$=ht;else break t}}function c(M){return M.length===0?null:M[0]}function f(M){if(M.length===0)return null;var _=M[0],$=M.pop();if($!==_){M[0]=$;t:for(var ht=0,tt=M.length,C=tt>>>1;ht<C;){var L=2*(ht+1)-1,W=M[L],et=L+1,rt=M[et];if(0>r(W,$))et<tt&&0>r(rt,W)?(M[ht]=rt,M[et]=$,ht=et):(M[ht]=W,M[L]=$,ht=L);else if(et<tt&&0>r(rt,$))M[ht]=rt,M[et]=$,ht=et;else break t}}return _}function r(M,_){var $=M.sortIndex-_.sortIndex;return $!==0?$:M.id-_.id}if(i.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;i.unstable_now=function(){return o.now()}}else{var h=Date,v=h.now();i.unstable_now=function(){return h.now()-v}}var y=[],A=[],x=1,T=null,D=3,X=!1,q=!1,p=!1,E=!1,b=typeof setTimeout=="function"?setTimeout:null,R=typeof clearTimeout=="function"?clearTimeout:null,N=typeof setImmediate<"u"?setImmediate:null;function V(M){for(var _=c(A);_!==null;){if(_.callback===null)f(A);else if(_.startTime<=M)f(A),_.sortIndex=_.expirationTime,u(y,_);else break;_=c(A)}}function F(M){if(p=!1,V(M),!q)if(c(y)!==null)q=!0,H||(H=!0,nt());else{var _=c(A);_!==null&&ut(F,_.startTime-M)}}var H=!1,j=-1,Y=5,z=-1;function I(){return E?!0:!(i.unstable_now()-z<Y)}function k(){if(E=!1,H){var M=i.unstable_now();z=M;var _=!0;try{t:{q=!1,p&&(p=!1,R(j),j=-1),X=!0;var $=D;try{e:{for(V(M),T=c(y);T!==null&&!(T.expirationTime>M&&I());){var ht=T.callback;if(typeof ht=="function"){T.callback=null,D=T.priorityLevel;var tt=ht(T.expirationTime<=M);if(M=i.unstable_now(),typeof tt=="function"){T.callback=tt,V(M),_=!0;break e}T===c(y)&&f(y),V(M)}else f(y);T=c(y)}if(T!==null)_=!0;else{var C=c(A);C!==null&&ut(F,C.startTime-M),_=!1}}break t}finally{T=null,D=$,X=!1}_=void 0}}finally{_?nt():H=!1}}}var nt;if(typeof N=="function")nt=function(){N(k)};else if(typeof MessageChannel<"u"){var P=new MessageChannel,st=P.port2;P.port1.onmessage=k,nt=function(){st.postMessage(null)}}else nt=function(){b(k,0)};function ut(M,_){j=b(function(){M(i.unstable_now())},_)}i.unstable_IdlePriority=5,i.unstable_ImmediatePriority=1,i.unstable_LowPriority=4,i.unstable_NormalPriority=3,i.unstable_Profiling=null,i.unstable_UserBlockingPriority=2,i.unstable_cancelCallback=function(M){M.callback=null},i.unstable_forceFrameRate=function(M){0>M||125<M?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):Y=0<M?Math.floor(1e3/M):5},i.unstable_getCurrentPriorityLevel=function(){return D},i.unstable_next=function(M){switch(D){case 1:case 2:case 3:var _=3;break;default:_=D}var $=D;D=_;try{return M()}finally{D=$}},i.unstable_requestPaint=function(){E=!0},i.unstable_runWithPriority=function(M,_){switch(M){case 1:case 2:case 3:case 4:case 5:break;default:M=3}var $=D;D=M;try{return _()}finally{D=$}},i.unstable_scheduleCallback=function(M,_,$){var ht=i.unstable_now();switch(typeof $=="object"&&$!==null?($=$.delay,$=typeof $=="number"&&0<$?ht+$:ht):$=ht,M){case 1:var tt=-1;break;case 2:tt=250;break;case 5:tt=1073741823;break;case 4:tt=1e4;break;default:tt=5e3}return tt=$+tt,M={id:x++,callback:_,priorityLevel:M,startTime:$,expirationTime:tt,sortIndex:-1},$>ht?(M.sortIndex=$,u(A,M),c(y)===null&&M===c(A)&&(p?(R(j),j=-1):p=!0,ut(F,$-ht))):(M.sortIndex=tt,u(y,M),q||X||(q=!0,H||(H=!0,nt()))),M},i.unstable_shouldYield=I,i.unstable_wrapCallback=function(M){var _=D;return function(){var $=D;D=_;try{return M.apply(this,arguments)}finally{D=$}}}})(Gf)),Gf}var m2;function l3(){return m2||(m2=1,Lf.exports=n3()),Lf.exports}var Xf={exports:{}},ce={};/**
 * @license React
 * react-dom.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var g2;function a3(){if(g2)return ce;g2=1;var i=rr();function u(y){var A="https://react.dev/errors/"+y;if(1<arguments.length){A+="?args[]="+encodeURIComponent(arguments[1]);for(var x=2;x<arguments.length;x++)A+="&args[]="+encodeURIComponent(arguments[x])}return"Minified React error #"+y+"; visit "+A+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function c(){}var f={d:{f:c,r:function(){throw Error(u(522))},D:c,C:c,L:c,m:c,X:c,S:c,M:c},p:0,findDOMNode:null},r=Symbol.for("react.portal");function o(y,A,x){var T=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:r,key:T==null?null:""+T,children:y,containerInfo:A,implementation:x}}var h=i.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function v(y,A){if(y==="font")return"";if(typeof A=="string")return A==="use-credentials"?A:""}return ce.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=f,ce.createPortal=function(y,A){var x=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!A||A.nodeType!==1&&A.nodeType!==9&&A.nodeType!==11)throw Error(u(299));return o(y,A,null,x)},ce.flushSync=function(y){var A=h.T,x=f.p;try{if(h.T=null,f.p=2,y)return y()}finally{h.T=A,f.p=x,f.d.f()}},ce.preconnect=function(y,A){typeof y=="string"&&(A?(A=A.crossOrigin,A=typeof A=="string"?A==="use-credentials"?A:"":void 0):A=null,f.d.C(y,A))},ce.prefetchDNS=function(y){typeof y=="string"&&f.d.D(y)},ce.preinit=function(y,A){if(typeof y=="string"&&A&&typeof A.as=="string"){var x=A.as,T=v(x,A.crossOrigin),D=typeof A.integrity=="string"?A.integrity:void 0,X=typeof A.fetchPriority=="string"?A.fetchPriority:void 0;x==="style"?f.d.S(y,typeof A.precedence=="string"?A.precedence:void 0,{crossOrigin:T,integrity:D,fetchPriority:X}):x==="script"&&f.d.X(y,{crossOrigin:T,integrity:D,fetchPriority:X,nonce:typeof A.nonce=="string"?A.nonce:void 0})}},ce.preinitModule=function(y,A){if(typeof y=="string")if(typeof A=="object"&&A!==null){if(A.as==null||A.as==="script"){var x=v(A.as,A.crossOrigin);f.d.M(y,{crossOrigin:x,integrity:typeof A.integrity=="string"?A.integrity:void 0,nonce:typeof A.nonce=="string"?A.nonce:void 0})}}else A==null&&f.d.M(y)},ce.preload=function(y,A){if(typeof y=="string"&&typeof A=="object"&&A!==null&&typeof A.as=="string"){var x=A.as,T=v(x,A.crossOrigin);f.d.L(y,x,{crossOrigin:T,integrity:typeof A.integrity=="string"?A.integrity:void 0,nonce:typeof A.nonce=="string"?A.nonce:void 0,type:typeof A.type=="string"?A.type:void 0,fetchPriority:typeof A.fetchPriority=="string"?A.fetchPriority:void 0,referrerPolicy:typeof A.referrerPolicy=="string"?A.referrerPolicy:void 0,imageSrcSet:typeof A.imageSrcSet=="string"?A.imageSrcSet:void 0,imageSizes:typeof A.imageSizes=="string"?A.imageSizes:void 0,media:typeof A.media=="string"?A.media:void 0})}},ce.preloadModule=function(y,A){if(typeof y=="string")if(A){var x=v(A.as,A.crossOrigin);f.d.m(y,{as:typeof A.as=="string"&&A.as!=="script"?A.as:void 0,crossOrigin:x,integrity:typeof A.integrity=="string"?A.integrity:void 0})}else f.d.m(y)},ce.requestFormReset=function(y){f.d.r(y)},ce.unstable_batchedUpdates=function(y,A){return y(A)},ce.useFormState=function(y,A,x){return h.H.useFormState(y,A,x)},ce.useFormStatus=function(){return h.H.useHostTransitionStatus()},ce.version="19.2.1",ce}var A2;function i3(){if(A2)return Xf.exports;A2=1;function i(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(u){console.error(u)}}return i(),Xf.exports=a3(),Xf.exports}/**
 * @license React
 * react-dom-client.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var v2;function u3(){if(v2)return pi;v2=1;var i=l3(),u=rr(),c=i3();function f(t){var e="https://react.dev/errors/"+t;if(1<arguments.length){e+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)e+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+t+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function r(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function o(t){var e=t,n=t;if(t.alternate)for(;e.return;)e=e.return;else{t=e;do e=t,(e.flags&4098)!==0&&(n=e.return),t=e.return;while(t)}return e.tag===3?n:null}function h(t){if(t.tag===13){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function v(t){if(t.tag===31){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function y(t){if(o(t)!==t)throw Error(f(188))}function A(t){var e=t.alternate;if(!e){if(e=o(t),e===null)throw Error(f(188));return e!==t?null:t}for(var n=t,l=e;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(l=a.return,l!==null){n=l;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return y(a),t;if(s===l)return y(a),e;s=s.sibling}throw Error(f(188))}if(n.return!==l.return)n=a,l=s;else{for(var d=!1,g=a.child;g;){if(g===n){d=!0,n=a,l=s;break}if(g===l){d=!0,l=a,n=s;break}g=g.sibling}if(!d){for(g=s.child;g;){if(g===n){d=!0,n=s,l=a;break}if(g===l){d=!0,l=s,n=a;break}g=g.sibling}if(!d)throw Error(f(189))}}if(n.alternate!==l)throw Error(f(190))}if(n.tag!==3)throw Error(f(188));return n.stateNode.current===n?t:e}function x(t){var e=t.tag;if(e===5||e===26||e===27||e===6)return t;for(t=t.child;t!==null;){if(e=x(t),e!==null)return e;t=t.sibling}return null}var T=Object.assign,D=Symbol.for("react.element"),X=Symbol.for("react.transitional.element"),q=Symbol.for("react.portal"),p=Symbol.for("react.fragment"),E=Symbol.for("react.strict_mode"),b=Symbol.for("react.profiler"),R=Symbol.for("react.consumer"),N=Symbol.for("react.context"),V=Symbol.for("react.forward_ref"),F=Symbol.for("react.suspense"),H=Symbol.for("react.suspense_list"),j=Symbol.for("react.memo"),Y=Symbol.for("react.lazy"),z=Symbol.for("react.activity"),I=Symbol.for("react.memo_cache_sentinel"),k=Symbol.iterator;function nt(t){return t===null||typeof t!="object"?null:(t=k&&t[k]||t["@@iterator"],typeof t=="function"?t:null)}var P=Symbol.for("react.client.reference");function st(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===P?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case p:return"Fragment";case b:return"Profiler";case E:return"StrictMode";case F:return"Suspense";case H:return"SuspenseList";case z:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case q:return"Portal";case N:return t.displayName||"Context";case R:return(t._context.displayName||"Context")+".Consumer";case V:var e=t.render;return t=t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case j:return e=t.displayName||null,e!==null?e:st(t.type)||"Memo";case Y:e=t._payload,t=t._init;try{return st(t(e))}catch{}}return null}var ut=Array.isArray,M=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,_=c.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,$={pending:!1,data:null,method:null,action:null},ht=[],tt=-1;function C(t){return{current:t}}function L(t){0>tt||(t.current=ht[tt],ht[tt]=null,tt--)}function W(t,e){tt++,ht[tt]=t.current,t.current=e}var et=C(null),rt=C(null),ot=C(null),gt=C(null);function Jt(t,e){switch(W(ot,e),W(rt,t),W(et,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?Xd(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=Xd(e),t=Vd(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}L(et),W(et,t)}function Qt(){L(et),L(rt),L(ot)}function Sn(t){t.memoizedState!==null&&W(gt,t);var e=et.current,n=Vd(e,t.type);e!==n&&(W(rt,t),W(et,n))}function ul(t){rt.current===t&&(L(et),L(rt)),gt.current===t&&(L(gt),hi._currentValue=$)}var Tn,jl;function Ee(t){if(Tn===void 0)try{throw Error()}catch(n){var e=n.stack.trim().match(/\n( *(at )?)/);Tn=e&&e[1]||"",jl=-1<n.stack.indexOf(`
    at`)?" (<anonymous>)":-1<n.stack.indexOf("@")?"@unknown:0:0":""}return`
`+Tn+t+jl}var Nl=!1;function Cn(t,e){if(!t||Nl)return"";Nl=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var l={DetermineComponentFrameRoot:function(){try{if(e){var J=function(){throw Error()};if(Object.defineProperty(J.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(J,[])}catch(G){var Q=G}Reflect.construct(t,[],J)}else{try{J.call()}catch(G){Q=G}t.call(J.prototype)}}else{try{throw Error()}catch(G){Q=G}(J=t())&&typeof J.catch=="function"&&J.catch(function(){})}}catch(G){if(G&&Q&&typeof G.stack=="string")return[G.stack,Q.stack]}return[null,null]}};l.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var a=Object.getOwnPropertyDescriptor(l.DetermineComponentFrameRoot,"name");a&&a.configurable&&Object.defineProperty(l.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var s=l.DetermineComponentFrameRoot(),d=s[0],g=s[1];if(d&&g){var S=d.split(`
`),U=g.split(`
`);for(a=l=0;l<S.length&&!S[l].includes("DetermineComponentFrameRoot");)l++;for(;a<U.length&&!U[a].includes("DetermineComponentFrameRoot");)a++;if(l===S.length||a===U.length)for(l=S.length-1,a=U.length-1;1<=l&&0<=a&&S[l]!==U[a];)a--;for(;1<=l&&0<=a;l--,a--)if(S[l]!==U[a]){if(l!==1||a!==1)do if(l--,a--,0>a||S[l]!==U[a]){var Z=`
`+S[l].replace(" at new "," at ");return t.displayName&&Z.includes("<anonymous>")&&(Z=Z.replace("<anonymous>",t.displayName)),Z}while(1<=l&&0<=a);break}}}finally{Nl=!1,Error.prepareStackTrace=n}return(n=t?t.displayName||t.name:"")?Ee(n):""}function Hl(t,e){switch(t.tag){case 26:case 27:case 5:return Ee(t.type);case 16:return Ee("Lazy");case 13:return t.child!==e&&e!==null?Ee("Suspense Fallback"):Ee("Suspense");case 19:return Ee("SuspenseList");case 0:case 15:return Cn(t.type,!1);case 11:return Cn(t.type.render,!1);case 1:return Cn(t.type,!0);case 31:return Ee("Activity");default:return""}}function ji(t){try{var e="",n=null;do e+=Hl(t,n),n=t,t=t.return;while(t);return e}catch(l){return`
Error generating stack: `+l.message+`
`+l.stack}}var rc=Object.prototype.hasOwnProperty,oc=i.unstable_scheduleCallback,dc=i.unstable_cancelCallback,_h=i.unstable_shouldYield,Ph=i.unstable_requestPaint,pe=i.unstable_now,$h=i.unstable_getCurrentPriorityLevel,yr=i.unstable_ImmediatePriority,Er=i.unstable_UserBlockingPriority,Ni=i.unstable_NormalPriority,tm=i.unstable_LowPriority,pr=i.unstable_IdlePriority,em=i.log,nm=i.unstable_setDisableYieldValue,Ca=null,xe=null;function On(t){if(typeof em=="function"&&nm(t),xe&&typeof xe.setStrictMode=="function")try{xe.setStrictMode(Ca,t)}catch{}}var be=Math.clz32?Math.clz32:im,lm=Math.log,am=Math.LN2;function im(t){return t>>>=0,t===0?32:31-(lm(t)/am|0)|0}var Hi=256,Bi=262144,Ui=4194304;function cl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Qi(t,e,n){var l=t.pendingLanes;if(l===0)return 0;var a=0,s=t.suspendedLanes,d=t.pingedLanes;t=t.warmLanes;var g=l&134217727;return g!==0?(l=g&~s,l!==0?a=cl(l):(d&=g,d!==0?a=cl(d):n||(n=g&~t,n!==0&&(a=cl(n))))):(g=l&~s,g!==0?a=cl(g):d!==0?a=cl(d):n||(n=l&~t,n!==0&&(a=cl(n)))),a===0?0:e!==0&&e!==a&&(e&s)===0&&(s=a&-a,n=e&-e,s>=n||s===32&&(n&4194048)!==0)?e:a}function Oa(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function um(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function xr(){var t=Ui;return Ui<<=1,(Ui&62914560)===0&&(Ui=4194304),t}function hc(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function Da(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function cm(t,e,n,l,a,s){var d=t.pendingLanes;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=n,t.entangledLanes&=n,t.errorRecoveryDisabledLanes&=n,t.shellSuspendCounter=0;var g=t.entanglements,S=t.expirationTimes,U=t.hiddenUpdates;for(n=d&~n;0<n;){var Z=31-be(n),J=1<<Z;g[Z]=0,S[Z]=-1;var Q=U[Z];if(Q!==null)for(U[Z]=null,Z=0;Z<Q.length;Z++){var G=Q[Z];G!==null&&(G.lane&=-536870913)}n&=~J}l!==0&&br(t,l,0),s!==0&&a===0&&t.tag!==0&&(t.suspendedLanes|=s&~(d&~e))}function br(t,e,n){t.pendingLanes|=e,t.suspendedLanes&=~e;var l=31-be(e);t.entangledLanes|=e,t.entanglements[l]=t.entanglements[l]|1073741824|n&261930}function Sr(t,e){var n=t.entangledLanes|=e;for(t=t.entanglements;n;){var l=31-be(n),a=1<<l;a&e|t[l]&e&&(t[l]|=e),n&=~a}}function Tr(t,e){var n=e&-e;return n=(n&42)!==0?1:mc(n),(n&(t.suspendedLanes|e))!==0?0:n}function mc(t){switch(t){case 2:t=1;break;case 8:t=4;break;case 32:t=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:t=128;break;case 268435456:t=134217728;break;default:t=0}return t}function gc(t){return t&=-t,2<t?8<t?(t&134217727)!==0?32:268435456:8:2}function Cr(){var t=_.p;return t!==0?t:(t=window.event,t===void 0?32:o1(t.type))}function Or(t,e){var n=_.p;try{return _.p=t,e()}finally{_.p=n}}var Dn=Math.random().toString(36).slice(2),te="__reactFiber$"+Dn,oe="__reactProps$"+Dn,Bl="__reactContainer$"+Dn,Ac="__reactEvents$"+Dn,sm="__reactListeners$"+Dn,fm="__reactHandles$"+Dn,Dr="__reactResources$"+Dn,Ra="__reactMarker$"+Dn;function vc(t){delete t[te],delete t[oe],delete t[Ac],delete t[sm],delete t[fm]}function Ul(t){var e=t[te];if(e)return e;for(var n=t.parentNode;n;){if(e=n[Bl]||n[te]){if(n=e.alternate,e.child!==null||n!==null&&n.child!==null)for(t=Fd(t);t!==null;){if(n=t[te])return n;t=Fd(t)}return e}t=n,n=t.parentNode}return null}function Ql(t){if(t=t[te]||t[Bl]){var e=t.tag;if(e===5||e===6||e===13||e===31||e===26||e===27||e===3)return t}return null}function wa(t){var e=t.tag;if(e===5||e===26||e===27||e===6)return t.stateNode;throw Error(f(33))}function zl(t){var e=t[Dr];return e||(e=t[Dr]={hoistableStyles:new Map,hoistableScripts:new Map}),e}function Ft(t){t[Ra]=!0}var Rr=new Set,wr={};function sl(t,e){Yl(t,e),Yl(t+"Capture",e)}function Yl(t,e){for(wr[t]=e,t=0;t<e.length;t++)Rr.add(e[t])}var rm=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),Mr={},jr={};function om(t){return rc.call(jr,t)?!0:rc.call(Mr,t)?!1:rm.test(t)?jr[t]=!0:(Mr[t]=!0,!1)}function zi(t,e,n){if(om(e))if(n===null)t.removeAttribute(e);else{switch(typeof n){case"undefined":case"function":case"symbol":t.removeAttribute(e);return;case"boolean":var l=e.toLowerCase().slice(0,5);if(l!=="data-"&&l!=="aria-"){t.removeAttribute(e);return}}t.setAttribute(e,""+n)}}function Yi(t,e,n){if(n===null)t.removeAttribute(e);else{switch(typeof n){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(e);return}t.setAttribute(e,""+n)}}function $e(t,e,n,l){if(l===null)t.removeAttribute(n);else{switch(typeof l){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(n);return}t.setAttributeNS(e,n,""+l)}}function je(t){switch(typeof t){case"bigint":case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function Nr(t){var e=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(e==="checkbox"||e==="radio")}function dm(t,e,n){var l=Object.getOwnPropertyDescriptor(t.constructor.prototype,e);if(!t.hasOwnProperty(e)&&typeof l<"u"&&typeof l.get=="function"&&typeof l.set=="function"){var a=l.get,s=l.set;return Object.defineProperty(t,e,{configurable:!0,get:function(){return a.call(this)},set:function(d){n=""+d,s.call(this,d)}}),Object.defineProperty(t,e,{enumerable:l.enumerable}),{getValue:function(){return n},setValue:function(d){n=""+d},stopTracking:function(){t._valueTracker=null,delete t[e]}}}}function yc(t){if(!t._valueTracker){var e=Nr(t)?"checked":"value";t._valueTracker=dm(t,e,""+t[e])}}function Hr(t){if(!t)return!1;var e=t._valueTracker;if(!e)return!0;var n=e.getValue(),l="";return t&&(l=Nr(t)?t.checked?"true":"false":t.value),t=l,t!==n?(e.setValue(t),!0):!1}function Li(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var hm=/[\n"\\]/g;function Ne(t){return t.replace(hm,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function Ec(t,e,n,l,a,s,d,g){t.name="",d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?t.type=d:t.removeAttribute("type"),e!=null?d==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+je(e)):t.value!==""+je(e)&&(t.value=""+je(e)):d!=="submit"&&d!=="reset"||t.removeAttribute("value"),e!=null?pc(t,d,je(e)):n!=null?pc(t,d,je(n)):l!=null&&t.removeAttribute("value"),a==null&&s!=null&&(t.defaultChecked=!!s),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),g!=null&&typeof g!="function"&&typeof g!="symbol"&&typeof g!="boolean"?t.name=""+je(g):t.removeAttribute("name")}function Br(t,e,n,l,a,s,d,g){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(t.type=s),e!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||e!=null)){yc(t);return}n=n!=null?""+je(n):"",e=e!=null?""+je(e):n,g||e===t.value||(t.value=e),t.defaultValue=e}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=g?t.checked:!!l,t.defaultChecked=!!l,d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"&&(t.name=d),yc(t)}function pc(t,e,n){e==="number"&&Li(t.ownerDocument)===t||t.defaultValue===""+n||(t.defaultValue=""+n)}function Ll(t,e,n,l){if(t=t.options,e){e={};for(var a=0;a<n.length;a++)e["$"+n[a]]=!0;for(n=0;n<t.length;n++)a=e.hasOwnProperty("$"+t[n].value),t[n].selected!==a&&(t[n].selected=a),a&&l&&(t[n].defaultSelected=!0)}else{for(n=""+je(n),e=null,a=0;a<t.length;a++){if(t[a].value===n){t[a].selected=!0,l&&(t[a].defaultSelected=!0);return}e!==null||t[a].disabled||(e=t[a])}e!==null&&(e.selected=!0)}}function Ur(t,e,n){if(e!=null&&(e=""+je(e),e!==t.value&&(t.value=e),n==null)){t.defaultValue!==e&&(t.defaultValue=e);return}t.defaultValue=n!=null?""+je(n):""}function Qr(t,e,n,l){if(e==null){if(l!=null){if(n!=null)throw Error(f(92));if(ut(l)){if(1<l.length)throw Error(f(93));l=l[0]}n=l}n==null&&(n=""),e=n}n=je(e),t.defaultValue=n,l=t.textContent,l===n&&l!==""&&l!==null&&(t.value=l),yc(t)}function Gl(t,e){if(e){var n=t.firstChild;if(n&&n===t.lastChild&&n.nodeType===3){n.nodeValue=e;return}}t.textContent=e}var mm=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function zr(t,e,n){var l=e.indexOf("--")===0;n==null||typeof n=="boolean"||n===""?l?t.setProperty(e,""):e==="float"?t.cssFloat="":t[e]="":l?t.setProperty(e,n):typeof n!="number"||n===0||mm.has(e)?e==="float"?t.cssFloat=n:t[e]=(""+n).trim():t[e]=n+"px"}function Yr(t,e,n){if(e!=null&&typeof e!="object")throw Error(f(62));if(t=t.style,n!=null){for(var l in n)!n.hasOwnProperty(l)||e!=null&&e.hasOwnProperty(l)||(l.indexOf("--")===0?t.setProperty(l,""):l==="float"?t.cssFloat="":t[l]="");for(var a in e)l=e[a],e.hasOwnProperty(a)&&n[a]!==l&&zr(t,a,l)}else for(var s in e)e.hasOwnProperty(s)&&zr(t,s,e[s])}function xc(t){if(t.indexOf("-")===-1)return!1;switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var gm=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),Am=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Gi(t){return Am.test(""+t)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":t}function tn(){}var bc=null;function Sc(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var Xl=null,Vl=null;function Lr(t){var e=Ql(t);if(e&&(t=e.stateNode)){var n=t[oe]||null;t:switch(t=e.stateNode,e.type){case"input":if(Ec(t,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),e=n.name,n.type==="radio"&&e!=null){for(n=t;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll('input[name="'+Ne(""+e)+'"][type="radio"]'),e=0;e<n.length;e++){var l=n[e];if(l!==t&&l.form===t.form){var a=l[oe]||null;if(!a)throw Error(f(90));Ec(l,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(e=0;e<n.length;e++)l=n[e],l.form===t.form&&Hr(l)}break t;case"textarea":Ur(t,n.value,n.defaultValue);break t;case"select":e=n.value,e!=null&&Ll(t,!!n.multiple,e,!1)}}}var Tc=!1;function Gr(t,e,n){if(Tc)return t(e,n);Tc=!0;try{var l=t(e);return l}finally{if(Tc=!1,(Xl!==null||Vl!==null)&&(Du(),Xl&&(e=Xl,t=Vl,Vl=Xl=null,Lr(e),t)))for(e=0;e<t.length;e++)Lr(t[e])}}function Ma(t,e){var n=t.stateNode;if(n===null)return null;var l=n[oe]||null;if(l===null)return null;n=l[e];t:switch(e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(l=!l.disabled)||(t=t.type,l=!(t==="button"||t==="input"||t==="select"||t==="textarea")),t=!l;break t;default:t=!1}if(t)return null;if(n&&typeof n!="function")throw Error(f(231,e,typeof n));return n}var en=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Cc=!1;if(en)try{var ja={};Object.defineProperty(ja,"passive",{get:function(){Cc=!0}}),window.addEventListener("test",ja,ja),window.removeEventListener("test",ja,ja)}catch{Cc=!1}var Rn=null,Oc=null,Xi=null;function Xr(){if(Xi)return Xi;var t,e=Oc,n=e.length,l,a="value"in Rn?Rn.value:Rn.textContent,s=a.length;for(t=0;t<n&&e[t]===a[t];t++);var d=n-t;for(l=1;l<=d&&e[n-l]===a[s-l];l++);return Xi=a.slice(t,1<l?1-l:void 0)}function Vi(t){var e=t.keyCode;return"charCode"in t?(t=t.charCode,t===0&&e===13&&(t=13)):t=e,t===10&&(t=13),32<=t||t===13?t:0}function Zi(){return!0}function Vr(){return!1}function de(t){function e(n,l,a,s,d){this._reactName=n,this._targetInst=a,this.type=l,this.nativeEvent=s,this.target=d,this.currentTarget=null;for(var g in t)t.hasOwnProperty(g)&&(n=t[g],this[g]=n?n(s):s[g]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?Zi:Vr,this.isPropagationStopped=Vr,this}return T(e.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Zi)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Zi)},persist:function(){},isPersistent:Zi}),e}var fl={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Ii=de(fl),Na=T({},fl,{view:0,detail:0}),vm=de(Na),Dc,Rc,Ha,qi=T({},Na,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Mc,button:0,buttons:0,relatedTarget:function(t){return t.relatedTarget===void 0?t.fromElement===t.srcElement?t.toElement:t.fromElement:t.relatedTarget},movementX:function(t){return"movementX"in t?t.movementX:(t!==Ha&&(Ha&&t.type==="mousemove"?(Dc=t.screenX-Ha.screenX,Rc=t.screenY-Ha.screenY):Rc=Dc=0,Ha=t),Dc)},movementY:function(t){return"movementY"in t?t.movementY:Rc}}),Zr=de(qi),ym=T({},qi,{dataTransfer:0}),Em=de(ym),pm=T({},Na,{relatedTarget:0}),wc=de(pm),xm=T({},fl,{animationName:0,elapsedTime:0,pseudoElement:0}),bm=de(xm),Sm=T({},fl,{clipboardData:function(t){return"clipboardData"in t?t.clipboardData:window.clipboardData}}),Tm=de(Sm),Cm=T({},fl,{data:0}),Ir=de(Cm),Om={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Dm={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Rm={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function wm(t){var e=this.nativeEvent;return e.getModifierState?e.getModifierState(t):(t=Rm[t])?!!e[t]:!1}function Mc(){return wm}var Mm=T({},Na,{key:function(t){if(t.key){var e=Om[t.key]||t.key;if(e!=="Unidentified")return e}return t.type==="keypress"?(t=Vi(t),t===13?"Enter":String.fromCharCode(t)):t.type==="keydown"||t.type==="keyup"?Dm[t.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Mc,charCode:function(t){return t.type==="keypress"?Vi(t):0},keyCode:function(t){return t.type==="keydown"||t.type==="keyup"?t.keyCode:0},which:function(t){return t.type==="keypress"?Vi(t):t.type==="keydown"||t.type==="keyup"?t.keyCode:0}}),jm=de(Mm),Nm=T({},qi,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),qr=de(Nm),Hm=T({},Na,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Mc}),Bm=de(Hm),Um=T({},fl,{propertyName:0,elapsedTime:0,pseudoElement:0}),Qm=de(Um),zm=T({},qi,{deltaX:function(t){return"deltaX"in t?t.deltaX:"wheelDeltaX"in t?-t.wheelDeltaX:0},deltaY:function(t){return"deltaY"in t?t.deltaY:"wheelDeltaY"in t?-t.wheelDeltaY:"wheelDelta"in t?-t.wheelDelta:0},deltaZ:0,deltaMode:0}),Ym=de(zm),Lm=T({},fl,{newState:0,oldState:0}),Gm=de(Lm),Xm=[9,13,27,32],jc=en&&"CompositionEvent"in window,Ba=null;en&&"documentMode"in document&&(Ba=document.documentMode);var Vm=en&&"TextEvent"in window&&!Ba,Kr=en&&(!jc||Ba&&8<Ba&&11>=Ba),kr=" ",Jr=!1;function Fr(t,e){switch(t){case"keyup":return Xm.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Wr(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var Zl=!1;function Zm(t,e){switch(t){case"compositionend":return Wr(e);case"keypress":return e.which!==32?null:(Jr=!0,kr);case"textInput":return t=e.data,t===kr&&Jr?null:t;default:return null}}function Im(t,e){if(Zl)return t==="compositionend"||!jc&&Fr(t,e)?(t=Xr(),Xi=Oc=Rn=null,Zl=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1<e.char.length)return e.char;if(e.which)return String.fromCharCode(e.which)}return null;case"compositionend":return Kr&&e.locale!=="ko"?null:e.data;default:return null}}var qm={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function _r(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e==="input"?!!qm[t.type]:e==="textarea"}function Pr(t,e,n,l){Xl?Vl?Vl.push(l):Vl=[l]:Xl=l,e=Bu(e,"onChange"),0<e.length&&(n=new Ii("onChange","change",null,n,l),t.push({event:n,listeners:e}))}var Ua=null,Qa=null;function Km(t){Ud(t,0)}function Ki(t){var e=wa(t);if(Hr(e))return t}function $r(t,e){if(t==="change")return e}var t0=!1;if(en){var Nc;if(en){var Hc="oninput"in document;if(!Hc){var e0=document.createElement("div");e0.setAttribute("oninput","return;"),Hc=typeof e0.oninput=="function"}Nc=Hc}else Nc=!1;t0=Nc&&(!document.documentMode||9<document.documentMode)}function n0(){Ua&&(Ua.detachEvent("onpropertychange",l0),Qa=Ua=null)}function l0(t){if(t.propertyName==="value"&&Ki(Qa)){var e=[];Pr(e,Qa,t,Sc(t)),Gr(Km,e)}}function km(t,e,n){t==="focusin"?(n0(),Ua=e,Qa=n,Ua.attachEvent("onpropertychange",l0)):t==="focusout"&&n0()}function Jm(t){if(t==="selectionchange"||t==="keyup"||t==="keydown")return Ki(Qa)}function Fm(t,e){if(t==="click")return Ki(e)}function Wm(t,e){if(t==="input"||t==="change")return Ki(e)}function _m(t,e){return t===e&&(t!==0||1/t===1/e)||t!==t&&e!==e}var Se=typeof Object.is=="function"?Object.is:_m;function za(t,e){if(Se(t,e))return!0;if(typeof t!="object"||t===null||typeof e!="object"||e===null)return!1;var n=Object.keys(t),l=Object.keys(e);if(n.length!==l.length)return!1;for(l=0;l<n.length;l++){var a=n[l];if(!rc.call(e,a)||!Se(t[a],e[a]))return!1}return!0}function a0(t){for(;t&&t.firstChild;)t=t.firstChild;return t}function i0(t,e){var n=a0(t);t=0;for(var l;n;){if(n.nodeType===3){if(l=t+n.textContent.length,t<=e&&l>=e)return{node:n,offset:e-t};t=l}t:{for(;n;){if(n.nextSibling){n=n.nextSibling;break t}n=n.parentNode}n=void 0}n=a0(n)}}function u0(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?u0(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function c0(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Li(t.document);e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=Li(t.document)}return e}function Bc(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Pm=en&&"documentMode"in document&&11>=document.documentMode,Il=null,Uc=null,Ya=null,Qc=!1;function s0(t,e,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Qc||Il==null||Il!==Li(l)||(l=Il,"selectionStart"in l&&Bc(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),Ya&&za(Ya,l)||(Ya=l,l=Bu(Uc,"onSelect"),0<l.length&&(e=new Ii("onSelect","select",null,e,n),t.push({event:e,listeners:l}),e.target=Il)))}function rl(t,e){var n={};return n[t.toLowerCase()]=e.toLowerCase(),n["Webkit"+t]="webkit"+e,n["Moz"+t]="moz"+e,n}var ql={animationend:rl("Animation","AnimationEnd"),animationiteration:rl("Animation","AnimationIteration"),animationstart:rl("Animation","AnimationStart"),transitionrun:rl("Transition","TransitionRun"),transitionstart:rl("Transition","TransitionStart"),transitioncancel:rl("Transition","TransitionCancel"),transitionend:rl("Transition","TransitionEnd")},zc={},f0={};en&&(f0=document.createElement("div").style,"AnimationEvent"in window||(delete ql.animationend.animation,delete ql.animationiteration.animation,delete ql.animationstart.animation),"TransitionEvent"in window||delete ql.transitionend.transition);function ol(t){if(zc[t])return zc[t];if(!ql[t])return t;var e=ql[t],n;for(n in e)if(e.hasOwnProperty(n)&&n in f0)return zc[t]=e[n];return t}var r0=ol("animationend"),o0=ol("animationiteration"),d0=ol("animationstart"),$m=ol("transitionrun"),tg=ol("transitionstart"),eg=ol("transitioncancel"),h0=ol("transitionend"),m0=new Map,Yc="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Yc.push("scrollEnd");function Ie(t,e){m0.set(t,e),sl(e,[t])}var ki=typeof reportError=="function"?reportError:function(t){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var e=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof t=="object"&&t!==null&&typeof t.message=="string"?String(t.message):String(t),error:t});if(!window.dispatchEvent(e))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",t);return}console.error(t)},He=[],Kl=0,Lc=0;function Ji(){for(var t=Kl,e=Lc=Kl=0;e<t;){var n=He[e];He[e++]=null;var l=He[e];He[e++]=null;var a=He[e];He[e++]=null;var s=He[e];if(He[e++]=null,l!==null&&a!==null){var d=l.pending;d===null?a.next=a:(a.next=d.next,d.next=a),l.pending=a}s!==0&&g0(n,a,s)}}function Fi(t,e,n,l){He[Kl++]=t,He[Kl++]=e,He[Kl++]=n,He[Kl++]=l,Lc|=l,t.lanes|=l,t=t.alternate,t!==null&&(t.lanes|=l)}function Gc(t,e,n,l){return Fi(t,e,n,l),Wi(t)}function dl(t,e){return Fi(t,null,null,e),Wi(t)}function g0(t,e,n){t.lanes|=n;var l=t.alternate;l!==null&&(l.lanes|=n);for(var a=!1,s=t.return;s!==null;)s.childLanes|=n,l=s.alternate,l!==null&&(l.childLanes|=n),s.tag===22&&(t=s.stateNode,t===null||t._visibility&1||(a=!0)),t=s,s=s.return;return t.tag===3?(s=t.stateNode,a&&e!==null&&(a=31-be(n),t=s.hiddenUpdates,l=t[a],l===null?t[a]=[e]:l.push(e),e.lane=n|536870912),s):null}function Wi(t){if(50<ui)throw ui=0,Fs=null,Error(f(185));for(var e=t.return;e!==null;)t=e,e=t.return;return t.tag===3?t.stateNode:null}var kl={};function ng(t,e,n,l){this.tag=t,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=l,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Te(t,e,n,l){return new ng(t,e,n,l)}function Xc(t){return t=t.prototype,!(!t||!t.isReactComponent)}function nn(t,e){var n=t.alternate;return n===null?(n=Te(t.tag,e,t.key,t.mode),n.elementType=t.elementType,n.type=t.type,n.stateNode=t.stateNode,n.alternate=t,t.alternate=n):(n.pendingProps=e,n.type=t.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=t.flags&65011712,n.childLanes=t.childLanes,n.lanes=t.lanes,n.child=t.child,n.memoizedProps=t.memoizedProps,n.memoizedState=t.memoizedState,n.updateQueue=t.updateQueue,e=t.dependencies,n.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},n.sibling=t.sibling,n.index=t.index,n.ref=t.ref,n.refCleanup=t.refCleanup,n}function A0(t,e){t.flags&=65011714;var n=t.alternate;return n===null?(t.childLanes=0,t.lanes=e,t.child=null,t.subtreeFlags=0,t.memoizedProps=null,t.memoizedState=null,t.updateQueue=null,t.dependencies=null,t.stateNode=null):(t.childLanes=n.childLanes,t.lanes=n.lanes,t.child=n.child,t.subtreeFlags=0,t.deletions=null,t.memoizedProps=n.memoizedProps,t.memoizedState=n.memoizedState,t.updateQueue=n.updateQueue,t.type=n.type,e=n.dependencies,t.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),t}function _i(t,e,n,l,a,s){var d=0;if(l=t,typeof t=="function")Xc(t)&&(d=1);else if(typeof t=="string")d=cA(t,n,et.current)?26:t==="html"||t==="head"||t==="body"?27:5;else t:switch(t){case z:return t=Te(31,n,e,a),t.elementType=z,t.lanes=s,t;case p:return hl(n.children,a,s,e);case E:d=8,a|=24;break;case b:return t=Te(12,n,e,a|2),t.elementType=b,t.lanes=s,t;case F:return t=Te(13,n,e,a),t.elementType=F,t.lanes=s,t;case H:return t=Te(19,n,e,a),t.elementType=H,t.lanes=s,t;default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case N:d=10;break t;case R:d=9;break t;case V:d=11;break t;case j:d=14;break t;case Y:d=16,l=null;break t}d=29,n=Error(f(130,t===null?"null":typeof t,"")),l=null}return e=Te(d,n,e,a),e.elementType=t,e.type=l,e.lanes=s,e}function hl(t,e,n,l){return t=Te(7,t,l,e),t.lanes=n,t}function Vc(t,e,n){return t=Te(6,t,null,e),t.lanes=n,t}function v0(t){var e=Te(18,null,null,0);return e.stateNode=t,e}function Zc(t,e,n){return e=Te(4,t.children!==null?t.children:[],t.key,e),e.lanes=n,e.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},e}var y0=new WeakMap;function Be(t,e){if(typeof t=="object"&&t!==null){var n=y0.get(t);return n!==void 0?n:(e={value:t,source:e,stack:ji(e)},y0.set(t,e),e)}return{value:t,source:e,stack:ji(e)}}var Jl=[],Fl=0,Pi=null,La=0,Ue=[],Qe=0,wn=null,Je=1,Fe="";function ln(t,e){Jl[Fl++]=La,Jl[Fl++]=Pi,Pi=t,La=e}function E0(t,e,n){Ue[Qe++]=Je,Ue[Qe++]=Fe,Ue[Qe++]=wn,wn=t;var l=Je;t=Fe;var a=32-be(l)-1;l&=~(1<<a),n+=1;var s=32-be(e)+a;if(30<s){var d=a-a%5;s=(l&(1<<d)-1).toString(32),l>>=d,a-=d,Je=1<<32-be(e)+a|n<<a|l,Fe=s+t}else Je=1<<s|n<<a|l,Fe=t}function Ic(t){t.return!==null&&(ln(t,1),E0(t,1,0))}function qc(t){for(;t===Pi;)Pi=Jl[--Fl],Jl[Fl]=null,La=Jl[--Fl],Jl[Fl]=null;for(;t===wn;)wn=Ue[--Qe],Ue[Qe]=null,Fe=Ue[--Qe],Ue[Qe]=null,Je=Ue[--Qe],Ue[Qe]=null}function p0(t,e){Ue[Qe++]=Je,Ue[Qe++]=Fe,Ue[Qe++]=wn,Je=e.id,Fe=e.overflow,wn=t}var ee=null,Nt=null,xt=!1,Mn=null,ze=!1,Kc=Error(f(519));function jn(t){var e=Error(f(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Ga(Be(e,t)),Kc}function x0(t){var e=t.stateNode,n=t.type,l=t.memoizedProps;switch(e[te]=t,e[oe]=l,n){case"dialog":yt("cancel",e),yt("close",e);break;case"iframe":case"object":case"embed":yt("load",e);break;case"video":case"audio":for(n=0;n<si.length;n++)yt(si[n],e);break;case"source":yt("error",e);break;case"img":case"image":case"link":yt("error",e),yt("load",e);break;case"details":yt("toggle",e);break;case"input":yt("invalid",e),Br(e,l.value,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name,!0);break;case"select":yt("invalid",e);break;case"textarea":yt("invalid",e),Qr(e,l.value,l.defaultValue,l.children)}n=l.children,typeof n!="string"&&typeof n!="number"&&typeof n!="bigint"||e.textContent===""+n||l.suppressHydrationWarning===!0||Ld(e.textContent,n)?(l.popover!=null&&(yt("beforetoggle",e),yt("toggle",e)),l.onScroll!=null&&yt("scroll",e),l.onScrollEnd!=null&&yt("scrollend",e),l.onClick!=null&&(e.onclick=tn),e=!0):e=!1,e||jn(t,!0)}function b0(t){for(ee=t.return;ee;)switch(ee.tag){case 5:case 31:case 13:ze=!1;return;case 27:case 3:ze=!0;return;default:ee=ee.return}}function Wl(t){if(t!==ee)return!1;if(!xt)return b0(t),xt=!0,!1;var e=t.tag,n;if((n=e!==3&&e!==27)&&((n=e===5)&&(n=t.type,n=!(n!=="form"&&n!=="button")||of(t.type,t.memoizedProps)),n=!n),n&&Nt&&jn(t),b0(t),e===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(f(317));Nt=Jd(t)}else if(e===31){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(f(317));Nt=Jd(t)}else e===27?(e=Nt,qn(t.type)?(t=Af,Af=null,Nt=t):Nt=e):Nt=ee?Le(t.stateNode.nextSibling):null;return!0}function ml(){Nt=ee=null,xt=!1}function kc(){var t=Mn;return t!==null&&(Ae===null?Ae=t:Ae.push.apply(Ae,t),Mn=null),t}function Ga(t){Mn===null?Mn=[t]:Mn.push(t)}var Jc=C(null),gl=null,an=null;function Nn(t,e,n){W(Jc,e._currentValue),e._currentValue=n}function un(t){t._currentValue=Jc.current,L(Jc)}function Fc(t,e,n){for(;t!==null;){var l=t.alternate;if((t.childLanes&e)!==e?(t.childLanes|=e,l!==null&&(l.childLanes|=e)):l!==null&&(l.childLanes&e)!==e&&(l.childLanes|=e),t===n)break;t=t.return}}function Wc(t,e,n,l){var a=t.child;for(a!==null&&(a.return=t);a!==null;){var s=a.dependencies;if(s!==null){var d=a.child;s=s.firstContext;t:for(;s!==null;){var g=s;s=a;for(var S=0;S<e.length;S++)if(g.context===e[S]){s.lanes|=n,g=s.alternate,g!==null&&(g.lanes|=n),Fc(s.return,n,t),l||(d=null);break t}s=g.next}}else if(a.tag===18){if(d=a.return,d===null)throw Error(f(341));d.lanes|=n,s=d.alternate,s!==null&&(s.lanes|=n),Fc(d,n,t),d=null}else d=a.child;if(d!==null)d.return=a;else for(d=a;d!==null;){if(d===t){d=null;break}if(a=d.sibling,a!==null){a.return=d.return,d=a;break}d=d.return}a=d}}function _l(t,e,n,l){t=null;for(var a=e,s=!1;a!==null;){if(!s){if((a.flags&524288)!==0)s=!0;else if((a.flags&262144)!==0)break}if(a.tag===10){var d=a.alternate;if(d===null)throw Error(f(387));if(d=d.memoizedProps,d!==null){var g=a.type;Se(a.pendingProps.value,d.value)||(t!==null?t.push(g):t=[g])}}else if(a===gt.current){if(d=a.alternate,d===null)throw Error(f(387));d.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(t!==null?t.push(hi):t=[hi])}a=a.return}t!==null&&Wc(e,t,n,l),e.flags|=262144}function $i(t){for(t=t.firstContext;t!==null;){if(!Se(t.context._currentValue,t.memoizedValue))return!0;t=t.next}return!1}function Al(t){gl=t,an=null,t=t.dependencies,t!==null&&(t.firstContext=null)}function ne(t){return S0(gl,t)}function tu(t,e){return gl===null&&Al(t),S0(t,e)}function S0(t,e){var n=e._currentValue;if(e={context:e,memoizedValue:n,next:null},an===null){if(t===null)throw Error(f(308));an=e,t.dependencies={lanes:0,firstContext:e},t.flags|=524288}else an=an.next=e;return n}var lg=typeof AbortController<"u"?AbortController:function(){var t=[],e=this.signal={aborted:!1,addEventListener:function(n,l){t.push(l)}};this.abort=function(){e.aborted=!0,t.forEach(function(n){return n()})}},ag=i.unstable_scheduleCallback,ig=i.unstable_NormalPriority,Zt={$$typeof:N,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function _c(){return{controller:new lg,data:new Map,refCount:0}}function Xa(t){t.refCount--,t.refCount===0&&ag(ig,function(){t.controller.abort()})}var Va=null,Pc=0,Pl=0,$l=null;function ug(t,e){if(Va===null){var n=Va=[];Pc=0,Pl=ef(),$l={status:"pending",value:void 0,then:function(l){n.push(l)}}}return Pc++,e.then(T0,T0),e}function T0(){if(--Pc===0&&Va!==null){$l!==null&&($l.status="fulfilled");var t=Va;Va=null,Pl=0,$l=null;for(var e=0;e<t.length;e++)(0,t[e])()}}function cg(t,e){var n=[],l={status:"pending",value:null,reason:null,then:function(a){n.push(a)}};return t.then(function(){l.status="fulfilled",l.value=e;for(var a=0;a<n.length;a++)(0,n[a])(e)},function(a){for(l.status="rejected",l.reason=a,a=0;a<n.length;a++)(0,n[a])(void 0)}),l}var C0=M.S;M.S=function(t,e){fd=pe(),typeof e=="object"&&e!==null&&typeof e.then=="function"&&ug(t,e),C0!==null&&C0(t,e)};var vl=C(null);function $c(){var t=vl.current;return t!==null?t:jt.pooledCache}function eu(t,e){e===null?W(vl,vl.current):W(vl,e.pool)}function O0(){var t=$c();return t===null?null:{parent:Zt._currentValue,pool:t}}var ta=Error(f(460)),ts=Error(f(474)),nu=Error(f(542)),lu={then:function(){}};function D0(t){return t=t.status,t==="fulfilled"||t==="rejected"}function R0(t,e,n){switch(n=t[n],n===void 0?t.push(e):n!==e&&(e.then(tn,tn),e=n),e.status){case"fulfilled":return e.value;case"rejected":throw t=e.reason,M0(t),t;default:if(typeof e.status=="string")e.then(tn,tn);else{if(t=jt,t!==null&&100<t.shellSuspendCounter)throw Error(f(482));t=e,t.status="pending",t.then(function(l){if(e.status==="pending"){var a=e;a.status="fulfilled",a.value=l}},function(l){if(e.status==="pending"){var a=e;a.status="rejected",a.reason=l}})}switch(e.status){case"fulfilled":return e.value;case"rejected":throw t=e.reason,M0(t),t}throw El=e,ta}}function yl(t){try{var e=t._init;return e(t._payload)}catch(n){throw n!==null&&typeof n=="object"&&typeof n.then=="function"?(El=n,ta):n}}var El=null;function w0(){if(El===null)throw Error(f(459));var t=El;return El=null,t}function M0(t){if(t===ta||t===nu)throw Error(f(483))}var ea=null,Za=0;function au(t){var e=Za;return Za+=1,ea===null&&(ea=[]),R0(ea,t,e)}function Ia(t,e){e=e.props.ref,t.ref=e!==void 0?e:null}function iu(t,e){throw e.$$typeof===D?Error(f(525)):(t=Object.prototype.toString.call(e),Error(f(31,t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)))}function j0(t){function e(w,O){if(t){var B=w.deletions;B===null?(w.deletions=[O],w.flags|=16):B.push(O)}}function n(w,O){if(!t)return null;for(;O!==null;)e(w,O),O=O.sibling;return null}function l(w){for(var O=new Map;w!==null;)w.key!==null?O.set(w.key,w):O.set(w.index,w),w=w.sibling;return O}function a(w,O){return w=nn(w,O),w.index=0,w.sibling=null,w}function s(w,O,B){return w.index=B,t?(B=w.alternate,B!==null?(B=B.index,B<O?(w.flags|=67108866,O):B):(w.flags|=67108866,O)):(w.flags|=1048576,O)}function d(w){return t&&w.alternate===null&&(w.flags|=67108866),w}function g(w,O,B,K){return O===null||O.tag!==6?(O=Vc(B,w.mode,K),O.return=w,O):(O=a(O,B),O.return=w,O)}function S(w,O,B,K){var ct=B.type;return ct===p?Z(w,O,B.props.children,K,B.key):O!==null&&(O.elementType===ct||typeof ct=="object"&&ct!==null&&ct.$$typeof===Y&&yl(ct)===O.type)?(O=a(O,B.props),Ia(O,B),O.return=w,O):(O=_i(B.type,B.key,B.props,null,w.mode,K),Ia(O,B),O.return=w,O)}function U(w,O,B,K){return O===null||O.tag!==4||O.stateNode.containerInfo!==B.containerInfo||O.stateNode.implementation!==B.implementation?(O=Zc(B,w.mode,K),O.return=w,O):(O=a(O,B.children||[]),O.return=w,O)}function Z(w,O,B,K,ct){return O===null||O.tag!==7?(O=hl(B,w.mode,K,ct),O.return=w,O):(O=a(O,B),O.return=w,O)}function J(w,O,B){if(typeof O=="string"&&O!==""||typeof O=="number"||typeof O=="bigint")return O=Vc(""+O,w.mode,B),O.return=w,O;if(typeof O=="object"&&O!==null){switch(O.$$typeof){case X:return B=_i(O.type,O.key,O.props,null,w.mode,B),Ia(B,O),B.return=w,B;case q:return O=Zc(O,w.mode,B),O.return=w,O;case Y:return O=yl(O),J(w,O,B)}if(ut(O)||nt(O))return O=hl(O,w.mode,B,null),O.return=w,O;if(typeof O.then=="function")return J(w,au(O),B);if(O.$$typeof===N)return J(w,tu(w,O),B);iu(w,O)}return null}function Q(w,O,B,K){var ct=O!==null?O.key:null;if(typeof B=="string"&&B!==""||typeof B=="number"||typeof B=="bigint")return ct!==null?null:g(w,O,""+B,K);if(typeof B=="object"&&B!==null){switch(B.$$typeof){case X:return B.key===ct?S(w,O,B,K):null;case q:return B.key===ct?U(w,O,B,K):null;case Y:return B=yl(B),Q(w,O,B,K)}if(ut(B)||nt(B))return ct!==null?null:Z(w,O,B,K,null);if(typeof B.then=="function")return Q(w,O,au(B),K);if(B.$$typeof===N)return Q(w,O,tu(w,B),K);iu(w,B)}return null}function G(w,O,B,K,ct){if(typeof K=="string"&&K!==""||typeof K=="number"||typeof K=="bigint")return w=w.get(B)||null,g(O,w,""+K,ct);if(typeof K=="object"&&K!==null){switch(K.$$typeof){case X:return w=w.get(K.key===null?B:K.key)||null,S(O,w,K,ct);case q:return w=w.get(K.key===null?B:K.key)||null,U(O,w,K,ct);case Y:return K=yl(K),G(w,O,B,K,ct)}if(ut(K)||nt(K))return w=w.get(B)||null,Z(O,w,K,ct,null);if(typeof K.then=="function")return G(w,O,B,au(K),ct);if(K.$$typeof===N)return G(w,O,B,tu(O,K),ct);iu(O,K)}return null}function lt(w,O,B,K){for(var ct=null,St=null,at=O,At=O=0,pt=null;at!==null&&At<B.length;At++){at.index>At?(pt=at,at=null):pt=at.sibling;var Tt=Q(w,at,B[At],K);if(Tt===null){at===null&&(at=pt);break}t&&at&&Tt.alternate===null&&e(w,at),O=s(Tt,O,At),St===null?ct=Tt:St.sibling=Tt,St=Tt,at=pt}if(At===B.length)return n(w,at),xt&&ln(w,At),ct;if(at===null){for(;At<B.length;At++)at=J(w,B[At],K),at!==null&&(O=s(at,O,At),St===null?ct=at:St.sibling=at,St=at);return xt&&ln(w,At),ct}for(at=l(at);At<B.length;At++)pt=G(at,w,At,B[At],K),pt!==null&&(t&&pt.alternate!==null&&at.delete(pt.key===null?At:pt.key),O=s(pt,O,At),St===null?ct=pt:St.sibling=pt,St=pt);return t&&at.forEach(function(Wn){return e(w,Wn)}),xt&&ln(w,At),ct}function ft(w,O,B,K){if(B==null)throw Error(f(151));for(var ct=null,St=null,at=O,At=O=0,pt=null,Tt=B.next();at!==null&&!Tt.done;At++,Tt=B.next()){at.index>At?(pt=at,at=null):pt=at.sibling;var Wn=Q(w,at,Tt.value,K);if(Wn===null){at===null&&(at=pt);break}t&&at&&Wn.alternate===null&&e(w,at),O=s(Wn,O,At),St===null?ct=Wn:St.sibling=Wn,St=Wn,at=pt}if(Tt.done)return n(w,at),xt&&ln(w,At),ct;if(at===null){for(;!Tt.done;At++,Tt=B.next())Tt=J(w,Tt.value,K),Tt!==null&&(O=s(Tt,O,At),St===null?ct=Tt:St.sibling=Tt,St=Tt);return xt&&ln(w,At),ct}for(at=l(at);!Tt.done;At++,Tt=B.next())Tt=G(at,w,At,Tt.value,K),Tt!==null&&(t&&Tt.alternate!==null&&at.delete(Tt.key===null?At:Tt.key),O=s(Tt,O,At),St===null?ct=Tt:St.sibling=Tt,St=Tt);return t&&at.forEach(function(yA){return e(w,yA)}),xt&&ln(w,At),ct}function Mt(w,O,B,K){if(typeof B=="object"&&B!==null&&B.type===p&&B.key===null&&(B=B.props.children),typeof B=="object"&&B!==null){switch(B.$$typeof){case X:t:{for(var ct=B.key;O!==null;){if(O.key===ct){if(ct=B.type,ct===p){if(O.tag===7){n(w,O.sibling),K=a(O,B.props.children),K.return=w,w=K;break t}}else if(O.elementType===ct||typeof ct=="object"&&ct!==null&&ct.$$typeof===Y&&yl(ct)===O.type){n(w,O.sibling),K=a(O,B.props),Ia(K,B),K.return=w,w=K;break t}n(w,O);break}else e(w,O);O=O.sibling}B.type===p?(K=hl(B.props.children,w.mode,K,B.key),K.return=w,w=K):(K=_i(B.type,B.key,B.props,null,w.mode,K),Ia(K,B),K.return=w,w=K)}return d(w);case q:t:{for(ct=B.key;O!==null;){if(O.key===ct)if(O.tag===4&&O.stateNode.containerInfo===B.containerInfo&&O.stateNode.implementation===B.implementation){n(w,O.sibling),K=a(O,B.children||[]),K.return=w,w=K;break t}else{n(w,O);break}else e(w,O);O=O.sibling}K=Zc(B,w.mode,K),K.return=w,w=K}return d(w);case Y:return B=yl(B),Mt(w,O,B,K)}if(ut(B))return lt(w,O,B,K);if(nt(B)){if(ct=nt(B),typeof ct!="function")throw Error(f(150));return B=ct.call(B),ft(w,O,B,K)}if(typeof B.then=="function")return Mt(w,O,au(B),K);if(B.$$typeof===N)return Mt(w,O,tu(w,B),K);iu(w,B)}return typeof B=="string"&&B!==""||typeof B=="number"||typeof B=="bigint"?(B=""+B,O!==null&&O.tag===6?(n(w,O.sibling),K=a(O,B),K.return=w,w=K):(n(w,O),K=Vc(B,w.mode,K),K.return=w,w=K),d(w)):n(w,O)}return function(w,O,B,K){try{Za=0;var ct=Mt(w,O,B,K);return ea=null,ct}catch(at){if(at===ta||at===nu)throw at;var St=Te(29,at,null,w.mode);return St.lanes=K,St.return=w,St}finally{}}}var pl=j0(!0),N0=j0(!1),Hn=!1;function es(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ns(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function Bn(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function Un(t,e,n){var l=t.updateQueue;if(l===null)return null;if(l=l.shared,(Ct&2)!==0){var a=l.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),l.pending=e,e=Wi(t),g0(t,null,n),e}return Fi(t,l,e,n),Wi(t)}function qa(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194048)!==0)){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,Sr(t,n)}}function ls(t,e){var n=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var d={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=d:s=s.next=d,n=n.next}while(n!==null);s===null?a=s=e:s=s.next=e}else a=s=e;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}var as=!1;function Ka(){if(as){var t=$l;if(t!==null)throw t}}function ka(t,e,n,l){as=!1;var a=t.updateQueue;Hn=!1;var s=a.firstBaseUpdate,d=a.lastBaseUpdate,g=a.shared.pending;if(g!==null){a.shared.pending=null;var S=g,U=S.next;S.next=null,d===null?s=U:d.next=U,d=S;var Z=t.alternate;Z!==null&&(Z=Z.updateQueue,g=Z.lastBaseUpdate,g!==d&&(g===null?Z.firstBaseUpdate=U:g.next=U,Z.lastBaseUpdate=S))}if(s!==null){var J=a.baseState;d=0,Z=U=S=null,g=s;do{var Q=g.lane&-536870913,G=Q!==g.lane;if(G?(Et&Q)===Q:(l&Q)===Q){Q!==0&&Q===Pl&&(as=!0),Z!==null&&(Z=Z.next={lane:0,tag:g.tag,payload:g.payload,callback:null,next:null});t:{var lt=t,ft=g;Q=e;var Mt=n;switch(ft.tag){case 1:if(lt=ft.payload,typeof lt=="function"){J=lt.call(Mt,J,Q);break t}J=lt;break t;case 3:lt.flags=lt.flags&-65537|128;case 0:if(lt=ft.payload,Q=typeof lt=="function"?lt.call(Mt,J,Q):lt,Q==null)break t;J=T({},J,Q);break t;case 2:Hn=!0}}Q=g.callback,Q!==null&&(t.flags|=64,G&&(t.flags|=8192),G=a.callbacks,G===null?a.callbacks=[Q]:G.push(Q))}else G={lane:Q,tag:g.tag,payload:g.payload,callback:g.callback,next:null},Z===null?(U=Z=G,S=J):Z=Z.next=G,d|=Q;if(g=g.next,g===null){if(g=a.shared.pending,g===null)break;G=g,g=G.next,G.next=null,a.lastBaseUpdate=G,a.shared.pending=null}}while(!0);Z===null&&(S=J),a.baseState=S,a.firstBaseUpdate=U,a.lastBaseUpdate=Z,s===null&&(a.shared.lanes=0),Gn|=d,t.lanes=d,t.memoizedState=J}}function H0(t,e){if(typeof t!="function")throw Error(f(191,t));t.call(e)}function B0(t,e){var n=t.callbacks;if(n!==null)for(t.callbacks=null,t=0;t<n.length;t++)H0(n[t],e)}var na=C(null),uu=C(0);function U0(t,e){t=gn,W(uu,t),W(na,e),gn=t|e.baseLanes}function is(){W(uu,gn),W(na,na.current)}function us(){gn=uu.current,L(na),L(uu)}var Ce=C(null),Ye=null;function Qn(t){var e=t.alternate;W(Xt,Xt.current&1),W(Ce,t),Ye===null&&(e===null||na.current!==null||e.memoizedState!==null)&&(Ye=t)}function cs(t){W(Xt,Xt.current),W(Ce,t),Ye===null&&(Ye=t)}function Q0(t){t.tag===22?(W(Xt,Xt.current),W(Ce,t),Ye===null&&(Ye=t)):zn()}function zn(){W(Xt,Xt.current),W(Ce,Ce.current)}function Oe(t){L(Ce),Ye===t&&(Ye=null),L(Xt)}var Xt=C(0);function cu(t){for(var e=t;e!==null;){if(e.tag===13){var n=e.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||mf(n)||gf(n)))return e}else if(e.tag===19&&(e.memoizedProps.revealOrder==="forwards"||e.memoizedProps.revealOrder==="backwards"||e.memoizedProps.revealOrder==="unstable_legacy-backwards"||e.memoizedProps.revealOrder==="together")){if((e.flags&128)!==0)return e}else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return null;e=e.return}e.sibling.return=e.return,e=e.sibling}return null}var cn=0,mt=null,Rt=null,It=null,su=!1,la=!1,xl=!1,fu=0,Ja=0,aa=null,sg=0;function Lt(){throw Error(f(321))}function ss(t,e){if(e===null)return!1;for(var n=0;n<e.length&&n<t.length;n++)if(!Se(t[n],e[n]))return!1;return!0}function fs(t,e,n,l,a,s){return cn=s,mt=e,e.memoizedState=null,e.updateQueue=null,e.lanes=0,M.H=t===null||t.memoizedState===null?po:Ts,xl=!1,s=n(l,a),xl=!1,la&&(s=Y0(e,n,l,a)),z0(t),s}function z0(t){M.H=_a;var e=Rt!==null&&Rt.next!==null;if(cn=0,It=Rt=mt=null,su=!1,Ja=0,aa=null,e)throw Error(f(300));t===null||qt||(t=t.dependencies,t!==null&&$i(t)&&(qt=!0))}function Y0(t,e,n,l){mt=t;var a=0;do{if(la&&(aa=null),Ja=0,la=!1,25<=a)throw Error(f(301));if(a+=1,It=Rt=null,t.updateQueue!=null){var s=t.updateQueue;s.lastEffect=null,s.events=null,s.stores=null,s.memoCache!=null&&(s.memoCache.index=0)}M.H=xo,s=e(n,l)}while(la);return s}function fg(){var t=M.H,e=t.useState()[0];return e=typeof e.then=="function"?Fa(e):e,t=t.useState()[0],(Rt!==null?Rt.memoizedState:null)!==t&&(mt.flags|=1024),e}function rs(){var t=fu!==0;return fu=0,t}function os(t,e,n){e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~n}function ds(t){if(su){for(t=t.memoizedState;t!==null;){var e=t.queue;e!==null&&(e.pending=null),t=t.next}su=!1}cn=0,It=Rt=mt=null,la=!1,Ja=fu=0,aa=null}function fe(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return It===null?mt.memoizedState=It=t:It=It.next=t,It}function Vt(){if(Rt===null){var t=mt.alternate;t=t!==null?t.memoizedState:null}else t=Rt.next;var e=It===null?mt.memoizedState:It.next;if(e!==null)It=e,Rt=t;else{if(t===null)throw mt.alternate===null?Error(f(467)):Error(f(310));Rt=t,t={memoizedState:Rt.memoizedState,baseState:Rt.baseState,baseQueue:Rt.baseQueue,queue:Rt.queue,next:null},It===null?mt.memoizedState=It=t:It=It.next=t}return It}function ru(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Fa(t){var e=Ja;return Ja+=1,aa===null&&(aa=[]),t=R0(aa,t,e),e=mt,(It===null?e.memoizedState:It.next)===null&&(e=e.alternate,M.H=e===null||e.memoizedState===null?po:Ts),t}function ou(t){if(t!==null&&typeof t=="object"){if(typeof t.then=="function")return Fa(t);if(t.$$typeof===N)return ne(t)}throw Error(f(438,String(t)))}function hs(t){var e=null,n=mt.updateQueue;if(n!==null&&(e=n.memoCache),e==null){var l=mt.alternate;l!==null&&(l=l.updateQueue,l!==null&&(l=l.memoCache,l!=null&&(e={data:l.data.map(function(a){return a.slice()}),index:0})))}if(e==null&&(e={data:[],index:0}),n===null&&(n=ru(),mt.updateQueue=n),n.memoCache=e,n=e.data[e.index],n===void 0)for(n=e.data[e.index]=Array(t),l=0;l<t;l++)n[l]=I;return e.index++,n}function sn(t,e){return typeof e=="function"?e(t):e}function du(t){var e=Vt();return ms(e,Rt,t)}function ms(t,e,n){var l=t.queue;if(l===null)throw Error(f(311));l.lastRenderedReducer=n;var a=t.baseQueue,s=l.pending;if(s!==null){if(a!==null){var d=a.next;a.next=s.next,s.next=d}e.baseQueue=a=s,l.pending=null}if(s=t.baseState,a===null)t.memoizedState=s;else{e=a.next;var g=d=null,S=null,U=e,Z=!1;do{var J=U.lane&-536870913;if(J!==U.lane?(Et&J)===J:(cn&J)===J){var Q=U.revertLane;if(Q===0)S!==null&&(S=S.next={lane:0,revertLane:0,gesture:null,action:U.action,hasEagerState:U.hasEagerState,eagerState:U.eagerState,next:null}),J===Pl&&(Z=!0);else if((cn&Q)===Q){U=U.next,Q===Pl&&(Z=!0);continue}else J={lane:0,revertLane:U.revertLane,gesture:null,action:U.action,hasEagerState:U.hasEagerState,eagerState:U.eagerState,next:null},S===null?(g=S=J,d=s):S=S.next=J,mt.lanes|=Q,Gn|=Q;J=U.action,xl&&n(s,J),s=U.hasEagerState?U.eagerState:n(s,J)}else Q={lane:J,revertLane:U.revertLane,gesture:U.gesture,action:U.action,hasEagerState:U.hasEagerState,eagerState:U.eagerState,next:null},S===null?(g=S=Q,d=s):S=S.next=Q,mt.lanes|=J,Gn|=J;U=U.next}while(U!==null&&U!==e);if(S===null?d=s:S.next=g,!Se(s,t.memoizedState)&&(qt=!0,Z&&(n=$l,n!==null)))throw n;t.memoizedState=s,t.baseState=d,t.baseQueue=S,l.lastRenderedState=s}return a===null&&(l.lanes=0),[t.memoizedState,l.dispatch]}function gs(t){var e=Vt(),n=e.queue;if(n===null)throw Error(f(311));n.lastRenderedReducer=t;var l=n.dispatch,a=n.pending,s=e.memoizedState;if(a!==null){n.pending=null;var d=a=a.next;do s=t(s,d.action),d=d.next;while(d!==a);Se(s,e.memoizedState)||(qt=!0),e.memoizedState=s,e.baseQueue===null&&(e.baseState=s),n.lastRenderedState=s}return[s,l]}function L0(t,e,n){var l=mt,a=Vt(),s=xt;if(s){if(n===void 0)throw Error(f(407));n=n()}else n=e();var d=!Se((Rt||a).memoizedState,n);if(d&&(a.memoizedState=n,qt=!0),a=a.queue,ys(V0.bind(null,l,a,t),[t]),a.getSnapshot!==e||d||It!==null&&It.memoizedState.tag&1){if(l.flags|=2048,ia(9,{destroy:void 0},X0.bind(null,l,a,n,e),null),jt===null)throw Error(f(349));s||(cn&127)!==0||G0(l,e,n)}return n}function G0(t,e,n){t.flags|=16384,t={getSnapshot:e,value:n},e=mt.updateQueue,e===null?(e=ru(),mt.updateQueue=e,e.stores=[t]):(n=e.stores,n===null?e.stores=[t]:n.push(t))}function X0(t,e,n,l){e.value=n,e.getSnapshot=l,Z0(e)&&I0(t)}function V0(t,e,n){return n(function(){Z0(e)&&I0(t)})}function Z0(t){var e=t.getSnapshot;t=t.value;try{var n=e();return!Se(t,n)}catch{return!0}}function I0(t){var e=dl(t,2);e!==null&&ve(e,t,2)}function As(t){var e=fe();if(typeof t=="function"){var n=t;if(t=n(),xl){On(!0);try{n()}finally{On(!1)}}}return e.memoizedState=e.baseState=t,e.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:sn,lastRenderedState:t},e}function q0(t,e,n,l){return t.baseState=n,ms(t,Rt,typeof l=="function"?l:sn)}function rg(t,e,n,l,a){if(gu(t))throw Error(f(485));if(t=e.action,t!==null){var s={payload:a,action:t,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(d){s.listeners.push(d)}};M.T!==null?n(!0):s.isTransition=!1,l(s),n=e.pending,n===null?(s.next=e.pending=s,K0(e,s)):(s.next=n.next,e.pending=n.next=s)}}function K0(t,e){var n=e.action,l=e.payload,a=t.state;if(e.isTransition){var s=M.T,d={};M.T=d;try{var g=n(a,l),S=M.S;S!==null&&S(d,g),k0(t,e,g)}catch(U){vs(t,e,U)}finally{s!==null&&d.types!==null&&(s.types=d.types),M.T=s}}else try{s=n(a,l),k0(t,e,s)}catch(U){vs(t,e,U)}}function k0(t,e,n){n!==null&&typeof n=="object"&&typeof n.then=="function"?n.then(function(l){J0(t,e,l)},function(l){return vs(t,e,l)}):J0(t,e,n)}function J0(t,e,n){e.status="fulfilled",e.value=n,F0(e),t.state=n,e=t.pending,e!==null&&(n=e.next,n===e?t.pending=null:(n=n.next,e.next=n,K0(t,n)))}function vs(t,e,n){var l=t.pending;if(t.pending=null,l!==null){l=l.next;do e.status="rejected",e.reason=n,F0(e),e=e.next;while(e!==l)}t.action=null}function F0(t){t=t.listeners;for(var e=0;e<t.length;e++)(0,t[e])()}function W0(t,e){return e}function _0(t,e){if(xt){var n=jt.formState;if(n!==null){t:{var l=mt;if(xt){if(Nt){e:{for(var a=Nt,s=ze;a.nodeType!==8;){if(!s){a=null;break e}if(a=Le(a.nextSibling),a===null){a=null;break e}}s=a.data,a=s==="F!"||s==="F"?a:null}if(a){Nt=Le(a.nextSibling),l=a.data==="F!";break t}}jn(l)}l=!1}l&&(e=n[0])}}return n=fe(),n.memoizedState=n.baseState=e,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:W0,lastRenderedState:e},n.queue=l,n=vo.bind(null,mt,l),l.dispatch=n,l=As(!1),s=Ss.bind(null,mt,!1,l.queue),l=fe(),a={state:e,dispatch:null,action:t,pending:null},l.queue=a,n=rg.bind(null,mt,a,s,n),a.dispatch=n,l.memoizedState=t,[e,n,!1]}function P0(t){var e=Vt();return $0(e,Rt,t)}function $0(t,e,n){if(e=ms(t,e,W0)[0],t=du(sn)[0],typeof e=="object"&&e!==null&&typeof e.then=="function")try{var l=Fa(e)}catch(d){throw d===ta?nu:d}else l=e;e=Vt();var a=e.queue,s=a.dispatch;return n!==e.memoizedState&&(mt.flags|=2048,ia(9,{destroy:void 0},og.bind(null,a,n),null)),[l,s,t]}function og(t,e){t.action=e}function to(t){var e=Vt(),n=Rt;if(n!==null)return $0(e,n,t);Vt(),e=e.memoizedState,n=Vt();var l=n.queue.dispatch;return n.memoizedState=t,[e,l,!1]}function ia(t,e,n,l){return t={tag:t,create:n,deps:l,inst:e,next:null},e=mt.updateQueue,e===null&&(e=ru(),mt.updateQueue=e),n=e.lastEffect,n===null?e.lastEffect=t.next=t:(l=n.next,n.next=t,t.next=l,e.lastEffect=t),t}function eo(){return Vt().memoizedState}function hu(t,e,n,l){var a=fe();mt.flags|=t,a.memoizedState=ia(1|e,{destroy:void 0},n,l===void 0?null:l)}function mu(t,e,n,l){var a=Vt();l=l===void 0?null:l;var s=a.memoizedState.inst;Rt!==null&&l!==null&&ss(l,Rt.memoizedState.deps)?a.memoizedState=ia(e,s,n,l):(mt.flags|=t,a.memoizedState=ia(1|e,s,n,l))}function no(t,e){hu(8390656,8,t,e)}function ys(t,e){mu(2048,8,t,e)}function dg(t){mt.flags|=4;var e=mt.updateQueue;if(e===null)e=ru(),mt.updateQueue=e,e.events=[t];else{var n=e.events;n===null?e.events=[t]:n.push(t)}}function lo(t){var e=Vt().memoizedState;return dg({ref:e,nextImpl:t}),function(){if((Ct&2)!==0)throw Error(f(440));return e.impl.apply(void 0,arguments)}}function ao(t,e){return mu(4,2,t,e)}function io(t,e){return mu(4,4,t,e)}function uo(t,e){if(typeof e=="function"){t=t();var n=e(t);return function(){typeof n=="function"?n():e(null)}}if(e!=null)return t=t(),e.current=t,function(){e.current=null}}function co(t,e,n){n=n!=null?n.concat([t]):null,mu(4,4,uo.bind(null,e,t),n)}function Es(){}function so(t,e){var n=Vt();e=e===void 0?null:e;var l=n.memoizedState;return e!==null&&ss(e,l[1])?l[0]:(n.memoizedState=[t,e],t)}function fo(t,e){var n=Vt();e=e===void 0?null:e;var l=n.memoizedState;if(e!==null&&ss(e,l[1]))return l[0];if(l=t(),xl){On(!0);try{t()}finally{On(!1)}}return n.memoizedState=[l,e],l}function ps(t,e,n){return n===void 0||(cn&1073741824)!==0&&(Et&261930)===0?t.memoizedState=e:(t.memoizedState=n,t=od(),mt.lanes|=t,Gn|=t,n)}function ro(t,e,n,l){return Se(n,e)?n:na.current!==null?(t=ps(t,n,l),Se(t,e)||(qt=!0),t):(cn&42)===0||(cn&1073741824)!==0&&(Et&261930)===0?(qt=!0,t.memoizedState=n):(t=od(),mt.lanes|=t,Gn|=t,e)}function oo(t,e,n,l,a){var s=_.p;_.p=s!==0&&8>s?s:8;var d=M.T,g={};M.T=g,Ss(t,!1,e,n);try{var S=a(),U=M.S;if(U!==null&&U(g,S),S!==null&&typeof S=="object"&&typeof S.then=="function"){var Z=cg(S,l);Wa(t,e,Z,we(t))}else Wa(t,e,l,we(t))}catch(J){Wa(t,e,{then:function(){},status:"rejected",reason:J},we())}finally{_.p=s,d!==null&&g.types!==null&&(d.types=g.types),M.T=d}}function hg(){}function xs(t,e,n,l){if(t.tag!==5)throw Error(f(476));var a=ho(t).queue;oo(t,a,e,$,n===null?hg:function(){return mo(t),n(l)})}function ho(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:$,baseState:$,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:sn,lastRenderedState:$},next:null};var n={};return e.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:sn,lastRenderedState:n},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function mo(t){var e=ho(t);e.next===null&&(e=t.alternate.memoizedState),Wa(t,e.next.queue,{},we())}function bs(){return ne(hi)}function go(){return Vt().memoizedState}function Ao(){return Vt().memoizedState}function mg(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var n=we();t=Bn(n);var l=Un(e,t,n);l!==null&&(ve(l,e,n),qa(l,e,n)),e={cache:_c()},t.payload=e;return}e=e.return}}function gg(t,e,n){var l=we();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)?yo(e,n):(n=Gc(t,e,n,l),n!==null&&(ve(n,t,l),Eo(n,e,l)))}function vo(t,e,n){var l=we();Wa(t,e,n,l)}function Wa(t,e,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(gu(t))yo(e,a);else{var s=t.alternate;if(t.lanes===0&&(s===null||s.lanes===0)&&(s=e.lastRenderedReducer,s!==null))try{var d=e.lastRenderedState,g=s(d,n);if(a.hasEagerState=!0,a.eagerState=g,Se(g,d))return Fi(t,e,a,0),jt===null&&Ji(),!1}catch{}finally{}if(n=Gc(t,e,a,l),n!==null)return ve(n,t,l),Eo(n,e,l),!0}return!1}function Ss(t,e,n,l){if(l={lane:2,revertLane:ef(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(f(479))}else e=Gc(t,n,l,2),e!==null&&ve(e,t,2)}function gu(t){var e=t.alternate;return t===mt||e!==null&&e===mt}function yo(t,e){la=su=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function Eo(t,e,n){if((n&4194048)!==0){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,Sr(t,n)}}var _a={readContext:ne,use:ou,useCallback:Lt,useContext:Lt,useEffect:Lt,useImperativeHandle:Lt,useLayoutEffect:Lt,useInsertionEffect:Lt,useMemo:Lt,useReducer:Lt,useRef:Lt,useState:Lt,useDebugValue:Lt,useDeferredValue:Lt,useTransition:Lt,useSyncExternalStore:Lt,useId:Lt,useHostTransitionStatus:Lt,useFormState:Lt,useActionState:Lt,useOptimistic:Lt,useMemoCache:Lt,useCacheRefresh:Lt};_a.useEffectEvent=Lt;var po={readContext:ne,use:ou,useCallback:function(t,e){return fe().memoizedState=[t,e===void 0?null:e],t},useContext:ne,useEffect:no,useImperativeHandle:function(t,e,n){n=n!=null?n.concat([t]):null,hu(4194308,4,uo.bind(null,e,t),n)},useLayoutEffect:function(t,e){return hu(4194308,4,t,e)},useInsertionEffect:function(t,e){hu(4,2,t,e)},useMemo:function(t,e){var n=fe();e=e===void 0?null:e;var l=t();if(xl){On(!0);try{t()}finally{On(!1)}}return n.memoizedState=[l,e],l},useReducer:function(t,e,n){var l=fe();if(n!==void 0){var a=n(e);if(xl){On(!0);try{n(e)}finally{On(!1)}}}else a=e;return l.memoizedState=l.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},l.queue=t,t=t.dispatch=gg.bind(null,mt,t),[l.memoizedState,t]},useRef:function(t){var e=fe();return t={current:t},e.memoizedState=t},useState:function(t){t=As(t);var e=t.queue,n=vo.bind(null,mt,e);return e.dispatch=n,[t.memoizedState,n]},useDebugValue:Es,useDeferredValue:function(t,e){var n=fe();return ps(n,t,e)},useTransition:function(){var t=As(!1);return t=oo.bind(null,mt,t.queue,!0,!1),fe().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,n){var l=mt,a=fe();if(xt){if(n===void 0)throw Error(f(407));n=n()}else{if(n=e(),jt===null)throw Error(f(349));(Et&127)!==0||G0(l,e,n)}a.memoizedState=n;var s={value:n,getSnapshot:e};return a.queue=s,no(V0.bind(null,l,s,t),[t]),l.flags|=2048,ia(9,{destroy:void 0},X0.bind(null,l,s,n,e),null),n},useId:function(){var t=fe(),e=jt.identifierPrefix;if(xt){var n=Fe,l=Je;n=(l&~(1<<32-be(l)-1)).toString(32)+n,e="_"+e+"R_"+n,n=fu++,0<n&&(e+="H"+n.toString(32)),e+="_"}else n=sg++,e="_"+e+"r_"+n.toString(32)+"_";return t.memoizedState=e},useHostTransitionStatus:bs,useFormState:_0,useActionState:_0,useOptimistic:function(t){var e=fe();e.memoizedState=e.baseState=t;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return e.queue=n,e=Ss.bind(null,mt,!0,n),n.dispatch=e,[t,e]},useMemoCache:hs,useCacheRefresh:function(){return fe().memoizedState=mg.bind(null,mt)},useEffectEvent:function(t){var e=fe(),n={impl:t};return e.memoizedState=n,function(){if((Ct&2)!==0)throw Error(f(440));return n.impl.apply(void 0,arguments)}}},Ts={readContext:ne,use:ou,useCallback:so,useContext:ne,useEffect:ys,useImperativeHandle:co,useInsertionEffect:ao,useLayoutEffect:io,useMemo:fo,useReducer:du,useRef:eo,useState:function(){return du(sn)},useDebugValue:Es,useDeferredValue:function(t,e){var n=Vt();return ro(n,Rt.memoizedState,t,e)},useTransition:function(){var t=du(sn)[0],e=Vt().memoizedState;return[typeof t=="boolean"?t:Fa(t),e]},useSyncExternalStore:L0,useId:go,useHostTransitionStatus:bs,useFormState:P0,useActionState:P0,useOptimistic:function(t,e){var n=Vt();return q0(n,Rt,t,e)},useMemoCache:hs,useCacheRefresh:Ao};Ts.useEffectEvent=lo;var xo={readContext:ne,use:ou,useCallback:so,useContext:ne,useEffect:ys,useImperativeHandle:co,useInsertionEffect:ao,useLayoutEffect:io,useMemo:fo,useReducer:gs,useRef:eo,useState:function(){return gs(sn)},useDebugValue:Es,useDeferredValue:function(t,e){var n=Vt();return Rt===null?ps(n,t,e):ro(n,Rt.memoizedState,t,e)},useTransition:function(){var t=gs(sn)[0],e=Vt().memoizedState;return[typeof t=="boolean"?t:Fa(t),e]},useSyncExternalStore:L0,useId:go,useHostTransitionStatus:bs,useFormState:to,useActionState:to,useOptimistic:function(t,e){var n=Vt();return Rt!==null?q0(n,Rt,t,e):(n.baseState=t,[t,n.queue.dispatch])},useMemoCache:hs,useCacheRefresh:Ao};xo.useEffectEvent=lo;function Cs(t,e,n,l){e=t.memoizedState,n=n(l,e),n=n==null?e:T({},e,n),t.memoizedState=n,t.lanes===0&&(t.updateQueue.baseState=n)}var Os={enqueueSetState:function(t,e,n){t=t._reactInternals;var l=we(),a=Bn(l);a.payload=e,n!=null&&(a.callback=n),e=Un(t,a,l),e!==null&&(ve(e,t,l),qa(e,t,l))},enqueueReplaceState:function(t,e,n){t=t._reactInternals;var l=we(),a=Bn(l);a.tag=1,a.payload=e,n!=null&&(a.callback=n),e=Un(t,a,l),e!==null&&(ve(e,t,l),qa(e,t,l))},enqueueForceUpdate:function(t,e){t=t._reactInternals;var n=we(),l=Bn(n);l.tag=2,e!=null&&(l.callback=e),e=Un(t,l,n),e!==null&&(ve(e,t,n),qa(e,t,n))}};function bo(t,e,n,l,a,s,d){return t=t.stateNode,typeof t.shouldComponentUpdate=="function"?t.shouldComponentUpdate(l,s,d):e.prototype&&e.prototype.isPureReactComponent?!za(n,l)||!za(a,s):!0}function So(t,e,n,l){t=e.state,typeof e.componentWillReceiveProps=="function"&&e.componentWillReceiveProps(n,l),typeof e.UNSAFE_componentWillReceiveProps=="function"&&e.UNSAFE_componentWillReceiveProps(n,l),e.state!==t&&Os.enqueueReplaceState(e,e.state,null)}function bl(t,e){var n=e;if("ref"in e){n={};for(var l in e)l!=="ref"&&(n[l]=e[l])}if(t=t.defaultProps){n===e&&(n=T({},n));for(var a in t)n[a]===void 0&&(n[a]=t[a])}return n}function To(t){ki(t)}function Co(t){console.error(t)}function Oo(t){ki(t)}function Au(t,e){try{var n=t.onUncaughtError;n(e.value,{componentStack:e.stack})}catch(l){setTimeout(function(){throw l})}}function Do(t,e,n){try{var l=t.onCaughtError;l(n.value,{componentStack:n.stack,errorBoundary:e.tag===1?e.stateNode:null})}catch(a){setTimeout(function(){throw a})}}function Ds(t,e,n){return n=Bn(n),n.tag=3,n.payload={element:null},n.callback=function(){Au(t,e)},n}function Ro(t){return t=Bn(t),t.tag=3,t}function wo(t,e,n,l){var a=n.type.getDerivedStateFromError;if(typeof a=="function"){var s=l.value;t.payload=function(){return a(s)},t.callback=function(){Do(e,n,l)}}var d=n.stateNode;d!==null&&typeof d.componentDidCatch=="function"&&(t.callback=function(){Do(e,n,l),typeof a!="function"&&(Xn===null?Xn=new Set([this]):Xn.add(this));var g=l.stack;this.componentDidCatch(l.value,{componentStack:g!==null?g:""})})}function Ag(t,e,n,l,a){if(n.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){if(e=n.alternate,e!==null&&_l(e,n,a,!0),n=Ce.current,n!==null){switch(n.tag){case 31:case 13:return Ye===null?Ru():n.alternate===null&&Gt===0&&(Gt=3),n.flags&=-257,n.flags|=65536,n.lanes=a,l===lu?n.flags|=16384:(e=n.updateQueue,e===null?n.updateQueue=new Set([l]):e.add(l),Ps(t,l,a)),!1;case 22:return n.flags|=65536,l===lu?n.flags|=16384:(e=n.updateQueue,e===null?(e={transitions:null,markerInstances:null,retryQueue:new Set([l])},n.updateQueue=e):(n=e.retryQueue,n===null?e.retryQueue=new Set([l]):n.add(l)),Ps(t,l,a)),!1}throw Error(f(435,n.tag))}return Ps(t,l,a),Ru(),!1}if(xt)return e=Ce.current,e!==null?((e.flags&65536)===0&&(e.flags|=256),e.flags|=65536,e.lanes=a,l!==Kc&&(t=Error(f(422),{cause:l}),Ga(Be(t,n)))):(l!==Kc&&(e=Error(f(423),{cause:l}),Ga(Be(e,n))),t=t.current.alternate,t.flags|=65536,a&=-a,t.lanes|=a,l=Be(l,n),a=Ds(t.stateNode,l,a),ls(t,a),Gt!==4&&(Gt=2)),!1;var s=Error(f(520),{cause:l});if(s=Be(s,n),ii===null?ii=[s]:ii.push(s),Gt!==4&&(Gt=2),e===null)return!0;l=Be(l,n),n=e;do{switch(n.tag){case 3:return n.flags|=65536,t=a&-a,n.lanes|=t,t=Ds(n.stateNode,l,t),ls(n,t),!1;case 1:if(e=n.type,s=n.stateNode,(n.flags&128)===0&&(typeof e.getDerivedStateFromError=="function"||s!==null&&typeof s.componentDidCatch=="function"&&(Xn===null||!Xn.has(s))))return n.flags|=65536,a&=-a,n.lanes|=a,a=Ro(a),wo(a,t,n,l),ls(n,a),!1}n=n.return}while(n!==null);return!1}var Rs=Error(f(461)),qt=!1;function le(t,e,n,l){e.child=t===null?N0(e,null,n,l):pl(e,t.child,n,l)}function Mo(t,e,n,l,a){n=n.render;var s=e.ref;if("ref"in l){var d={};for(var g in l)g!=="ref"&&(d[g]=l[g])}else d=l;return Al(e),l=fs(t,e,n,d,s,a),g=rs(),t!==null&&!qt?(os(t,e,a),fn(t,e,a)):(xt&&g&&Ic(e),e.flags|=1,le(t,e,l,a),e.child)}function jo(t,e,n,l,a){if(t===null){var s=n.type;return typeof s=="function"&&!Xc(s)&&s.defaultProps===void 0&&n.compare===null?(e.tag=15,e.type=s,No(t,e,s,l,a)):(t=_i(n.type,null,l,e,e.mode,a),t.ref=e.ref,t.return=e,e.child=t)}if(s=t.child,!Qs(t,a)){var d=s.memoizedProps;if(n=n.compare,n=n!==null?n:za,n(d,l)&&t.ref===e.ref)return fn(t,e,a)}return e.flags|=1,t=nn(s,l),t.ref=e.ref,t.return=e,e.child=t}function No(t,e,n,l,a){if(t!==null){var s=t.memoizedProps;if(za(s,l)&&t.ref===e.ref)if(qt=!1,e.pendingProps=l=s,Qs(t,a))(t.flags&131072)!==0&&(qt=!0);else return e.lanes=t.lanes,fn(t,e,a)}return ws(t,e,n,l,a)}function Ho(t,e,n,l){var a=l.children,s=t!==null?t.memoizedState:null;if(t===null&&e.stateNode===null&&(e.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),l.mode==="hidden"){if((e.flags&128)!==0){if(s=s!==null?s.baseLanes|n:n,t!==null){for(l=e.child=t.child,a=0;l!==null;)a=a|l.lanes|l.childLanes,l=l.sibling;l=a&~s}else l=0,e.child=null;return Bo(t,e,s,n,l)}if((n&536870912)!==0)e.memoizedState={baseLanes:0,cachePool:null},t!==null&&eu(e,s!==null?s.cachePool:null),s!==null?U0(e,s):is(),Q0(e);else return l=e.lanes=536870912,Bo(t,e,s!==null?s.baseLanes|n:n,n,l)}else s!==null?(eu(e,s.cachePool),U0(e,s),zn(),e.memoizedState=null):(t!==null&&eu(e,null),is(),zn());return le(t,e,a,n),e.child}function Pa(t,e){return t!==null&&t.tag===22||e.stateNode!==null||(e.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),e.sibling}function Bo(t,e,n,l,a){var s=$c();return s=s===null?null:{parent:Zt._currentValue,pool:s},e.memoizedState={baseLanes:n,cachePool:s},t!==null&&eu(e,null),is(),Q0(e),t!==null&&_l(t,e,l,!0),e.childLanes=a,null}function vu(t,e){return e=Eu({mode:e.mode,children:e.children},t.mode),e.ref=t.ref,t.child=e,e.return=t,e}function Uo(t,e,n){return pl(e,t.child,null,n),t=vu(e,e.pendingProps),t.flags|=2,Oe(e),e.memoizedState=null,t}function vg(t,e,n){var l=e.pendingProps,a=(e.flags&128)!==0;if(e.flags&=-129,t===null){if(xt){if(l.mode==="hidden")return t=vu(e,l),e.lanes=536870912,Pa(null,t);if(cs(e),(t=Nt)?(t=kd(t,ze),t=t!==null&&t.data==="&"?t:null,t!==null&&(e.memoizedState={dehydrated:t,treeContext:wn!==null?{id:Je,overflow:Fe}:null,retryLane:536870912,hydrationErrors:null},n=v0(t),n.return=e,e.child=n,ee=e,Nt=null)):t=null,t===null)throw jn(e);return e.lanes=536870912,null}return vu(e,l)}var s=t.memoizedState;if(s!==null){var d=s.dehydrated;if(cs(e),a)if(e.flags&256)e.flags&=-257,e=Uo(t,e,n);else if(e.memoizedState!==null)e.child=t.child,e.flags|=128,e=null;else throw Error(f(558));else if(qt||_l(t,e,n,!1),a=(n&t.childLanes)!==0,qt||a){if(l=jt,l!==null&&(d=Tr(l,n),d!==0&&d!==s.retryLane))throw s.retryLane=d,dl(t,d),ve(l,t,d),Rs;Ru(),e=Uo(t,e,n)}else t=s.treeContext,Nt=Le(d.nextSibling),ee=e,xt=!0,Mn=null,ze=!1,t!==null&&p0(e,t),e=vu(e,l),e.flags|=4096;return e}return t=nn(t.child,{mode:l.mode,children:l.children}),t.ref=e.ref,e.child=t,t.return=e,t}function yu(t,e){var n=e.ref;if(n===null)t!==null&&t.ref!==null&&(e.flags|=4194816);else{if(typeof n!="function"&&typeof n!="object")throw Error(f(284));(t===null||t.ref!==n)&&(e.flags|=4194816)}}function ws(t,e,n,l,a){return Al(e),n=fs(t,e,n,l,void 0,a),l=rs(),t!==null&&!qt?(os(t,e,a),fn(t,e,a)):(xt&&l&&Ic(e),e.flags|=1,le(t,e,n,a),e.child)}function Qo(t,e,n,l,a,s){return Al(e),e.updateQueue=null,n=Y0(e,l,n,a),z0(t),l=rs(),t!==null&&!qt?(os(t,e,s),fn(t,e,s)):(xt&&l&&Ic(e),e.flags|=1,le(t,e,n,s),e.child)}function zo(t,e,n,l,a){if(Al(e),e.stateNode===null){var s=kl,d=n.contextType;typeof d=="object"&&d!==null&&(s=ne(d)),s=new n(l,s),e.memoizedState=s.state!==null&&s.state!==void 0?s.state:null,s.updater=Os,e.stateNode=s,s._reactInternals=e,s=e.stateNode,s.props=l,s.state=e.memoizedState,s.refs={},es(e),d=n.contextType,s.context=typeof d=="object"&&d!==null?ne(d):kl,s.state=e.memoizedState,d=n.getDerivedStateFromProps,typeof d=="function"&&(Cs(e,n,d,l),s.state=e.memoizedState),typeof n.getDerivedStateFromProps=="function"||typeof s.getSnapshotBeforeUpdate=="function"||typeof s.UNSAFE_componentWillMount!="function"&&typeof s.componentWillMount!="function"||(d=s.state,typeof s.componentWillMount=="function"&&s.componentWillMount(),typeof s.UNSAFE_componentWillMount=="function"&&s.UNSAFE_componentWillMount(),d!==s.state&&Os.enqueueReplaceState(s,s.state,null),ka(e,l,s,a),Ka(),s.state=e.memoizedState),typeof s.componentDidMount=="function"&&(e.flags|=4194308),l=!0}else if(t===null){s=e.stateNode;var g=e.memoizedProps,S=bl(n,g);s.props=S;var U=s.context,Z=n.contextType;d=kl,typeof Z=="object"&&Z!==null&&(d=ne(Z));var J=n.getDerivedStateFromProps;Z=typeof J=="function"||typeof s.getSnapshotBeforeUpdate=="function",g=e.pendingProps!==g,Z||typeof s.UNSAFE_componentWillReceiveProps!="function"&&typeof s.componentWillReceiveProps!="function"||(g||U!==d)&&So(e,s,l,d),Hn=!1;var Q=e.memoizedState;s.state=Q,ka(e,l,s,a),Ka(),U=e.memoizedState,g||Q!==U||Hn?(typeof J=="function"&&(Cs(e,n,J,l),U=e.memoizedState),(S=Hn||bo(e,n,S,l,Q,U,d))?(Z||typeof s.UNSAFE_componentWillMount!="function"&&typeof s.componentWillMount!="function"||(typeof s.componentWillMount=="function"&&s.componentWillMount(),typeof s.UNSAFE_componentWillMount=="function"&&s.UNSAFE_componentWillMount()),typeof s.componentDidMount=="function"&&(e.flags|=4194308)):(typeof s.componentDidMount=="function"&&(e.flags|=4194308),e.memoizedProps=l,e.memoizedState=U),s.props=l,s.state=U,s.context=d,l=S):(typeof s.componentDidMount=="function"&&(e.flags|=4194308),l=!1)}else{s=e.stateNode,ns(t,e),d=e.memoizedProps,Z=bl(n,d),s.props=Z,J=e.pendingProps,Q=s.context,U=n.contextType,S=kl,typeof U=="object"&&U!==null&&(S=ne(U)),g=n.getDerivedStateFromProps,(U=typeof g=="function"||typeof s.getSnapshotBeforeUpdate=="function")||typeof s.UNSAFE_componentWillReceiveProps!="function"&&typeof s.componentWillReceiveProps!="function"||(d!==J||Q!==S)&&So(e,s,l,S),Hn=!1,Q=e.memoizedState,s.state=Q,ka(e,l,s,a),Ka();var G=e.memoizedState;d!==J||Q!==G||Hn||t!==null&&t.dependencies!==null&&$i(t.dependencies)?(typeof g=="function"&&(Cs(e,n,g,l),G=e.memoizedState),(Z=Hn||bo(e,n,Z,l,Q,G,S)||t!==null&&t.dependencies!==null&&$i(t.dependencies))?(U||typeof s.UNSAFE_componentWillUpdate!="function"&&typeof s.componentWillUpdate!="function"||(typeof s.componentWillUpdate=="function"&&s.componentWillUpdate(l,G,S),typeof s.UNSAFE_componentWillUpdate=="function"&&s.UNSAFE_componentWillUpdate(l,G,S)),typeof s.componentDidUpdate=="function"&&(e.flags|=4),typeof s.getSnapshotBeforeUpdate=="function"&&(e.flags|=1024)):(typeof s.componentDidUpdate!="function"||d===t.memoizedProps&&Q===t.memoizedState||(e.flags|=4),typeof s.getSnapshotBeforeUpdate!="function"||d===t.memoizedProps&&Q===t.memoizedState||(e.flags|=1024),e.memoizedProps=l,e.memoizedState=G),s.props=l,s.state=G,s.context=S,l=Z):(typeof s.componentDidUpdate!="function"||d===t.memoizedProps&&Q===t.memoizedState||(e.flags|=4),typeof s.getSnapshotBeforeUpdate!="function"||d===t.memoizedProps&&Q===t.memoizedState||(e.flags|=1024),l=!1)}return s=l,yu(t,e),l=(e.flags&128)!==0,s||l?(s=e.stateNode,n=l&&typeof n.getDerivedStateFromError!="function"?null:s.render(),e.flags|=1,t!==null&&l?(e.child=pl(e,t.child,null,a),e.child=pl(e,null,n,a)):le(t,e,n,a),e.memoizedState=s.state,t=e.child):t=fn(t,e,a),t}function Yo(t,e,n,l){return ml(),e.flags|=256,le(t,e,n,l),e.child}var Ms={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function js(t){return{baseLanes:t,cachePool:O0()}}function Ns(t,e,n){return t=t!==null?t.childLanes&~n:0,e&&(t|=Re),t}function Lo(t,e,n){var l=e.pendingProps,a=!1,s=(e.flags&128)!==0,d;if((d=s)||(d=t!==null&&t.memoizedState===null?!1:(Xt.current&2)!==0),d&&(a=!0,e.flags&=-129),d=(e.flags&32)!==0,e.flags&=-33,t===null){if(xt){if(a?Qn(e):zn(),(t=Nt)?(t=kd(t,ze),t=t!==null&&t.data!=="&"?t:null,t!==null&&(e.memoizedState={dehydrated:t,treeContext:wn!==null?{id:Je,overflow:Fe}:null,retryLane:536870912,hydrationErrors:null},n=v0(t),n.return=e,e.child=n,ee=e,Nt=null)):t=null,t===null)throw jn(e);return gf(t)?e.lanes=32:e.lanes=536870912,null}var g=l.children;return l=l.fallback,a?(zn(),a=e.mode,g=Eu({mode:"hidden",children:g},a),l=hl(l,a,n,null),g.return=e,l.return=e,g.sibling=l,e.child=g,l=e.child,l.memoizedState=js(n),l.childLanes=Ns(t,d,n),e.memoizedState=Ms,Pa(null,l)):(Qn(e),Hs(e,g))}var S=t.memoizedState;if(S!==null&&(g=S.dehydrated,g!==null)){if(s)e.flags&256?(Qn(e),e.flags&=-257,e=Bs(t,e,n)):e.memoizedState!==null?(zn(),e.child=t.child,e.flags|=128,e=null):(zn(),g=l.fallback,a=e.mode,l=Eu({mode:"visible",children:l.children},a),g=hl(g,a,n,null),g.flags|=2,l.return=e,g.return=e,l.sibling=g,e.child=l,pl(e,t.child,null,n),l=e.child,l.memoizedState=js(n),l.childLanes=Ns(t,d,n),e.memoizedState=Ms,e=Pa(null,l));else if(Qn(e),gf(g)){if(d=g.nextSibling&&g.nextSibling.dataset,d)var U=d.dgst;d=U,l=Error(f(419)),l.stack="",l.digest=d,Ga({value:l,source:null,stack:null}),e=Bs(t,e,n)}else if(qt||_l(t,e,n,!1),d=(n&t.childLanes)!==0,qt||d){if(d=jt,d!==null&&(l=Tr(d,n),l!==0&&l!==S.retryLane))throw S.retryLane=l,dl(t,l),ve(d,t,l),Rs;mf(g)||Ru(),e=Bs(t,e,n)}else mf(g)?(e.flags|=192,e.child=t.child,e=null):(t=S.treeContext,Nt=Le(g.nextSibling),ee=e,xt=!0,Mn=null,ze=!1,t!==null&&p0(e,t),e=Hs(e,l.children),e.flags|=4096);return e}return a?(zn(),g=l.fallback,a=e.mode,S=t.child,U=S.sibling,l=nn(S,{mode:"hidden",children:l.children}),l.subtreeFlags=S.subtreeFlags&65011712,U!==null?g=nn(U,g):(g=hl(g,a,n,null),g.flags|=2),g.return=e,l.return=e,l.sibling=g,e.child=l,Pa(null,l),l=e.child,g=t.child.memoizedState,g===null?g=js(n):(a=g.cachePool,a!==null?(S=Zt._currentValue,a=a.parent!==S?{parent:S,pool:S}:a):a=O0(),g={baseLanes:g.baseLanes|n,cachePool:a}),l.memoizedState=g,l.childLanes=Ns(t,d,n),e.memoizedState=Ms,Pa(t.child,l)):(Qn(e),n=t.child,t=n.sibling,n=nn(n,{mode:"visible",children:l.children}),n.return=e,n.sibling=null,t!==null&&(d=e.deletions,d===null?(e.deletions=[t],e.flags|=16):d.push(t)),e.child=n,e.memoizedState=null,n)}function Hs(t,e){return e=Eu({mode:"visible",children:e},t.mode),e.return=t,t.child=e}function Eu(t,e){return t=Te(22,t,null,e),t.lanes=0,t}function Bs(t,e,n){return pl(e,t.child,null,n),t=Hs(e,e.pendingProps.children),t.flags|=2,e.memoizedState=null,t}function Go(t,e,n){t.lanes|=e;var l=t.alternate;l!==null&&(l.lanes|=e),Fc(t.return,e,n)}function Us(t,e,n,l,a,s){var d=t.memoizedState;d===null?t.memoizedState={isBackwards:e,rendering:null,renderingStartTime:0,last:l,tail:n,tailMode:a,treeForkCount:s}:(d.isBackwards=e,d.rendering=null,d.renderingStartTime=0,d.last=l,d.tail=n,d.tailMode=a,d.treeForkCount=s)}function Xo(t,e,n){var l=e.pendingProps,a=l.revealOrder,s=l.tail;l=l.children;var d=Xt.current,g=(d&2)!==0;if(g?(d=d&1|2,e.flags|=128):d&=1,W(Xt,d),le(t,e,l,n),l=xt?La:0,!g&&t!==null&&(t.flags&128)!==0)t:for(t=e.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&Go(t,n,e);else if(t.tag===19)Go(t,n,e);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break t;for(;t.sibling===null;){if(t.return===null||t.return===e)break t;t=t.return}t.sibling.return=t.return,t=t.sibling}switch(a){case"forwards":for(n=e.child,a=null;n!==null;)t=n.alternate,t!==null&&cu(t)===null&&(a=n),n=n.sibling;n=a,n===null?(a=e.child,e.child=null):(a=n.sibling,n.sibling=null),Us(e,!1,a,n,s,l);break;case"backwards":case"unstable_legacy-backwards":for(n=null,a=e.child,e.child=null;a!==null;){if(t=a.alternate,t!==null&&cu(t)===null){e.child=a;break}t=a.sibling,a.sibling=n,n=a,a=t}Us(e,!0,n,null,s,l);break;case"together":Us(e,!1,null,null,void 0,l);break;default:e.memoizedState=null}return e.child}function fn(t,e,n){if(t!==null&&(e.dependencies=t.dependencies),Gn|=e.lanes,(n&e.childLanes)===0)if(t!==null){if(_l(t,e,n,!1),(n&e.childLanes)===0)return null}else return null;if(t!==null&&e.child!==t.child)throw Error(f(153));if(e.child!==null){for(t=e.child,n=nn(t,t.pendingProps),e.child=n,n.return=e;t.sibling!==null;)t=t.sibling,n=n.sibling=nn(t,t.pendingProps),n.return=e;n.sibling=null}return e.child}function Qs(t,e){return(t.lanes&e)!==0?!0:(t=t.dependencies,!!(t!==null&&$i(t)))}function yg(t,e,n){switch(e.tag){case 3:Jt(e,e.stateNode.containerInfo),Nn(e,Zt,t.memoizedState.cache),ml();break;case 27:case 5:Sn(e);break;case 4:Jt(e,e.stateNode.containerInfo);break;case 10:Nn(e,e.type,e.memoizedProps.value);break;case 31:if(e.memoizedState!==null)return e.flags|=128,cs(e),null;break;case 13:var l=e.memoizedState;if(l!==null)return l.dehydrated!==null?(Qn(e),e.flags|=128,null):(n&e.child.childLanes)!==0?Lo(t,e,n):(Qn(e),t=fn(t,e,n),t!==null?t.sibling:null);Qn(e);break;case 19:var a=(t.flags&128)!==0;if(l=(n&e.childLanes)!==0,l||(_l(t,e,n,!1),l=(n&e.childLanes)!==0),a){if(l)return Xo(t,e,n);e.flags|=128}if(a=e.memoizedState,a!==null&&(a.rendering=null,a.tail=null,a.lastEffect=null),W(Xt,Xt.current),l)break;return null;case 22:return e.lanes=0,Ho(t,e,n,e.pendingProps);case 24:Nn(e,Zt,t.memoizedState.cache)}return fn(t,e,n)}function Vo(t,e,n){if(t!==null)if(t.memoizedProps!==e.pendingProps)qt=!0;else{if(!Qs(t,n)&&(e.flags&128)===0)return qt=!1,yg(t,e,n);qt=(t.flags&131072)!==0}else qt=!1,xt&&(e.flags&1048576)!==0&&E0(e,La,e.index);switch(e.lanes=0,e.tag){case 16:t:{var l=e.pendingProps;if(t=yl(e.elementType),e.type=t,typeof t=="function")Xc(t)?(l=bl(t,l),e.tag=1,e=zo(null,e,t,l,n)):(e.tag=0,e=ws(null,e,t,l,n));else{if(t!=null){var a=t.$$typeof;if(a===V){e.tag=11,e=Mo(null,e,t,l,n);break t}else if(a===j){e.tag=14,e=jo(null,e,t,l,n);break t}}throw e=st(t)||t,Error(f(306,e,""))}}return e;case 0:return ws(t,e,e.type,e.pendingProps,n);case 1:return l=e.type,a=bl(l,e.pendingProps),zo(t,e,l,a,n);case 3:t:{if(Jt(e,e.stateNode.containerInfo),t===null)throw Error(f(387));l=e.pendingProps;var s=e.memoizedState;a=s.element,ns(t,e),ka(e,l,null,n);var d=e.memoizedState;if(l=d.cache,Nn(e,Zt,l),l!==s.cache&&Wc(e,[Zt],n,!0),Ka(),l=d.element,s.isDehydrated)if(s={element:l,isDehydrated:!1,cache:d.cache},e.updateQueue.baseState=s,e.memoizedState=s,e.flags&256){e=Yo(t,e,l,n);break t}else if(l!==a){a=Be(Error(f(424)),e),Ga(a),e=Yo(t,e,l,n);break t}else{switch(t=e.stateNode.containerInfo,t.nodeType){case 9:t=t.body;break;default:t=t.nodeName==="HTML"?t.ownerDocument.body:t}for(Nt=Le(t.firstChild),ee=e,xt=!0,Mn=null,ze=!0,n=N0(e,null,l,n),e.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(ml(),l===a){e=fn(t,e,n);break t}le(t,e,l,n)}e=e.child}return e;case 26:return yu(t,e),t===null?(n=$d(e.type,null,e.pendingProps,null))?e.memoizedState=n:xt||(n=e.type,t=e.pendingProps,l=Uu(ot.current).createElement(n),l[te]=e,l[oe]=t,ae(l,n,t),Ft(l),e.stateNode=l):e.memoizedState=$d(e.type,t.memoizedProps,e.pendingProps,t.memoizedState),null;case 27:return Sn(e),t===null&&xt&&(l=e.stateNode=Wd(e.type,e.pendingProps,ot.current),ee=e,ze=!0,a=Nt,qn(e.type)?(Af=a,Nt=Le(l.firstChild)):Nt=a),le(t,e,e.pendingProps.children,n),yu(t,e),t===null&&(e.flags|=4194304),e.child;case 5:return t===null&&xt&&((a=l=Nt)&&(l=Jg(l,e.type,e.pendingProps,ze),l!==null?(e.stateNode=l,ee=e,Nt=Le(l.firstChild),ze=!1,a=!0):a=!1),a||jn(e)),Sn(e),a=e.type,s=e.pendingProps,d=t!==null?t.memoizedProps:null,l=s.children,of(a,s)?l=null:d!==null&&of(a,d)&&(e.flags|=32),e.memoizedState!==null&&(a=fs(t,e,fg,null,null,n),hi._currentValue=a),yu(t,e),le(t,e,l,n),e.child;case 6:return t===null&&xt&&((t=n=Nt)&&(n=Fg(n,e.pendingProps,ze),n!==null?(e.stateNode=n,ee=e,Nt=null,t=!0):t=!1),t||jn(e)),null;case 13:return Lo(t,e,n);case 4:return Jt(e,e.stateNode.containerInfo),l=e.pendingProps,t===null?e.child=pl(e,null,l,n):le(t,e,l,n),e.child;case 11:return Mo(t,e,e.type,e.pendingProps,n);case 7:return le(t,e,e.pendingProps,n),e.child;case 8:return le(t,e,e.pendingProps.children,n),e.child;case 12:return le(t,e,e.pendingProps.children,n),e.child;case 10:return l=e.pendingProps,Nn(e,e.type,l.value),le(t,e,l.children,n),e.child;case 9:return a=e.type._context,l=e.pendingProps.children,Al(e),a=ne(a),l=l(a),e.flags|=1,le(t,e,l,n),e.child;case 14:return jo(t,e,e.type,e.pendingProps,n);case 15:return No(t,e,e.type,e.pendingProps,n);case 19:return Xo(t,e,n);case 31:return vg(t,e,n);case 22:return Ho(t,e,n,e.pendingProps);case 24:return Al(e),l=ne(Zt),t===null?(a=$c(),a===null&&(a=jt,s=_c(),a.pooledCache=s,s.refCount++,s!==null&&(a.pooledCacheLanes|=n),a=s),e.memoizedState={parent:l,cache:a},es(e),Nn(e,Zt,a)):((t.lanes&n)!==0&&(ns(t,e),ka(e,null,null,n),Ka()),a=t.memoizedState,s=e.memoizedState,a.parent!==l?(a={parent:l,cache:l},e.memoizedState=a,e.lanes===0&&(e.memoizedState=e.updateQueue.baseState=a),Nn(e,Zt,l)):(l=s.cache,Nn(e,Zt,l),l!==a.cache&&Wc(e,[Zt],n,!0))),le(t,e,e.pendingProps.children,n),e.child;case 29:throw e.pendingProps}throw Error(f(156,e.tag))}function rn(t){t.flags|=4}function zs(t,e,n,l,a){if((e=(t.mode&32)!==0)&&(e=!1),e){if(t.flags|=16777216,(a&335544128)===a)if(t.stateNode.complete)t.flags|=8192;else if(gd())t.flags|=8192;else throw El=lu,ts}else t.flags&=-16777217}function Zo(t,e){if(e.type!=="stylesheet"||(e.state.loading&4)!==0)t.flags&=-16777217;else if(t.flags|=16777216,!a1(e))if(gd())t.flags|=8192;else throw El=lu,ts}function pu(t,e){e!==null&&(t.flags|=4),t.flags&16384&&(e=t.tag!==22?xr():536870912,t.lanes|=e,fa|=e)}function $a(t,e){if(!xt)switch(t.tailMode){case"hidden":e=t.tail;for(var n=null;e!==null;)e.alternate!==null&&(n=e),e=e.sibling;n===null?t.tail=null:n.sibling=null;break;case"collapsed":n=t.tail;for(var l=null;n!==null;)n.alternate!==null&&(l=n),n=n.sibling;l===null?e||t.tail===null?t.tail=null:t.tail.sibling=null:l.sibling=null}}function Ht(t){var e=t.alternate!==null&&t.alternate.child===t.child,n=0,l=0;if(e)for(var a=t.child;a!==null;)n|=a.lanes|a.childLanes,l|=a.subtreeFlags&65011712,l|=a.flags&65011712,a.return=t,a=a.sibling;else for(a=t.child;a!==null;)n|=a.lanes|a.childLanes,l|=a.subtreeFlags,l|=a.flags,a.return=t,a=a.sibling;return t.subtreeFlags|=l,t.childLanes=n,e}function Eg(t,e,n){var l=e.pendingProps;switch(qc(e),e.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ht(e),null;case 1:return Ht(e),null;case 3:return n=e.stateNode,l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),un(Zt),Qt(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(t===null||t.child===null)&&(Wl(e)?rn(e):t===null||t.memoizedState.isDehydrated&&(e.flags&256)===0||(e.flags|=1024,kc())),Ht(e),null;case 26:var a=e.type,s=e.memoizedState;return t===null?(rn(e),s!==null?(Ht(e),Zo(e,s)):(Ht(e),zs(e,a,null,l,n))):s?s!==t.memoizedState?(rn(e),Ht(e),Zo(e,s)):(Ht(e),e.flags&=-16777217):(t=t.memoizedProps,t!==l&&rn(e),Ht(e),zs(e,a,t,l,n)),null;case 27:if(ul(e),n=ot.current,a=e.type,t!==null&&e.stateNode!=null)t.memoizedProps!==l&&rn(e);else{if(!l){if(e.stateNode===null)throw Error(f(166));return Ht(e),null}t=et.current,Wl(e)?x0(e):(t=Wd(a,l,n),e.stateNode=t,rn(e))}return Ht(e),null;case 5:if(ul(e),a=e.type,t!==null&&e.stateNode!=null)t.memoizedProps!==l&&rn(e);else{if(!l){if(e.stateNode===null)throw Error(f(166));return Ht(e),null}if(s=et.current,Wl(e))x0(e);else{var d=Uu(ot.current);switch(s){case 1:s=d.createElementNS("http://www.w3.org/2000/svg",a);break;case 2:s=d.createElementNS("http://www.w3.org/1998/Math/MathML",a);break;default:switch(a){case"svg":s=d.createElementNS("http://www.w3.org/2000/svg",a);break;case"math":s=d.createElementNS("http://www.w3.org/1998/Math/MathML",a);break;case"script":s=d.createElement("div"),s.innerHTML="<script><\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?d.createElement("select",{is:l.is}):d.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?d.createElement(a,{is:l.is}):d.createElement(a)}}s[te]=e,s[oe]=l;t:for(d=e.child;d!==null;){if(d.tag===5||d.tag===6)s.appendChild(d.stateNode);else if(d.tag!==4&&d.tag!==27&&d.child!==null){d.child.return=d,d=d.child;continue}if(d===e)break t;for(;d.sibling===null;){if(d.return===null||d.return===e)break t;d=d.return}d.sibling.return=d.return,d=d.sibling}e.stateNode=s;t:switch(ae(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break t;case"img":l=!0;break t;default:l=!1}l&&rn(e)}}return Ht(e),zs(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,n),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==l&&rn(e);else{if(typeof l!="string"&&e.stateNode===null)throw Error(f(166));if(t=ot.current,Wl(e)){if(t=e.stateNode,n=e.memoizedProps,l=null,a=ee,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}t[te]=e,t=!!(t.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||Ld(t.nodeValue,n)),t||jn(e,!0)}else t=Uu(t).createTextNode(l),t[te]=e,e.stateNode=t}return Ht(e),null;case 31:if(n=e.memoizedState,t===null||t.memoizedState!==null){if(l=Wl(e),n!==null){if(t===null){if(!l)throw Error(f(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(f(557));t[te]=e}else ml(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Ht(e),t=!1}else n=kc(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),t=!0;if(!t)return e.flags&256?(Oe(e),e):(Oe(e),null);if((e.flags&128)!==0)throw Error(f(558))}return Ht(e),null;case 13:if(l=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=Wl(e),l!==null&&l.dehydrated!==null){if(t===null){if(!a)throw Error(f(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(f(317));a[te]=e}else ml(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Ht(e),a=!1}else a=kc(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(Oe(e),e):(Oe(e),null)}return Oe(e),(e.flags&128)!==0?(e.lanes=n,e):(n=l!==null,t=t!==null&&t.memoizedState!==null,n&&(l=e.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==t&&n&&(e.child.flags|=8192),pu(e,e.updateQueue),Ht(e),null);case 4:return Qt(),t===null&&uf(e.stateNode.containerInfo),Ht(e),null;case 10:return un(e.type),Ht(e),null;case 19:if(L(Xt),l=e.memoizedState,l===null)return Ht(e),null;if(a=(e.flags&128)!==0,s=l.rendering,s===null)if(a)$a(l,!1);else{if(Gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(s=cu(t),s!==null){for(e.flags|=128,$a(l,!1),t=s.updateQueue,e.updateQueue=t,pu(e,t),e.subtreeFlags=0,t=n,n=e.child;n!==null;)A0(n,t),n=n.sibling;return W(Xt,Xt.current&1|2),xt&&ln(e,l.treeForkCount),e.child}t=t.sibling}l.tail!==null&&pe()>Cu&&(e.flags|=128,a=!0,$a(l,!1),e.lanes=4194304)}else{if(!a)if(t=cu(s),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,pu(e,t),$a(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!xt)return Ht(e),null}else 2*pe()-l.renderingStartTime>Cu&&n!==536870912&&(e.flags|=128,a=!0,$a(l,!1),e.lanes=4194304);l.isBackwards?(s.sibling=e.child,e.child=s):(t=l.last,t!==null?t.sibling=s:e.child=s,l.last=s)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=pe(),t.sibling=null,n=Xt.current,W(Xt,a?n&1|2:n&1),xt&&ln(e,l.treeForkCount),t):(Ht(e),null);case 22:case 23:return Oe(e),us(),l=e.memoizedState!==null,t!==null?t.memoizedState!==null!==l&&(e.flags|=8192):l&&(e.flags|=8192),l?(n&536870912)!==0&&(e.flags&128)===0&&(Ht(e),e.subtreeFlags&6&&(e.flags|=8192)):Ht(e),n=e.updateQueue,n!==null&&pu(e,n.retryQueue),n=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),l=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),l!==n&&(e.flags|=2048),t!==null&&L(vl),null;case 24:return n=null,t!==null&&(n=t.memoizedState.cache),e.memoizedState.cache!==n&&(e.flags|=2048),un(Zt),Ht(e),null;case 25:return null;case 30:return null}throw Error(f(156,e.tag))}function pg(t,e){switch(qc(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return un(Zt),Qt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return ul(e),null;case 31:if(e.memoizedState!==null){if(Oe(e),e.alternate===null)throw Error(f(340));ml()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(Oe(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(f(340));ml()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return L(Xt),null;case 4:return Qt(),null;case 10:return un(e.type),null;case 22:case 23:return Oe(e),us(),t!==null&&L(vl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return un(Zt),null;case 25:return null;default:return null}}function Io(t,e){switch(qc(e),e.tag){case 3:un(Zt),Qt();break;case 26:case 27:case 5:ul(e);break;case 4:Qt();break;case 31:e.memoizedState!==null&&Oe(e);break;case 13:Oe(e);break;case 19:L(Xt);break;case 10:un(e.type);break;case 22:case 23:Oe(e),us(),t!==null&&L(vl);break;case 24:un(Zt)}}function ti(t,e){try{var n=e.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&t)===t){l=void 0;var s=n.create,d=n.inst;l=s(),d.destroy=l}n=n.next}while(n!==a)}}catch(g){Dt(e,e.return,g)}}function Yn(t,e,n){try{var l=e.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&t)===t){var d=l.inst,g=d.destroy;if(g!==void 0){d.destroy=void 0,a=e;var S=n,U=g;try{U()}catch(Z){Dt(a,S,Z)}}}l=l.next}while(l!==s)}}catch(Z){Dt(e,e.return,Z)}}function qo(t){var e=t.updateQueue;if(e!==null){var n=t.stateNode;try{B0(e,n)}catch(l){Dt(t,t.return,l)}}}function Ko(t,e,n){n.props=bl(t.type,t.memoizedProps),n.state=t.memoizedState;try{n.componentWillUnmount()}catch(l){Dt(t,e,l)}}function ei(t,e){try{var n=t.ref;if(n!==null){switch(t.tag){case 26:case 27:case 5:var l=t.stateNode;break;case 30:l=t.stateNode;break;default:l=t.stateNode}typeof n=="function"?t.refCleanup=n(l):n.current=l}}catch(a){Dt(t,e,a)}}function We(t,e){var n=t.ref,l=t.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){Dt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){Dt(t,e,a)}else n.current=null}function ko(t){var e=t.type,n=t.memoizedProps,l=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break t;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){Dt(t,t.return,a)}}function Ys(t,e,n){try{var l=t.stateNode;Vg(l,t.type,n,e),l[oe]=e}catch(a){Dt(t,t.return,a)}}function Jo(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&qn(t.type)||t.tag===4}function Ls(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Jo(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&qn(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Gs(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(t,e):(e=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,e.appendChild(t),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=tn));else if(l!==4&&(l===27&&qn(t.type)&&(n=t.stateNode,e=null),t=t.child,t!==null))for(Gs(t,e,n),t=t.sibling;t!==null;)Gs(t,e,n),t=t.sibling}function xu(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(l!==4&&(l===27&&qn(t.type)&&(n=t.stateNode),t=t.child,t!==null))for(xu(t,e,n),t=t.sibling;t!==null;)xu(t,e,n),t=t.sibling}function Fo(t){var e=t.stateNode,n=t.memoizedProps;try{for(var l=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);ae(e,l,n),e[te]=t,e[oe]=n}catch(s){Dt(t,t.return,s)}}var on=!1,Kt=!1,Xs=!1,Wo=typeof WeakSet=="function"?WeakSet:Set,Wt=null;function xg(t,e){if(t=t.containerInfo,ff=Vu,t=c0(t),Bc(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else t:{n=(n=t.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break t}var d=0,g=-1,S=-1,U=0,Z=0,J=t,Q=null;e:for(;;){for(var G;J!==n||a!==0&&J.nodeType!==3||(g=d+a),J!==s||l!==0&&J.nodeType!==3||(S=d+l),J.nodeType===3&&(d+=J.nodeValue.length),(G=J.firstChild)!==null;)Q=J,J=G;for(;;){if(J===t)break e;if(Q===n&&++U===a&&(g=d),Q===s&&++Z===l&&(S=d),(G=J.nextSibling)!==null)break;J=Q,Q=J.parentNode}J=G}n=g===-1||S===-1?null:{start:g,end:S}}else n=null}n=n||{start:0,end:0}}else n=null;for(rf={focusedElem:t,selectionRange:n},Vu=!1,Wt=e;Wt!==null;)if(e=Wt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Wt=t;else for(;Wt!==null;){switch(e=Wt,s=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(n=0;n<t.length;n++)a=t[n],a.ref.impl=a.nextImpl;break;case 11:case 15:break;case 1:if((t&1024)!==0&&s!==null){t=void 0,n=e,a=s.memoizedProps,s=s.memoizedState,l=n.stateNode;try{var lt=bl(n.type,a);t=l.getSnapshotBeforeUpdate(lt,s),l.__reactInternalSnapshotBeforeUpdate=t}catch(ft){Dt(n,n.return,ft)}}break;case 3:if((t&1024)!==0){if(t=e.stateNode.containerInfo,n=t.nodeType,n===9)hf(t);else if(n===1)switch(t.nodeName){case"HEAD":case"HTML":case"BODY":hf(t);break;default:t.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((t&1024)!==0)throw Error(f(163))}if(t=e.sibling,t!==null){t.return=e.return,Wt=t;break}Wt=e.return}}function _o(t,e,n){var l=n.flags;switch(n.tag){case 0:case 11:case 15:hn(t,n),l&4&&ti(5,n);break;case 1:if(hn(t,n),l&4)if(t=n.stateNode,e===null)try{t.componentDidMount()}catch(d){Dt(n,n.return,d)}else{var a=bl(n.type,e.memoizedProps);e=e.memoizedState;try{t.componentDidUpdate(a,e,t.__reactInternalSnapshotBeforeUpdate)}catch(d){Dt(n,n.return,d)}}l&64&&qo(n),l&512&&ei(n,n.return);break;case 3:if(hn(t,n),l&64&&(t=n.updateQueue,t!==null)){if(e=null,n.child!==null)switch(n.child.tag){case 27:case 5:e=n.child.stateNode;break;case 1:e=n.child.stateNode}try{B0(t,e)}catch(d){Dt(n,n.return,d)}}break;case 27:e===null&&l&4&&Fo(n);case 26:case 5:hn(t,n),e===null&&l&4&&ko(n),l&512&&ei(n,n.return);break;case 12:hn(t,n);break;case 31:hn(t,n),l&4&&td(t,n);break;case 13:hn(t,n),l&4&&ed(t,n),l&64&&(t=n.memoizedState,t!==null&&(t=t.dehydrated,t!==null&&(n=Mg.bind(null,n),Wg(t,n))));break;case 22:if(l=n.memoizedState!==null||on,!l){e=e!==null&&e.memoizedState!==null||Kt,a=on;var s=Kt;on=l,(Kt=e)&&!s?mn(t,n,(n.subtreeFlags&8772)!==0):hn(t,n),on=a,Kt=s}break;case 30:break;default:hn(t,n)}}function Po(t){var e=t.alternate;e!==null&&(t.alternate=null,Po(e)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(e=t.stateNode,e!==null&&vc(e)),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}var zt=null,he=!1;function dn(t,e,n){for(n=n.child;n!==null;)$o(t,e,n),n=n.sibling}function $o(t,e,n){if(xe&&typeof xe.onCommitFiberUnmount=="function")try{xe.onCommitFiberUnmount(Ca,n)}catch{}switch(n.tag){case 26:Kt||We(n,e),dn(t,e,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:Kt||We(n,e);var l=zt,a=he;qn(n.type)&&(zt=n.stateNode,he=!1),dn(t,e,n),ri(n.stateNode),zt=l,he=a;break;case 5:Kt||We(n,e);case 6:if(l=zt,a=he,zt=null,dn(t,e,n),zt=l,he=a,zt!==null)if(he)try{(zt.nodeType===9?zt.body:zt.nodeName==="HTML"?zt.ownerDocument.body:zt).removeChild(n.stateNode)}catch(s){Dt(n,e,s)}else try{zt.removeChild(n.stateNode)}catch(s){Dt(n,e,s)}break;case 18:zt!==null&&(he?(t=zt,qd(t.nodeType===9?t.body:t.nodeName==="HTML"?t.ownerDocument.body:t,n.stateNode),va(t)):qd(zt,n.stateNode));break;case 4:l=zt,a=he,zt=n.stateNode.containerInfo,he=!0,dn(t,e,n),zt=l,he=a;break;case 0:case 11:case 14:case 15:Yn(2,n,e),Kt||Yn(4,n,e),dn(t,e,n);break;case 1:Kt||(We(n,e),l=n.stateNode,typeof l.componentWillUnmount=="function"&&Ko(n,e,l)),dn(t,e,n);break;case 21:dn(t,e,n);break;case 22:Kt=(l=Kt)||n.memoizedState!==null,dn(t,e,n),Kt=l;break;default:dn(t,e,n)}}function td(t,e){if(e.memoizedState===null&&(t=e.alternate,t!==null&&(t=t.memoizedState,t!==null))){t=t.dehydrated;try{va(t)}catch(n){Dt(e,e.return,n)}}}function ed(t,e){if(e.memoizedState===null&&(t=e.alternate,t!==null&&(t=t.memoizedState,t!==null&&(t=t.dehydrated,t!==null))))try{va(t)}catch(n){Dt(e,e.return,n)}}function bg(t){switch(t.tag){case 31:case 13:case 19:var e=t.stateNode;return e===null&&(e=t.stateNode=new Wo),e;case 22:return t=t.stateNode,e=t._retryCache,e===null&&(e=t._retryCache=new Wo),e;default:throw Error(f(435,t.tag))}}function bu(t,e){var n=bg(t);e.forEach(function(l){if(!n.has(l)){n.add(l);var a=jg.bind(null,t,l);l.then(a,a)}})}function me(t,e){var n=e.deletions;if(n!==null)for(var l=0;l<n.length;l++){var a=n[l],s=t,d=e,g=d;t:for(;g!==null;){switch(g.tag){case 27:if(qn(g.type)){zt=g.stateNode,he=!1;break t}break;case 5:zt=g.stateNode,he=!1;break t;case 3:case 4:zt=g.stateNode.containerInfo,he=!0;break t}g=g.return}if(zt===null)throw Error(f(160));$o(s,d,a),zt=null,he=!1,s=a.alternate,s!==null&&(s.return=null),a.return=null}if(e.subtreeFlags&13886)for(e=e.child;e!==null;)nd(e,t),e=e.sibling}var qe=null;function nd(t,e){var n=t.alternate,l=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:me(e,t),ge(t),l&4&&(Yn(3,t,t.return),ti(3,t),Yn(5,t,t.return));break;case 1:me(e,t),ge(t),l&512&&(Kt||n===null||We(n,n.return)),l&64&&on&&(t=t.updateQueue,t!==null&&(l=t.callbacks,l!==null&&(n=t.shared.hiddenCallbacks,t.shared.hiddenCallbacks=n===null?l:n.concat(l))));break;case 26:var a=qe;if(me(e,t),ge(t),l&512&&(Kt||n===null||We(n,n.return)),l&4){var s=n!==null?n.memoizedState:null;if(l=t.memoizedState,n===null)if(l===null)if(t.stateNode===null){t:{l=t.type,n=t.memoizedProps,a=a.ownerDocument||a;e:switch(l){case"title":s=a.getElementsByTagName("title")[0],(!s||s[Ra]||s[te]||s.namespaceURI==="http://www.w3.org/2000/svg"||s.hasAttribute("itemprop"))&&(s=a.createElement(l),a.head.insertBefore(s,a.querySelector("head > title"))),ae(s,l,n),s[te]=t,Ft(s),l=s;break t;case"link":var d=n1("link","href",a).get(l+(n.href||""));if(d){for(var g=0;g<d.length;g++)if(s=d[g],s.getAttribute("href")===(n.href==null||n.href===""?null:n.href)&&s.getAttribute("rel")===(n.rel==null?null:n.rel)&&s.getAttribute("title")===(n.title==null?null:n.title)&&s.getAttribute("crossorigin")===(n.crossOrigin==null?null:n.crossOrigin)){d.splice(g,1);break e}}s=a.createElement(l),ae(s,l,n),a.head.appendChild(s);break;case"meta":if(d=n1("meta","content",a).get(l+(n.content||""))){for(g=0;g<d.length;g++)if(s=d[g],s.getAttribute("content")===(n.content==null?null:""+n.content)&&s.getAttribute("name")===(n.name==null?null:n.name)&&s.getAttribute("property")===(n.property==null?null:n.property)&&s.getAttribute("http-equiv")===(n.httpEquiv==null?null:n.httpEquiv)&&s.getAttribute("charset")===(n.charSet==null?null:n.charSet)){d.splice(g,1);break e}}s=a.createElement(l),ae(s,l,n),a.head.appendChild(s);break;default:throw Error(f(468,l))}s[te]=t,Ft(s),l=s}t.stateNode=l}else l1(a,t.type,t.stateNode);else t.stateNode=e1(a,l,t.memoizedProps);else s!==l?(s===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):s.count--,l===null?l1(a,t.type,t.stateNode):e1(a,l,t.memoizedProps)):l===null&&t.stateNode!==null&&Ys(t,t.memoizedProps,n.memoizedProps)}break;case 27:me(e,t),ge(t),l&512&&(Kt||n===null||We(n,n.return)),n!==null&&l&4&&Ys(t,t.memoizedProps,n.memoizedProps);break;case 5:if(me(e,t),ge(t),l&512&&(Kt||n===null||We(n,n.return)),t.flags&32){a=t.stateNode;try{Gl(a,"")}catch(lt){Dt(t,t.return,lt)}}l&4&&t.stateNode!=null&&(a=t.memoizedProps,Ys(t,a,n!==null?n.memoizedProps:a)),l&1024&&(Xs=!0);break;case 6:if(me(e,t),ge(t),l&4){if(t.stateNode===null)throw Error(f(162));l=t.memoizedProps,n=t.stateNode;try{n.nodeValue=l}catch(lt){Dt(t,t.return,lt)}}break;case 3:if(Yu=null,a=qe,qe=Qu(e.containerInfo),me(e,t),qe=a,ge(t),l&4&&n!==null&&n.memoizedState.isDehydrated)try{va(e.containerInfo)}catch(lt){Dt(t,t.return,lt)}Xs&&(Xs=!1,ld(t));break;case 4:l=qe,qe=Qu(t.stateNode.containerInfo),me(e,t),ge(t),qe=l;break;case 12:me(e,t),ge(t);break;case 31:me(e,t),ge(t),l&4&&(l=t.updateQueue,l!==null&&(t.updateQueue=null,bu(t,l)));break;case 13:me(e,t),ge(t),t.child.flags&8192&&t.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(Tu=pe()),l&4&&(l=t.updateQueue,l!==null&&(t.updateQueue=null,bu(t,l)));break;case 22:a=t.memoizedState!==null;var S=n!==null&&n.memoizedState!==null,U=on,Z=Kt;if(on=U||a,Kt=Z||S,me(e,t),Kt=Z,on=U,ge(t),l&8192)t:for(e=t.stateNode,e._visibility=a?e._visibility&-2:e._visibility|1,a&&(n===null||S||on||Kt||Sl(t)),n=null,e=t;;){if(e.tag===5||e.tag===26){if(n===null){S=n=e;try{if(s=S.stateNode,a)d=s.style,typeof d.setProperty=="function"?d.setProperty("display","none","important"):d.display="none";else{g=S.stateNode;var J=S.memoizedProps.style,Q=J!=null&&J.hasOwnProperty("display")?J.display:null;g.style.display=Q==null||typeof Q=="boolean"?"":(""+Q).trim()}}catch(lt){Dt(S,S.return,lt)}}}else if(e.tag===6){if(n===null){S=e;try{S.stateNode.nodeValue=a?"":S.memoizedProps}catch(lt){Dt(S,S.return,lt)}}}else if(e.tag===18){if(n===null){S=e;try{var G=S.stateNode;a?Kd(G,!0):Kd(S.stateNode,!1)}catch(lt){Dt(S,S.return,lt)}}}else if((e.tag!==22&&e.tag!==23||e.memoizedState===null||e===t)&&e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break t;for(;e.sibling===null;){if(e.return===null||e.return===t)break t;n===e&&(n=null),e=e.return}n===e&&(n=null),e.sibling.return=e.return,e=e.sibling}l&4&&(l=t.updateQueue,l!==null&&(n=l.retryQueue,n!==null&&(l.retryQueue=null,bu(t,n))));break;case 19:me(e,t),ge(t),l&4&&(l=t.updateQueue,l!==null&&(t.updateQueue=null,bu(t,l)));break;case 30:break;case 21:break;default:me(e,t),ge(t)}}function ge(t){var e=t.flags;if(e&2){try{for(var n,l=t.return;l!==null;){if(Jo(l)){n=l;break}l=l.return}if(n==null)throw Error(f(160));switch(n.tag){case 27:var a=n.stateNode,s=Ls(t);xu(t,s,a);break;case 5:var d=n.stateNode;n.flags&32&&(Gl(d,""),n.flags&=-33);var g=Ls(t);xu(t,g,d);break;case 3:case 4:var S=n.stateNode.containerInfo,U=Ls(t);Gs(t,U,S);break;default:throw Error(f(161))}}catch(Z){Dt(t,t.return,Z)}t.flags&=-3}e&4096&&(t.flags&=-4097)}function ld(t){if(t.subtreeFlags&1024)for(t=t.child;t!==null;){var e=t;ld(e),e.tag===5&&e.flags&1024&&e.stateNode.reset(),t=t.sibling}}function hn(t,e){if(e.subtreeFlags&8772)for(e=e.child;e!==null;)_o(t,e.alternate,e),e=e.sibling}function Sl(t){for(t=t.child;t!==null;){var e=t;switch(e.tag){case 0:case 11:case 14:case 15:Yn(4,e,e.return),Sl(e);break;case 1:We(e,e.return);var n=e.stateNode;typeof n.componentWillUnmount=="function"&&Ko(e,e.return,n),Sl(e);break;case 27:ri(e.stateNode);case 26:case 5:We(e,e.return),Sl(e);break;case 22:e.memoizedState===null&&Sl(e);break;case 30:Sl(e);break;default:Sl(e)}t=t.sibling}}function mn(t,e,n){for(n=n&&(e.subtreeFlags&8772)!==0,e=e.child;e!==null;){var l=e.alternate,a=t,s=e,d=s.flags;switch(s.tag){case 0:case 11:case 15:mn(a,s,n),ti(4,s);break;case 1:if(mn(a,s,n),l=s,a=l.stateNode,typeof a.componentDidMount=="function")try{a.componentDidMount()}catch(U){Dt(l,l.return,U)}if(l=s,a=l.updateQueue,a!==null){var g=l.stateNode;try{var S=a.shared.hiddenCallbacks;if(S!==null)for(a.shared.hiddenCallbacks=null,a=0;a<S.length;a++)H0(S[a],g)}catch(U){Dt(l,l.return,U)}}n&&d&64&&qo(s),ei(s,s.return);break;case 27:Fo(s);case 26:case 5:mn(a,s,n),n&&l===null&&d&4&&ko(s),ei(s,s.return);break;case 12:mn(a,s,n);break;case 31:mn(a,s,n),n&&d&4&&td(a,s);break;case 13:mn(a,s,n),n&&d&4&&ed(a,s);break;case 22:s.memoizedState===null&&mn(a,s,n),ei(s,s.return);break;case 30:break;default:mn(a,s,n)}e=e.sibling}}function Vs(t,e){var n=null;t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),t=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(t=e.memoizedState.cachePool.pool),t!==n&&(t!=null&&t.refCount++,n!=null&&Xa(n))}function Zs(t,e){t=null,e.alternate!==null&&(t=e.alternate.memoizedState.cache),e=e.memoizedState.cache,e!==t&&(e.refCount++,t!=null&&Xa(t))}function Ke(t,e,n,l){if(e.subtreeFlags&10256)for(e=e.child;e!==null;)ad(t,e,n,l),e=e.sibling}function ad(t,e,n,l){var a=e.flags;switch(e.tag){case 0:case 11:case 15:Ke(t,e,n,l),a&2048&&ti(9,e);break;case 1:Ke(t,e,n,l);break;case 3:Ke(t,e,n,l),a&2048&&(t=null,e.alternate!==null&&(t=e.alternate.memoizedState.cache),e=e.memoizedState.cache,e!==t&&(e.refCount++,t!=null&&Xa(t)));break;case 12:if(a&2048){Ke(t,e,n,l),t=e.stateNode;try{var s=e.memoizedProps,d=s.id,g=s.onPostCommit;typeof g=="function"&&g(d,e.alternate===null?"mount":"update",t.passiveEffectDuration,-0)}catch(S){Dt(e,e.return,S)}}else Ke(t,e,n,l);break;case 31:Ke(t,e,n,l);break;case 13:Ke(t,e,n,l);break;case 23:break;case 22:s=e.stateNode,d=e.alternate,e.memoizedState!==null?s._visibility&2?Ke(t,e,n,l):ni(t,e):s._visibility&2?Ke(t,e,n,l):(s._visibility|=2,ua(t,e,n,l,(e.subtreeFlags&10256)!==0||!1)),a&2048&&Vs(d,e);break;case 24:Ke(t,e,n,l),a&2048&&Zs(e.alternate,e);break;default:Ke(t,e,n,l)}}function ua(t,e,n,l,a){for(a=a&&((e.subtreeFlags&10256)!==0||!1),e=e.child;e!==null;){var s=t,d=e,g=n,S=l,U=d.flags;switch(d.tag){case 0:case 11:case 15:ua(s,d,g,S,a),ti(8,d);break;case 23:break;case 22:var Z=d.stateNode;d.memoizedState!==null?Z._visibility&2?ua(s,d,g,S,a):ni(s,d):(Z._visibility|=2,ua(s,d,g,S,a)),a&&U&2048&&Vs(d.alternate,d);break;case 24:ua(s,d,g,S,a),a&&U&2048&&Zs(d.alternate,d);break;default:ua(s,d,g,S,a)}e=e.sibling}}function ni(t,e){if(e.subtreeFlags&10256)for(e=e.child;e!==null;){var n=t,l=e,a=l.flags;switch(l.tag){case 22:ni(n,l),a&2048&&Vs(l.alternate,l);break;case 24:ni(n,l),a&2048&&Zs(l.alternate,l);break;default:ni(n,l)}e=e.sibling}}var li=8192;function ca(t,e,n){if(t.subtreeFlags&li)for(t=t.child;t!==null;)id(t,e,n),t=t.sibling}function id(t,e,n){switch(t.tag){case 26:ca(t,e,n),t.flags&li&&t.memoizedState!==null&&sA(n,qe,t.memoizedState,t.memoizedProps);break;case 5:ca(t,e,n);break;case 3:case 4:var l=qe;qe=Qu(t.stateNode.containerInfo),ca(t,e,n),qe=l;break;case 22:t.memoizedState===null&&(l=t.alternate,l!==null&&l.memoizedState!==null?(l=li,li=16777216,ca(t,e,n),li=l):ca(t,e,n));break;default:ca(t,e,n)}}function ud(t){var e=t.alternate;if(e!==null&&(t=e.child,t!==null)){e.child=null;do e=t.sibling,t.sibling=null,t=e;while(t!==null)}}function ai(t){var e=t.deletions;if((t.flags&16)!==0){if(e!==null)for(var n=0;n<e.length;n++){var l=e[n];Wt=l,sd(l,t)}ud(t)}if(t.subtreeFlags&10256)for(t=t.child;t!==null;)cd(t),t=t.sibling}function cd(t){switch(t.tag){case 0:case 11:case 15:ai(t),t.flags&2048&&Yn(9,t,t.return);break;case 3:ai(t);break;case 12:ai(t);break;case 22:var e=t.stateNode;t.memoizedState!==null&&e._visibility&2&&(t.return===null||t.return.tag!==13)?(e._visibility&=-3,Su(t)):ai(t);break;default:ai(t)}}function Su(t){var e=t.deletions;if((t.flags&16)!==0){if(e!==null)for(var n=0;n<e.length;n++){var l=e[n];Wt=l,sd(l,t)}ud(t)}for(t=t.child;t!==null;){switch(e=t,e.tag){case 0:case 11:case 15:Yn(8,e,e.return),Su(e);break;case 22:n=e.stateNode,n._visibility&2&&(n._visibility&=-3,Su(e));break;default:Su(e)}t=t.sibling}}function sd(t,e){for(;Wt!==null;){var n=Wt;switch(n.tag){case 0:case 11:case 15:Yn(8,n,e);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var l=n.memoizedState.cachePool.pool;l!=null&&l.refCount++}break;case 24:Xa(n.memoizedState.cache)}if(l=n.child,l!==null)l.return=n,Wt=l;else t:for(n=t;Wt!==null;){l=Wt;var a=l.sibling,s=l.return;if(Po(l),l===n){Wt=null;break t}if(a!==null){a.return=s,Wt=a;break t}Wt=s}}}var Sg={getCacheForType:function(t){var e=ne(Zt),n=e.data.get(t);return n===void 0&&(n=t(),e.data.set(t,n)),n},cacheSignal:function(){return ne(Zt).controller.signal}},Tg=typeof WeakMap=="function"?WeakMap:Map,Ct=0,jt=null,vt=null,Et=0,Ot=0,De=null,Ln=!1,sa=!1,Is=!1,gn=0,Gt=0,Gn=0,Tl=0,qs=0,Re=0,fa=0,ii=null,Ae=null,Ks=!1,Tu=0,fd=0,Cu=1/0,Ou=null,Xn=null,kt=0,Vn=null,ra=null,An=0,ks=0,Js=null,rd=null,ui=0,Fs=null;function we(){return(Ct&2)!==0&&Et!==0?Et&-Et:M.T!==null?ef():Cr()}function od(){if(Re===0)if((Et&536870912)===0||xt){var t=Bi;Bi<<=1,(Bi&3932160)===0&&(Bi=262144),Re=t}else Re=536870912;return t=Ce.current,t!==null&&(t.flags|=32),Re}function ve(t,e,n){(t===jt&&(Ot===2||Ot===9)||t.cancelPendingCommit!==null)&&(oa(t,0),Zn(t,Et,Re,!1)),Da(t,n),((Ct&2)===0||t!==jt)&&(t===jt&&((Ct&2)===0&&(Tl|=n),Gt===4&&Zn(t,Et,Re,!1)),_e(t))}function dd(t,e,n){if((Ct&6)!==0)throw Error(f(327));var l=!n&&(e&127)===0&&(e&t.expiredLanes)===0||Oa(t,e),a=l?Dg(t,e):_s(t,e,!0),s=l;do{if(a===0){sa&&!l&&Zn(t,e,0,!1);break}else{if(n=t.current.alternate,s&&!Cg(n)){a=_s(t,e,!1),s=!1;continue}if(a===2){if(s=e,t.errorRecoveryDisabledLanes&s)var d=0;else d=t.pendingLanes&-536870913,d=d!==0?d:d&536870912?536870912:0;if(d!==0){e=d;t:{var g=t;a=ii;var S=g.current.memoizedState.isDehydrated;if(S&&(oa(g,d).flags|=256),d=_s(g,d,!1),d!==2){if(Is&&!S){g.errorRecoveryDisabledLanes|=s,Tl|=s,a=4;break t}s=Ae,Ae=a,s!==null&&(Ae===null?Ae=s:Ae.push.apply(Ae,s))}a=d}if(s=!1,a!==2)continue}}if(a===1){oa(t,0),Zn(t,e,0,!0);break}t:{switch(l=t,s=a,s){case 0:case 1:throw Error(f(345));case 4:if((e&4194048)!==e)break;case 6:Zn(l,e,Re,!Ln);break t;case 2:Ae=null;break;case 3:case 5:break;default:throw Error(f(329))}if((e&62914560)===e&&(a=Tu+300-pe(),10<a)){if(Zn(l,e,Re,!Ln),Qi(l,0,!0)!==0)break t;An=e,l.timeoutHandle=Zd(hd.bind(null,l,n,Ae,Ou,Ks,e,Re,Tl,fa,Ln,s,"Throttled",-0,0),a);break t}hd(l,n,Ae,Ou,Ks,e,Re,Tl,fa,Ln,s,null,-0,0)}}break}while(!0);_e(t)}function hd(t,e,n,l,a,s,d,g,S,U,Z,J,Q,G){if(t.timeoutHandle=-1,J=e.subtreeFlags,J&8192||(J&16785408)===16785408){J={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:tn},id(e,s,J);var lt=(s&62914560)===s?Tu-pe():(s&4194048)===s?fd-pe():0;if(lt=fA(J,lt),lt!==null){An=s,t.cancelPendingCommit=lt(xd.bind(null,t,e,s,n,l,a,d,g,S,Z,J,null,Q,G)),Zn(t,s,d,!U);return}}xd(t,e,s,n,l,a,d,g,S)}function Cg(t){for(var e=t;;){var n=e.tag;if((n===0||n===11||n===15)&&e.flags&16384&&(n=e.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var l=0;l<n.length;l++){var a=n[l],s=a.getSnapshot;a=a.value;try{if(!Se(s(),a))return!1}catch{return!1}}if(n=e.child,e.subtreeFlags&16384&&n!==null)n.return=e,e=n;else{if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return!0;e=e.return}e.sibling.return=e.return,e=e.sibling}}return!0}function Zn(t,e,n,l){e&=~qs,e&=~Tl,t.suspendedLanes|=e,t.pingedLanes&=~e,l&&(t.warmLanes|=e),l=t.expirationTimes;for(var a=e;0<a;){var s=31-be(a),d=1<<s;l[s]=-1,a&=~d}n!==0&&br(t,n,e)}function Du(){return(Ct&6)===0?(ci(0),!1):!0}function Ws(){if(vt!==null){if(Ot===0)var t=vt.return;else t=vt,an=gl=null,ds(t),ea=null,Za=0,t=vt;for(;t!==null;)Io(t.alternate,t),t=t.return;vt=null}}function oa(t,e){var n=t.timeoutHandle;n!==-1&&(t.timeoutHandle=-1,qg(n)),n=t.cancelPendingCommit,n!==null&&(t.cancelPendingCommit=null,n()),An=0,Ws(),jt=t,vt=n=nn(t.current,null),Et=e,Ot=0,De=null,Ln=!1,sa=Oa(t,e),Is=!1,fa=Re=qs=Tl=Gn=Gt=0,Ae=ii=null,Ks=!1,(e&8)!==0&&(e|=e&32);var l=t.entangledLanes;if(l!==0)for(t=t.entanglements,l&=e;0<l;){var a=31-be(l),s=1<<a;e|=t[a],l&=~s}return gn=e,Ji(),n}function md(t,e){mt=null,M.H=_a,e===ta||e===nu?(e=w0(),Ot=3):e===ts?(e=w0(),Ot=4):Ot=e===Rs?8:e!==null&&typeof e=="object"&&typeof e.then=="function"?6:1,De=e,vt===null&&(Gt=1,Au(t,Be(e,t.current)))}function gd(){var t=Ce.current;return t===null?!0:(Et&4194048)===Et?Ye===null:(Et&62914560)===Et||(Et&536870912)!==0?t===Ye:!1}function Ad(){var t=M.H;return M.H=_a,t===null?_a:t}function vd(){var t=M.A;return M.A=Sg,t}function Ru(){Gt=4,Ln||(Et&4194048)!==Et&&Ce.current!==null||(sa=!0),(Gn&134217727)===0&&(Tl&134217727)===0||jt===null||Zn(jt,Et,Re,!1)}function _s(t,e,n){var l=Ct;Ct|=2;var a=Ad(),s=vd();(jt!==t||Et!==e)&&(Ou=null,oa(t,e)),e=!1;var d=Gt;t:do try{if(Ot!==0&&vt!==null){var g=vt,S=De;switch(Ot){case 8:Ws(),d=6;break t;case 3:case 2:case 9:case 6:Ce.current===null&&(e=!0);var U=Ot;if(Ot=0,De=null,da(t,g,S,U),n&&sa){d=0;break t}break;default:U=Ot,Ot=0,De=null,da(t,g,S,U)}}Og(),d=Gt;break}catch(Z){md(t,Z)}while(!0);return e&&t.shellSuspendCounter++,an=gl=null,Ct=l,M.H=a,M.A=s,vt===null&&(jt=null,Et=0,Ji()),d}function Og(){for(;vt!==null;)yd(vt)}function Dg(t,e){var n=Ct;Ct|=2;var l=Ad(),a=vd();jt!==t||Et!==e?(Ou=null,Cu=pe()+500,oa(t,e)):sa=Oa(t,e);t:do try{if(Ot!==0&&vt!==null){e=vt;var s=De;e:switch(Ot){case 1:Ot=0,De=null,da(t,e,s,1);break;case 2:case 9:if(D0(s)){Ot=0,De=null,Ed(e);break}e=function(){Ot!==2&&Ot!==9||jt!==t||(Ot=7),_e(t)},s.then(e,e);break t;case 3:Ot=7;break t;case 4:Ot=5;break t;case 7:D0(s)?(Ot=0,De=null,Ed(e)):(Ot=0,De=null,da(t,e,s,7));break;case 5:var d=null;switch(vt.tag){case 26:d=vt.memoizedState;case 5:case 27:var g=vt;if(d?a1(d):g.stateNode.complete){Ot=0,De=null;var S=g.sibling;if(S!==null)vt=S;else{var U=g.return;U!==null?(vt=U,wu(U)):vt=null}break e}}Ot=0,De=null,da(t,e,s,5);break;case 6:Ot=0,De=null,da(t,e,s,6);break;case 8:Ws(),Gt=6;break t;default:throw Error(f(462))}}Rg();break}catch(Z){md(t,Z)}while(!0);return an=gl=null,M.H=l,M.A=a,Ct=n,vt!==null?0:(jt=null,Et=0,Ji(),Gt)}function Rg(){for(;vt!==null&&!_h();)yd(vt)}function yd(t){var e=Vo(t.alternate,t,gn);t.memoizedProps=t.pendingProps,e===null?wu(t):vt=e}function Ed(t){var e=t,n=e.alternate;switch(e.tag){case 15:case 0:e=Qo(n,e,e.pendingProps,e.type,void 0,Et);break;case 11:e=Qo(n,e,e.pendingProps,e.type.render,e.ref,Et);break;case 5:ds(e);default:Io(n,e),e=vt=A0(e,gn),e=Vo(n,e,gn)}t.memoizedProps=t.pendingProps,e===null?wu(t):vt=e}function da(t,e,n,l){an=gl=null,ds(e),ea=null,Za=0;var a=e.return;try{if(Ag(t,a,e,n,Et)){Gt=1,Au(t,Be(n,t.current)),vt=null;return}}catch(s){if(a!==null)throw vt=a,s;Gt=1,Au(t,Be(n,t.current)),vt=null;return}e.flags&32768?(xt||l===1?t=!0:sa||(Et&536870912)!==0?t=!1:(Ln=t=!0,(l===2||l===9||l===3||l===6)&&(l=Ce.current,l!==null&&l.tag===13&&(l.flags|=16384))),pd(e,t)):wu(e)}function wu(t){var e=t;do{if((e.flags&32768)!==0){pd(e,Ln);return}t=e.return;var n=Eg(e.alternate,e,gn);if(n!==null){vt=n;return}if(e=e.sibling,e!==null){vt=e;return}vt=e=t}while(e!==null);Gt===0&&(Gt=5)}function pd(t,e){do{var n=pg(t.alternate,t);if(n!==null){n.flags&=32767,vt=n;return}if(n=t.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!e&&(t=t.sibling,t!==null)){vt=t;return}vt=t=n}while(t!==null);Gt=6,vt=null}function xd(t,e,n,l,a,s,d,g,S){t.cancelPendingCommit=null;do Mu();while(kt!==0);if((Ct&6)!==0)throw Error(f(327));if(e!==null){if(e===t.current)throw Error(f(177));if(s=e.lanes|e.childLanes,s|=Lc,cm(t,n,s,d,g,S),t===jt&&(vt=jt=null,Et=0),ra=e,Vn=t,An=n,ks=s,Js=a,rd=l,(e.subtreeFlags&10256)!==0||(e.flags&10256)!==0?(t.callbackNode=null,t.callbackPriority=0,Ng(Ni,function(){return Od(),null})):(t.callbackNode=null,t.callbackPriority=0),l=(e.flags&13878)!==0,(e.subtreeFlags&13878)!==0||l){l=M.T,M.T=null,a=_.p,_.p=2,d=Ct,Ct|=4;try{xg(t,e,n)}finally{Ct=d,_.p=a,M.T=l}}kt=1,bd(),Sd(),Td()}}function bd(){if(kt===1){kt=0;var t=Vn,e=ra,n=(e.flags&13878)!==0;if((e.subtreeFlags&13878)!==0||n){n=M.T,M.T=null;var l=_.p;_.p=2;var a=Ct;Ct|=4;try{nd(e,t);var s=rf,d=c0(t.containerInfo),g=s.focusedElem,S=s.selectionRange;if(d!==g&&g&&g.ownerDocument&&u0(g.ownerDocument.documentElement,g)){if(S!==null&&Bc(g)){var U=S.start,Z=S.end;if(Z===void 0&&(Z=U),"selectionStart"in g)g.selectionStart=U,g.selectionEnd=Math.min(Z,g.value.length);else{var J=g.ownerDocument||document,Q=J&&J.defaultView||window;if(Q.getSelection){var G=Q.getSelection(),lt=g.textContent.length,ft=Math.min(S.start,lt),Mt=S.end===void 0?ft:Math.min(S.end,lt);!G.extend&&ft>Mt&&(d=Mt,Mt=ft,ft=d);var w=i0(g,ft),O=i0(g,Mt);if(w&&O&&(G.rangeCount!==1||G.anchorNode!==w.node||G.anchorOffset!==w.offset||G.focusNode!==O.node||G.focusOffset!==O.offset)){var B=J.createRange();B.setStart(w.node,w.offset),G.removeAllRanges(),ft>Mt?(G.addRange(B),G.extend(O.node,O.offset)):(B.setEnd(O.node,O.offset),G.addRange(B))}}}}for(J=[],G=g;G=G.parentNode;)G.nodeType===1&&J.push({element:G,left:G.scrollLeft,top:G.scrollTop});for(typeof g.focus=="function"&&g.focus(),g=0;g<J.length;g++){var K=J[g];K.element.scrollLeft=K.left,K.element.scrollTop=K.top}}Vu=!!ff,rf=ff=null}finally{Ct=a,_.p=l,M.T=n}}t.current=e,kt=2}}function Sd(){if(kt===2){kt=0;var t=Vn,e=ra,n=(e.flags&8772)!==0;if((e.subtreeFlags&8772)!==0||n){n=M.T,M.T=null;var l=_.p;_.p=2;var a=Ct;Ct|=4;try{_o(t,e.alternate,e)}finally{Ct=a,_.p=l,M.T=n}}kt=3}}function Td(){if(kt===4||kt===3){kt=0,Ph();var t=Vn,e=ra,n=An,l=rd;(e.subtreeFlags&10256)!==0||(e.flags&10256)!==0?kt=5:(kt=0,ra=Vn=null,Cd(t,t.pendingLanes));var a=t.pendingLanes;if(a===0&&(Xn=null),gc(n),e=e.stateNode,xe&&typeof xe.onCommitFiberRoot=="function")try{xe.onCommitFiberRoot(Ca,e,void 0,(e.current.flags&128)===128)}catch{}if(l!==null){e=M.T,a=_.p,_.p=2,M.T=null;try{for(var s=t.onRecoverableError,d=0;d<l.length;d++){var g=l[d];s(g.value,{componentStack:g.stack})}}finally{M.T=e,_.p=a}}(An&3)!==0&&Mu(),_e(t),a=t.pendingLanes,(n&261930)!==0&&(a&42)!==0?t===Fs?ui++:(ui=0,Fs=t):ui=0,ci(0)}}function Cd(t,e){(t.pooledCacheLanes&=e)===0&&(e=t.pooledCache,e!=null&&(t.pooledCache=null,Xa(e)))}function Mu(){return bd(),Sd(),Td(),Od()}function Od(){if(kt!==5)return!1;var t=Vn,e=ks;ks=0;var n=gc(An),l=M.T,a=_.p;try{_.p=32>n?32:n,M.T=null,n=Js,Js=null;var s=Vn,d=An;if(kt=0,ra=Vn=null,An=0,(Ct&6)!==0)throw Error(f(331));var g=Ct;if(Ct|=4,cd(s.current),ad(s,s.current,d,n),Ct=g,ci(0,!1),xe&&typeof xe.onPostCommitFiberRoot=="function")try{xe.onPostCommitFiberRoot(Ca,s)}catch{}return!0}finally{_.p=a,M.T=l,Cd(t,e)}}function Dd(t,e,n){e=Be(n,e),e=Ds(t.stateNode,e,2),t=Un(t,e,2),t!==null&&(Da(t,2),_e(t))}function Dt(t,e,n){if(t.tag===3)Dd(t,t,n);else for(;e!==null;){if(e.tag===3){Dd(e,t,n);break}else if(e.tag===1){var l=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Xn===null||!Xn.has(l))){t=Be(n,t),n=Ro(2),l=Un(e,n,2),l!==null&&(wo(n,l,e,t),Da(l,2),_e(l));break}}e=e.return}}function Ps(t,e,n){var l=t.pingCache;if(l===null){l=t.pingCache=new Tg;var a=new Set;l.set(e,a)}else a=l.get(e),a===void 0&&(a=new Set,l.set(e,a));a.has(n)||(Is=!0,a.add(n),t=wg.bind(null,t,e,n),e.then(t,t))}function wg(t,e,n){var l=t.pingCache;l!==null&&l.delete(e),t.pingedLanes|=t.suspendedLanes&n,t.warmLanes&=~n,jt===t&&(Et&n)===n&&(Gt===4||Gt===3&&(Et&62914560)===Et&&300>pe()-Tu?(Ct&2)===0&&oa(t,0):qs|=n,fa===Et&&(fa=0)),_e(t)}function Rd(t,e){e===0&&(e=xr()),t=dl(t,e),t!==null&&(Da(t,e),_e(t))}function Mg(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),Rd(t,n)}function jg(t,e){var n=0;switch(t.tag){case 31:case 13:var l=t.stateNode,a=t.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error(f(314))}l!==null&&l.delete(e),Rd(t,n)}function Ng(t,e){return oc(t,e)}var ju=null,ha=null,$s=!1,Nu=!1,tf=!1,In=0;function _e(t){t!==ha&&t.next===null&&(ha===null?ju=ha=t:ha=ha.next=t),Nu=!0,$s||($s=!0,Bg())}function ci(t,e){if(!tf&&Nu){tf=!0;do for(var n=!1,l=ju;l!==null;){if(t!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var d=l.suspendedLanes,g=l.pingedLanes;s=(1<<31-be(42|t)+1)-1,s&=a&~(d&~g),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,Nd(l,s))}else s=Et,s=Qi(l,l===jt?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Oa(l,s)||(n=!0,Nd(l,s));l=l.next}while(n);tf=!1}}function Hg(){wd()}function wd(){Nu=$s=!1;var t=0;In!==0&&Ig()&&(t=In);for(var e=pe(),n=null,l=ju;l!==null;){var a=l.next,s=Md(l,e);s===0?(l.next=null,n===null?ju=a:n.next=a,a===null&&(ha=n)):(n=l,(t!==0||(s&3)!==0)&&(Nu=!0)),l=a}kt!==0&&kt!==5||ci(t),In!==0&&(In=0)}function Md(t,e){for(var n=t.suspendedLanes,l=t.pingedLanes,a=t.expirationTimes,s=t.pendingLanes&-62914561;0<s;){var d=31-be(s),g=1<<d,S=a[d];S===-1?((g&n)===0||(g&l)!==0)&&(a[d]=um(g,e)):S<=e&&(t.expiredLanes|=g),s&=~g}if(e=jt,n=Et,n=Qi(t,t===e?n:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),l=t.callbackNode,n===0||t===e&&(Ot===2||Ot===9)||t.cancelPendingCommit!==null)return l!==null&&l!==null&&dc(l),t.callbackNode=null,t.callbackPriority=0;if((n&3)===0||Oa(t,n)){if(e=n&-n,e===t.callbackPriority)return e;switch(l!==null&&dc(l),gc(n)){case 2:case 8:n=Er;break;case 32:n=Ni;break;case 268435456:n=pr;break;default:n=Ni}return l=jd.bind(null,t),n=oc(n,l),t.callbackPriority=e,t.callbackNode=n,e}return l!==null&&l!==null&&dc(l),t.callbackPriority=2,t.callbackNode=null,2}function jd(t,e){if(kt!==0&&kt!==5)return t.callbackNode=null,t.callbackPriority=0,null;var n=t.callbackNode;if(Mu()&&t.callbackNode!==n)return null;var l=Et;return l=Qi(t,t===jt?l:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),l===0?null:(dd(t,l,e),Md(t,pe()),t.callbackNode!=null&&t.callbackNode===n?jd.bind(null,t):null)}function Nd(t,e){if(Mu())return null;dd(t,e,!0)}function Bg(){Kg(function(){(Ct&6)!==0?oc(yr,Hg):wd()})}function ef(){if(In===0){var t=Pl;t===0&&(t=Hi,Hi<<=1,(Hi&261888)===0&&(Hi=256)),In=t}return In}function Hd(t){return t==null||typeof t=="symbol"||typeof t=="boolean"?null:typeof t=="function"?t:Gi(""+t)}function Bd(t,e){var n=e.ownerDocument.createElement("input");return n.name=e.name,n.value=e.value,t.id&&n.setAttribute("form",t.id),e.parentNode.insertBefore(n,e),t=new FormData(t),n.parentNode.removeChild(n),t}function Ug(t,e,n,l,a){if(e==="submit"&&n&&n.stateNode===a){var s=Hd((a[oe]||null).action),d=l.submitter;d&&(e=(e=d[oe]||null)?Hd(e.formAction):d.getAttribute("formAction"),e!==null&&(s=e,d=null));var g=new Ii("action","action",null,l,a);t.push({event:g,listeners:[{instance:null,listener:function(){if(l.defaultPrevented){if(In!==0){var S=d?Bd(a,d):new FormData(a);xs(n,{pending:!0,data:S,method:a.method,action:s},null,S)}}else typeof s=="function"&&(g.preventDefault(),S=d?Bd(a,d):new FormData(a),xs(n,{pending:!0,data:S,method:a.method,action:s},s,S))},currentTarget:a}]})}}for(var nf=0;nf<Yc.length;nf++){var lf=Yc[nf],Qg=lf.toLowerCase(),zg=lf[0].toUpperCase()+lf.slice(1);Ie(Qg,"on"+zg)}Ie(r0,"onAnimationEnd"),Ie(o0,"onAnimationIteration"),Ie(d0,"onAnimationStart"),Ie("dblclick","onDoubleClick"),Ie("focusin","onFocus"),Ie("focusout","onBlur"),Ie($m,"onTransitionRun"),Ie(tg,"onTransitionStart"),Ie(eg,"onTransitionCancel"),Ie(h0,"onTransitionEnd"),Yl("onMouseEnter",["mouseout","mouseover"]),Yl("onMouseLeave",["mouseout","mouseover"]),Yl("onPointerEnter",["pointerout","pointerover"]),Yl("onPointerLeave",["pointerout","pointerover"]),sl("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),sl("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),sl("onBeforeInput",["compositionend","keypress","textInput","paste"]),sl("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),sl("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),sl("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var si="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Yg=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(si));function Ud(t,e){e=(e&4)!==0;for(var n=0;n<t.length;n++){var l=t[n],a=l.event;l=l.listeners;t:{var s=void 0;if(e)for(var d=l.length-1;0<=d;d--){var g=l[d],S=g.instance,U=g.currentTarget;if(g=g.listener,S!==s&&a.isPropagationStopped())break t;s=g,a.currentTarget=U;try{s(a)}catch(Z){ki(Z)}a.currentTarget=null,s=S}else for(d=0;d<l.length;d++){if(g=l[d],S=g.instance,U=g.currentTarget,g=g.listener,S!==s&&a.isPropagationStopped())break t;s=g,a.currentTarget=U;try{s(a)}catch(Z){ki(Z)}a.currentTarget=null,s=S}}}}function yt(t,e){var n=e[Ac];n===void 0&&(n=e[Ac]=new Set);var l=t+"__bubble";n.has(l)||(Qd(e,t,2,!1),n.add(l))}function af(t,e,n){var l=0;e&&(l|=4),Qd(n,t,l,e)}var Hu="_reactListening"+Math.random().toString(36).slice(2);function uf(t){if(!t[Hu]){t[Hu]=!0,Rr.forEach(function(n){n!=="selectionchange"&&(Yg.has(n)||af(n,!1,t),af(n,!0,t))});var e=t.nodeType===9?t:t.ownerDocument;e===null||e[Hu]||(e[Hu]=!0,af("selectionchange",!1,e))}}function Qd(t,e,n,l){switch(o1(e)){case 2:var a=dA;break;case 8:a=hA;break;default:a=xf}n=a.bind(null,e,n,t),a=void 0,!Cc||e!=="touchstart"&&e!=="touchmove"&&e!=="wheel"||(a=!0),l?a!==void 0?t.addEventListener(e,n,{capture:!0,passive:a}):t.addEventListener(e,n,!0):a!==void 0?t.addEventListener(e,n,{passive:a}):t.addEventListener(e,n,!1)}function cf(t,e,n,l,a){var s=l;if((e&1)===0&&(e&2)===0&&l!==null)t:for(;;){if(l===null)return;var d=l.tag;if(d===3||d===4){var g=l.stateNode.containerInfo;if(g===a)break;if(d===4)for(d=l.return;d!==null;){var S=d.tag;if((S===3||S===4)&&d.stateNode.containerInfo===a)return;d=d.return}for(;g!==null;){if(d=Ul(g),d===null)return;if(S=d.tag,S===5||S===6||S===26||S===27){l=s=d;continue t}g=g.parentNode}}l=l.return}Gr(function(){var U=s,Z=Sc(n),J=[];t:{var Q=m0.get(t);if(Q!==void 0){var G=Ii,lt=t;switch(t){case"keypress":if(Vi(n)===0)break t;case"keydown":case"keyup":G=jm;break;case"focusin":lt="focus",G=wc;break;case"focusout":lt="blur",G=wc;break;case"beforeblur":case"afterblur":G=wc;break;case"click":if(n.button===2)break t;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":G=Zr;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":G=Em;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":G=Bm;break;case r0:case o0:case d0:G=bm;break;case h0:G=Qm;break;case"scroll":case"scrollend":G=vm;break;case"wheel":G=Ym;break;case"copy":case"cut":case"paste":G=Tm;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":G=qr;break;case"toggle":case"beforetoggle":G=Gm}var ft=(e&4)!==0,Mt=!ft&&(t==="scroll"||t==="scrollend"),w=ft?Q!==null?Q+"Capture":null:Q;ft=[];for(var O=U,B;O!==null;){var K=O;if(B=K.stateNode,K=K.tag,K!==5&&K!==26&&K!==27||B===null||w===null||(K=Ma(O,w),K!=null&&ft.push(fi(O,K,B))),Mt)break;O=O.return}0<ft.length&&(Q=new G(Q,lt,null,n,Z),J.push({event:Q,listeners:ft}))}}if((e&7)===0){t:{if(Q=t==="mouseover"||t==="pointerover",G=t==="mouseout"||t==="pointerout",Q&&n!==bc&&(lt=n.relatedTarget||n.fromElement)&&(Ul(lt)||lt[Bl]))break t;if((G||Q)&&(Q=Z.window===Z?Z:(Q=Z.ownerDocument)?Q.defaultView||Q.parentWindow:window,G?(lt=n.relatedTarget||n.toElement,G=U,lt=lt?Ul(lt):null,lt!==null&&(Mt=o(lt),ft=lt.tag,lt!==Mt||ft!==5&&ft!==27&&ft!==6)&&(lt=null)):(G=null,lt=U),G!==lt)){if(ft=Zr,K="onMouseLeave",w="onMouseEnter",O="mouse",(t==="pointerout"||t==="pointerover")&&(ft=qr,K="onPointerLeave",w="onPointerEnter",O="pointer"),Mt=G==null?Q:wa(G),B=lt==null?Q:wa(lt),Q=new ft(K,O+"leave",G,n,Z),Q.target=Mt,Q.relatedTarget=B,K=null,Ul(Z)===U&&(ft=new ft(w,O+"enter",lt,n,Z),ft.target=B,ft.relatedTarget=Mt,K=ft),Mt=K,G&&lt)e:{for(ft=Lg,w=G,O=lt,B=0,K=w;K;K=ft(K))B++;K=0;for(var ct=O;ct;ct=ft(ct))K++;for(;0<B-K;)w=ft(w),B--;for(;0<K-B;)O=ft(O),K--;for(;B--;){if(w===O||O!==null&&w===O.alternate){ft=w;break e}w=ft(w),O=ft(O)}ft=null}else ft=null;G!==null&&zd(J,Q,G,ft,!1),lt!==null&&Mt!==null&&zd(J,Mt,lt,ft,!0)}}t:{if(Q=U?wa(U):window,G=Q.nodeName&&Q.nodeName.toLowerCase(),G==="select"||G==="input"&&Q.type==="file")var St=$r;else if(_r(Q))if(t0)St=Wm;else{St=Jm;var at=km}else G=Q.nodeName,!G||G.toLowerCase()!=="input"||Q.type!=="checkbox"&&Q.type!=="radio"?U&&xc(U.elementType)&&(St=$r):St=Fm;if(St&&(St=St(t,U))){Pr(J,St,n,Z);break t}at&&at(t,Q,U),t==="focusout"&&U&&Q.type==="number"&&U.memoizedProps.value!=null&&pc(Q,"number",Q.value)}switch(at=U?wa(U):window,t){case"focusin":(_r(at)||at.contentEditable==="true")&&(Il=at,Uc=U,Ya=null);break;case"focusout":Ya=Uc=Il=null;break;case"mousedown":Qc=!0;break;case"contextmenu":case"mouseup":case"dragend":Qc=!1,s0(J,n,Z);break;case"selectionchange":if(Pm)break;case"keydown":case"keyup":s0(J,n,Z)}var At;if(jc)t:{switch(t){case"compositionstart":var pt="onCompositionStart";break t;case"compositionend":pt="onCompositionEnd";break t;case"compositionupdate":pt="onCompositionUpdate";break t}pt=void 0}else Zl?Fr(t,n)&&(pt="onCompositionEnd"):t==="keydown"&&n.keyCode===229&&(pt="onCompositionStart");pt&&(Kr&&n.locale!=="ko"&&(Zl||pt!=="onCompositionStart"?pt==="onCompositionEnd"&&Zl&&(At=Xr()):(Rn=Z,Oc="value"in Rn?Rn.value:Rn.textContent,Zl=!0)),at=Bu(U,pt),0<at.length&&(pt=new Ir(pt,t,null,n,Z),J.push({event:pt,listeners:at}),At?pt.data=At:(At=Wr(n),At!==null&&(pt.data=At)))),(At=Vm?Zm(t,n):Im(t,n))&&(pt=Bu(U,"onBeforeInput"),0<pt.length&&(at=new Ir("onBeforeInput","beforeinput",null,n,Z),J.push({event:at,listeners:pt}),at.data=At)),Ug(J,t,U,n,Z)}Ud(J,e)})}function fi(t,e,n){return{instance:t,listener:e,currentTarget:n}}function Bu(t,e){for(var n=e+"Capture",l=[];t!==null;){var a=t,s=a.stateNode;if(a=a.tag,a!==5&&a!==26&&a!==27||s===null||(a=Ma(t,n),a!=null&&l.unshift(fi(t,a,s)),a=Ma(t,e),a!=null&&l.push(fi(t,a,s))),t.tag===3)return l;t=t.return}return[]}function Lg(t){if(t===null)return null;do t=t.return;while(t&&t.tag!==5&&t.tag!==27);return t||null}function zd(t,e,n,l,a){for(var s=e._reactName,d=[];n!==null&&n!==l;){var g=n,S=g.alternate,U=g.stateNode;if(g=g.tag,S!==null&&S===l)break;g!==5&&g!==26&&g!==27||U===null||(S=U,a?(U=Ma(n,s),U!=null&&d.unshift(fi(n,U,S))):a||(U=Ma(n,s),U!=null&&d.push(fi(n,U,S)))),n=n.return}d.length!==0&&t.push({event:e,listeners:d})}var Gg=/\r\n?/g,Xg=/\u0000|\uFFFD/g;function Yd(t){return(typeof t=="string"?t:""+t).replace(Gg,`
`).replace(Xg,"")}function Ld(t,e){return e=Yd(e),Yd(t)===e}function wt(t,e,n,l,a,s){switch(n){case"children":typeof l=="string"?e==="body"||e==="textarea"&&l===""||Gl(t,l):(typeof l=="number"||typeof l=="bigint")&&e!=="body"&&Gl(t,""+l);break;case"className":Yi(t,"class",l);break;case"tabIndex":Yi(t,"tabindex",l);break;case"dir":case"role":case"viewBox":case"width":case"height":Yi(t,n,l);break;case"style":Yr(t,l,s);break;case"data":if(e!=="object"){Yi(t,"data",l);break}case"src":case"href":if(l===""&&(e!=="a"||n!=="href")){t.removeAttribute(n);break}if(l==null||typeof l=="function"||typeof l=="symbol"||typeof l=="boolean"){t.removeAttribute(n);break}l=Gi(""+l),t.setAttribute(n,l);break;case"action":case"formAction":if(typeof l=="function"){t.setAttribute(n,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof s=="function"&&(n==="formAction"?(e!=="input"&&wt(t,e,"name",a.name,a,null),wt(t,e,"formEncType",a.formEncType,a,null),wt(t,e,"formMethod",a.formMethod,a,null),wt(t,e,"formTarget",a.formTarget,a,null)):(wt(t,e,"encType",a.encType,a,null),wt(t,e,"method",a.method,a,null),wt(t,e,"target",a.target,a,null)));if(l==null||typeof l=="symbol"||typeof l=="boolean"){t.removeAttribute(n);break}l=Gi(""+l),t.setAttribute(n,l);break;case"onClick":l!=null&&(t.onclick=tn);break;case"onScroll":l!=null&&yt("scroll",t);break;case"onScrollEnd":l!=null&&yt("scrollend",t);break;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(f(61));if(n=l.__html,n!=null){if(a.children!=null)throw Error(f(60));t.innerHTML=n}}break;case"multiple":t.multiple=l&&typeof l!="function"&&typeof l!="symbol";break;case"muted":t.muted=l&&typeof l!="function"&&typeof l!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(l==null||typeof l=="function"||typeof l=="boolean"||typeof l=="symbol"){t.removeAttribute("xlink:href");break}n=Gi(""+l),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",n);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":l!=null&&typeof l!="function"&&typeof l!="symbol"?t.setAttribute(n,""+l):t.removeAttribute(n);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":l&&typeof l!="function"&&typeof l!="symbol"?t.setAttribute(n,""):t.removeAttribute(n);break;case"capture":case"download":l===!0?t.setAttribute(n,""):l!==!1&&l!=null&&typeof l!="function"&&typeof l!="symbol"?t.setAttribute(n,l):t.removeAttribute(n);break;case"cols":case"rows":case"size":case"span":l!=null&&typeof l!="function"&&typeof l!="symbol"&&!isNaN(l)&&1<=l?t.setAttribute(n,l):t.removeAttribute(n);break;case"rowSpan":case"start":l==null||typeof l=="function"||typeof l=="symbol"||isNaN(l)?t.removeAttribute(n):t.setAttribute(n,l);break;case"popover":yt("beforetoggle",t),yt("toggle",t),zi(t,"popover",l);break;case"xlinkActuate":$e(t,"http://www.w3.org/1999/xlink","xlink:actuate",l);break;case"xlinkArcrole":$e(t,"http://www.w3.org/1999/xlink","xlink:arcrole",l);break;case"xlinkRole":$e(t,"http://www.w3.org/1999/xlink","xlink:role",l);break;case"xlinkShow":$e(t,"http://www.w3.org/1999/xlink","xlink:show",l);break;case"xlinkTitle":$e(t,"http://www.w3.org/1999/xlink","xlink:title",l);break;case"xlinkType":$e(t,"http://www.w3.org/1999/xlink","xlink:type",l);break;case"xmlBase":$e(t,"http://www.w3.org/XML/1998/namespace","xml:base",l);break;case"xmlLang":$e(t,"http://www.w3.org/XML/1998/namespace","xml:lang",l);break;case"xmlSpace":$e(t,"http://www.w3.org/XML/1998/namespace","xml:space",l);break;case"is":zi(t,"is",l);break;case"innerText":case"textContent":break;default:(!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!=="N")&&(n=gm.get(n)||n,zi(t,n,l))}}function sf(t,e,n,l,a,s){switch(n){case"style":Yr(t,l,s);break;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(f(61));if(n=l.__html,n!=null){if(a.children!=null)throw Error(f(60));t.innerHTML=n}}break;case"children":typeof l=="string"?Gl(t,l):(typeof l=="number"||typeof l=="bigint")&&Gl(t,""+l);break;case"onScroll":l!=null&&yt("scroll",t);break;case"onScrollEnd":l!=null&&yt("scrollend",t);break;case"onClick":l!=null&&(t.onclick=tn);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!wr.hasOwnProperty(n))t:{if(n[0]==="o"&&n[1]==="n"&&(a=n.endsWith("Capture"),e=n.slice(2,a?n.length-7:void 0),s=t[oe]||null,s=s!=null?s[n]:null,typeof s=="function"&&t.removeEventListener(e,s,a),typeof l=="function")){typeof s!="function"&&s!==null&&(n in t?t[n]=null:t.hasAttribute(n)&&t.removeAttribute(n)),t.addEventListener(e,l,a);break t}n in t?t[n]=l:l===!0?t.setAttribute(n,""):zi(t,n,l)}}}function ae(t,e,n){switch(e){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":yt("error",t),yt("load",t);var l=!1,a=!1,s;for(s in n)if(n.hasOwnProperty(s)){var d=n[s];if(d!=null)switch(s){case"src":l=!0;break;case"srcSet":a=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(f(137,e));default:wt(t,e,s,d,n,null)}}a&&wt(t,e,"srcSet",n.srcSet,n,null),l&&wt(t,e,"src",n.src,n,null);return;case"input":yt("invalid",t);var g=s=d=a=null,S=null,U=null;for(l in n)if(n.hasOwnProperty(l)){var Z=n[l];if(Z!=null)switch(l){case"name":a=Z;break;case"type":d=Z;break;case"checked":S=Z;break;case"defaultChecked":U=Z;break;case"value":s=Z;break;case"defaultValue":g=Z;break;case"children":case"dangerouslySetInnerHTML":if(Z!=null)throw Error(f(137,e));break;default:wt(t,e,l,Z,n,null)}}Br(t,s,g,S,U,d,a,!1);return;case"select":yt("invalid",t),l=d=s=null;for(a in n)if(n.hasOwnProperty(a)&&(g=n[a],g!=null))switch(a){case"value":s=g;break;case"defaultValue":d=g;break;case"multiple":l=g;default:wt(t,e,a,g,n,null)}e=s,n=d,t.multiple=!!l,e!=null?Ll(t,!!l,e,!1):n!=null&&Ll(t,!!l,n,!0);return;case"textarea":yt("invalid",t),s=a=l=null;for(d in n)if(n.hasOwnProperty(d)&&(g=n[d],g!=null))switch(d){case"value":l=g;break;case"defaultValue":a=g;break;case"children":s=g;break;case"dangerouslySetInnerHTML":if(g!=null)throw Error(f(91));break;default:wt(t,e,d,g,n,null)}Qr(t,l,a,s);return;case"option":for(S in n)if(n.hasOwnProperty(S)&&(l=n[S],l!=null))switch(S){case"selected":t.selected=l&&typeof l!="function"&&typeof l!="symbol";break;default:wt(t,e,S,l,n,null)}return;case"dialog":yt("beforetoggle",t),yt("toggle",t),yt("cancel",t),yt("close",t);break;case"iframe":case"object":yt("load",t);break;case"video":case"audio":for(l=0;l<si.length;l++)yt(si[l],t);break;case"image":yt("error",t),yt("load",t);break;case"details":yt("toggle",t);break;case"embed":case"source":case"link":yt("error",t),yt("load",t);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(U in n)if(n.hasOwnProperty(U)&&(l=n[U],l!=null))switch(U){case"children":case"dangerouslySetInnerHTML":throw Error(f(137,e));default:wt(t,e,U,l,n,null)}return;default:if(xc(e)){for(Z in n)n.hasOwnProperty(Z)&&(l=n[Z],l!==void 0&&sf(t,e,Z,l,n,void 0));return}}for(g in n)n.hasOwnProperty(g)&&(l=n[g],l!=null&&wt(t,e,g,l,n,null))}function Vg(t,e,n,l){switch(e){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var a=null,s=null,d=null,g=null,S=null,U=null,Z=null;for(G in n){var J=n[G];if(n.hasOwnProperty(G)&&J!=null)switch(G){case"checked":break;case"value":break;case"defaultValue":S=J;default:l.hasOwnProperty(G)||wt(t,e,G,null,l,J)}}for(var Q in l){var G=l[Q];if(J=n[Q],l.hasOwnProperty(Q)&&(G!=null||J!=null))switch(Q){case"type":s=G;break;case"name":a=G;break;case"checked":U=G;break;case"defaultChecked":Z=G;break;case"value":d=G;break;case"defaultValue":g=G;break;case"children":case"dangerouslySetInnerHTML":if(G!=null)throw Error(f(137,e));break;default:G!==J&&wt(t,e,Q,G,l,J)}}Ec(t,d,g,S,U,Z,s,a);return;case"select":G=d=g=Q=null;for(s in n)if(S=n[s],n.hasOwnProperty(s)&&S!=null)switch(s){case"value":break;case"multiple":G=S;default:l.hasOwnProperty(s)||wt(t,e,s,null,l,S)}for(a in l)if(s=l[a],S=n[a],l.hasOwnProperty(a)&&(s!=null||S!=null))switch(a){case"value":Q=s;break;case"defaultValue":g=s;break;case"multiple":d=s;default:s!==S&&wt(t,e,a,s,l,S)}e=g,n=d,l=G,Q!=null?Ll(t,!!n,Q,!1):!!l!=!!n&&(e!=null?Ll(t,!!n,e,!0):Ll(t,!!n,n?[]:"",!1));return;case"textarea":G=Q=null;for(g in n)if(a=n[g],n.hasOwnProperty(g)&&a!=null&&!l.hasOwnProperty(g))switch(g){case"value":break;case"children":break;default:wt(t,e,g,null,l,a)}for(d in l)if(a=l[d],s=n[d],l.hasOwnProperty(d)&&(a!=null||s!=null))switch(d){case"value":Q=a;break;case"defaultValue":G=a;break;case"children":break;case"dangerouslySetInnerHTML":if(a!=null)throw Error(f(91));break;default:a!==s&&wt(t,e,d,a,l,s)}Ur(t,Q,G);return;case"option":for(var lt in n)if(Q=n[lt],n.hasOwnProperty(lt)&&Q!=null&&!l.hasOwnProperty(lt))switch(lt){case"selected":t.selected=!1;break;default:wt(t,e,lt,null,l,Q)}for(S in l)if(Q=l[S],G=n[S],l.hasOwnProperty(S)&&Q!==G&&(Q!=null||G!=null))switch(S){case"selected":t.selected=Q&&typeof Q!="function"&&typeof Q!="symbol";break;default:wt(t,e,S,Q,l,G)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var ft in n)Q=n[ft],n.hasOwnProperty(ft)&&Q!=null&&!l.hasOwnProperty(ft)&&wt(t,e,ft,null,l,Q);for(U in l)if(Q=l[U],G=n[U],l.hasOwnProperty(U)&&Q!==G&&(Q!=null||G!=null))switch(U){case"children":case"dangerouslySetInnerHTML":if(Q!=null)throw Error(f(137,e));break;default:wt(t,e,U,Q,l,G)}return;default:if(xc(e)){for(var Mt in n)Q=n[Mt],n.hasOwnProperty(Mt)&&Q!==void 0&&!l.hasOwnProperty(Mt)&&sf(t,e,Mt,void 0,l,Q);for(Z in l)Q=l[Z],G=n[Z],!l.hasOwnProperty(Z)||Q===G||Q===void 0&&G===void 0||sf(t,e,Z,Q,l,G);return}}for(var w in n)Q=n[w],n.hasOwnProperty(w)&&Q!=null&&!l.hasOwnProperty(w)&&wt(t,e,w,null,l,Q);for(J in l)Q=l[J],G=n[J],!l.hasOwnProperty(J)||Q===G||Q==null&&G==null||wt(t,e,J,Q,l,G)}function Gd(t){switch(t){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function Zg(){if(typeof performance.getEntriesByType=="function"){for(var t=0,e=0,n=performance.getEntriesByType("resource"),l=0;l<n.length;l++){var a=n[l],s=a.transferSize,d=a.initiatorType,g=a.duration;if(s&&g&&Gd(d)){for(d=0,g=a.responseEnd,l+=1;l<n.length;l++){var S=n[l],U=S.startTime;if(U>g)break;var Z=S.transferSize,J=S.initiatorType;Z&&Gd(J)&&(S=S.responseEnd,d+=Z*(S<g?1:(g-U)/(S-U)))}if(--l,e+=8*(s+d)/(a.duration/1e3),t++,10<t)break}}if(0<t)return e/t/1e6}return navigator.connection&&(t=navigator.connection.downlink,typeof t=="number")?t:5}var ff=null,rf=null;function Uu(t){return t.nodeType===9?t:t.ownerDocument}function Xd(t){switch(t){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function Vd(t,e){if(t===0)switch(e){case"svg":return 1;case"math":return 2;default:return 0}return t===1&&e==="foreignObject"?0:t}function of(t,e){return t==="textarea"||t==="noscript"||typeof e.children=="string"||typeof e.children=="number"||typeof e.children=="bigint"||typeof e.dangerouslySetInnerHTML=="object"&&e.dangerouslySetInnerHTML!==null&&e.dangerouslySetInnerHTML.__html!=null}var df=null;function Ig(){var t=window.event;return t&&t.type==="popstate"?t===df?!1:(df=t,!0):(df=null,!1)}var Zd=typeof setTimeout=="function"?setTimeout:void 0,qg=typeof clearTimeout=="function"?clearTimeout:void 0,Id=typeof Promise=="function"?Promise:void 0,Kg=typeof queueMicrotask=="function"?queueMicrotask:typeof Id<"u"?function(t){return Id.resolve(null).then(t).catch(kg)}:Zd;function kg(t){setTimeout(function(){throw t})}function qn(t){return t==="head"}function qd(t,e){var n=e,l=0;do{var a=n.nextSibling;if(t.removeChild(n),a&&a.nodeType===8)if(n=a.data,n==="/$"||n==="/&"){if(l===0){t.removeChild(a),va(e);return}l--}else if(n==="$"||n==="$?"||n==="$~"||n==="$!"||n==="&")l++;else if(n==="html")ri(t.ownerDocument.documentElement);else if(n==="head"){n=t.ownerDocument.head,ri(n);for(var s=n.firstChild;s;){var d=s.nextSibling,g=s.nodeName;s[Ra]||g==="SCRIPT"||g==="STYLE"||g==="LINK"&&s.rel.toLowerCase()==="stylesheet"||n.removeChild(s),s=d}}else n==="body"&&ri(t.ownerDocument.body);n=a}while(n);va(e)}function Kd(t,e){var n=t;t=0;do{var l=n.nextSibling;if(n.nodeType===1?e?(n._stashedDisplay=n.style.display,n.style.display="none"):(n.style.display=n._stashedDisplay||"",n.getAttribute("style")===""&&n.removeAttribute("style")):n.nodeType===3&&(e?(n._stashedText=n.nodeValue,n.nodeValue=""):n.nodeValue=n._stashedText||""),l&&l.nodeType===8)if(n=l.data,n==="/$"){if(t===0)break;t--}else n!=="$"&&n!=="$?"&&n!=="$~"&&n!=="$!"||t++;n=l}while(n)}function hf(t){var e=t.firstChild;for(e&&e.nodeType===10&&(e=e.nextSibling);e;){var n=e;switch(e=e.nextSibling,n.nodeName){case"HTML":case"HEAD":case"BODY":hf(n),vc(n);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(n.rel.toLowerCase()==="stylesheet")continue}t.removeChild(n)}}function Jg(t,e,n,l){for(;t.nodeType===1;){var a=n;if(t.nodeName.toLowerCase()!==e.toLowerCase()){if(!l&&(t.nodeName!=="INPUT"||t.type!=="hidden"))break}else if(l){if(!t[Ra])switch(e){case"meta":if(!t.hasAttribute("itemprop"))break;return t;case"link":if(s=t.getAttribute("rel"),s==="stylesheet"&&t.hasAttribute("data-precedence"))break;if(s!==a.rel||t.getAttribute("href")!==(a.href==null||a.href===""?null:a.href)||t.getAttribute("crossorigin")!==(a.crossOrigin==null?null:a.crossOrigin)||t.getAttribute("title")!==(a.title==null?null:a.title))break;return t;case"style":if(t.hasAttribute("data-precedence"))break;return t;case"script":if(s=t.getAttribute("src"),(s!==(a.src==null?null:a.src)||t.getAttribute("type")!==(a.type==null?null:a.type)||t.getAttribute("crossorigin")!==(a.crossOrigin==null?null:a.crossOrigin))&&s&&t.hasAttribute("async")&&!t.hasAttribute("itemprop"))break;return t;default:return t}}else if(e==="input"&&t.type==="hidden"){var s=a.name==null?null:""+a.name;if(a.type==="hidden"&&t.getAttribute("name")===s)return t}else return t;if(t=Le(t.nextSibling),t===null)break}return null}function Fg(t,e,n){if(e==="")return null;for(;t.nodeType!==3;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!n||(t=Le(t.nextSibling),t===null))return null;return t}function kd(t,e){for(;t.nodeType!==8;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!e||(t=Le(t.nextSibling),t===null))return null;return t}function mf(t){return t.data==="$?"||t.data==="$~"}function gf(t){return t.data==="$!"||t.data==="$?"&&t.ownerDocument.readyState!=="loading"}function Wg(t,e){var n=t.ownerDocument;if(t.data==="$~")t._reactRetry=e;else if(t.data!=="$?"||n.readyState!=="loading")e();else{var l=function(){e(),n.removeEventListener("DOMContentLoaded",l)};n.addEventListener("DOMContentLoaded",l),t._reactRetry=l}}function Le(t){for(;t!=null;t=t.nextSibling){var e=t.nodeType;if(e===1||e===3)break;if(e===8){if(e=t.data,e==="$"||e==="$!"||e==="$?"||e==="$~"||e==="&"||e==="F!"||e==="F")break;if(e==="/$"||e==="/&")return null}}return t}var Af=null;function Jd(t){t=t.nextSibling;for(var e=0;t;){if(t.nodeType===8){var n=t.data;if(n==="/$"||n==="/&"){if(e===0)return Le(t.nextSibling);e--}else n!=="$"&&n!=="$!"&&n!=="$?"&&n!=="$~"&&n!=="&"||e++}t=t.nextSibling}return null}function Fd(t){t=t.previousSibling;for(var e=0;t;){if(t.nodeType===8){var n=t.data;if(n==="$"||n==="$!"||n==="$?"||n==="$~"||n==="&"){if(e===0)return t;e--}else n!=="/$"&&n!=="/&"||e++}t=t.previousSibling}return null}function Wd(t,e,n){switch(e=Uu(n),t){case"html":if(t=e.documentElement,!t)throw Error(f(452));return t;case"head":if(t=e.head,!t)throw Error(f(453));return t;case"body":if(t=e.body,!t)throw Error(f(454));return t;default:throw Error(f(451))}}function ri(t){for(var e=t.attributes;e.length;)t.removeAttributeNode(e[0]);vc(t)}var Ge=new Map,_d=new Set;function Qu(t){return typeof t.getRootNode=="function"?t.getRootNode():t.nodeType===9?t:t.ownerDocument}var vn=_.d;_.d={f:_g,r:Pg,D:$g,C:tA,L:eA,m:nA,X:aA,S:lA,M:iA};function _g(){var t=vn.f(),e=Du();return t||e}function Pg(t){var e=Ql(t);e!==null&&e.tag===5&&e.type==="form"?mo(e):vn.r(t)}var ma=typeof document>"u"?null:document;function Pd(t,e,n){var l=ma;if(l&&typeof e=="string"&&e){var a=Ne(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),_d.has(a)||(_d.add(a),t={rel:t,crossOrigin:n,href:e},l.querySelector(a)===null&&(e=l.createElement("link"),ae(e,"link",t),Ft(e),l.head.appendChild(e)))}}function $g(t){vn.D(t),Pd("dns-prefetch",t,null)}function tA(t,e){vn.C(t,e),Pd("preconnect",t,e)}function eA(t,e,n){vn.L(t,e,n);var l=ma;if(l&&t&&e){var a='link[rel="preload"][as="'+Ne(e)+'"]';e==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+Ne(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+Ne(n.imageSizes)+'"]')):a+='[href="'+Ne(t)+'"]';var s=a;switch(e){case"style":s=ga(t);break;case"script":s=Aa(t)}Ge.has(s)||(t=T({rel:"preload",href:e==="image"&&n&&n.imageSrcSet?void 0:t,as:e},n),Ge.set(s,t),l.querySelector(a)!==null||e==="style"&&l.querySelector(oi(s))||e==="script"&&l.querySelector(di(s))||(e=l.createElement("link"),ae(e,"link",t),Ft(e),l.head.appendChild(e)))}}function nA(t,e){vn.m(t,e);var n=ma;if(n&&t){var l=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+Ne(l)+'"][href="'+Ne(t)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Aa(t)}if(!Ge.has(s)&&(t=T({rel:"modulepreload",href:t},e),Ge.set(s,t),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(di(s)))return}l=n.createElement("link"),ae(l,"link",t),Ft(l),n.head.appendChild(l)}}}function lA(t,e,n){vn.S(t,e,n);var l=ma;if(l&&t){var a=zl(l).hoistableStyles,s=ga(t);e=e||"default";var d=a.get(s);if(!d){var g={loading:0,preload:null};if(d=l.querySelector(oi(s)))g.loading=5;else{t=T({rel:"stylesheet",href:t,"data-precedence":e},n),(n=Ge.get(s))&&vf(t,n);var S=d=l.createElement("link");Ft(S),ae(S,"link",t),S._p=new Promise(function(U,Z){S.onload=U,S.onerror=Z}),S.addEventListener("load",function(){g.loading|=1}),S.addEventListener("error",function(){g.loading|=2}),g.loading|=4,zu(d,e,l)}d={type:"stylesheet",instance:d,count:1,state:g},a.set(s,d)}}}function aA(t,e){vn.X(t,e);var n=ma;if(n&&t){var l=zl(n).hoistableScripts,a=Aa(t),s=l.get(a);s||(s=n.querySelector(di(a)),s||(t=T({src:t,async:!0},e),(e=Ge.get(a))&&yf(t,e),s=n.createElement("script"),Ft(s),ae(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function iA(t,e){vn.M(t,e);var n=ma;if(n&&t){var l=zl(n).hoistableScripts,a=Aa(t),s=l.get(a);s||(s=n.querySelector(di(a)),s||(t=T({src:t,async:!0,type:"module"},e),(e=Ge.get(a))&&yf(t,e),s=n.createElement("script"),Ft(s),ae(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function $d(t,e,n,l){var a=(a=ot.current)?Qu(a):null;if(!a)throw Error(f(446));switch(t){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(e=ga(n.href),n=zl(a).hoistableStyles,l=n.get(e),l||(l={type:"style",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){t=ga(n.href);var s=zl(a).hoistableStyles,d=s.get(t);if(d||(a=a.ownerDocument||a,d={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(t,d),(s=a.querySelector(oi(t)))&&!s._p&&(d.instance=s,d.state.loading=5),Ge.has(t)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ge.set(t,n),s||uA(a,t,n,d.state))),e&&l===null)throw Error(f(528,""));return d}if(e&&l!==null)throw Error(f(529,""));return null;case"script":return e=n.async,n=n.src,typeof n=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Aa(n),n=zl(a).hoistableScripts,l=n.get(e),l||(l={type:"script",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(f(444,t))}}function ga(t){return'href="'+Ne(t)+'"'}function oi(t){return'link[rel="stylesheet"]['+t+"]"}function t1(t){return T({},t,{"data-precedence":t.precedence,precedence:null})}function uA(t,e,n,l){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?l.loading=1:(e=t.createElement("link"),l.preload=e,e.addEventListener("load",function(){return l.loading|=1}),e.addEventListener("error",function(){return l.loading|=2}),ae(e,"link",n),Ft(e),t.head.appendChild(e))}function Aa(t){return'[src="'+Ne(t)+'"]'}function di(t){return"script[async]"+t}function e1(t,e,n){if(e.count++,e.instance===null)switch(e.type){case"style":var l=t.querySelector('style[data-href~="'+Ne(n.href)+'"]');if(l)return e.instance=l,Ft(l),l;var a=T({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),Ft(l),ae(l,"style",a),zu(l,n.precedence,t),e.instance=l;case"stylesheet":a=ga(n.href);var s=t.querySelector(oi(a));if(s)return e.state.loading|=4,e.instance=s,Ft(s),s;l=t1(n),(a=Ge.get(a))&&vf(l,a),s=(t.ownerDocument||t).createElement("link"),Ft(s);var d=s;return d._p=new Promise(function(g,S){d.onload=g,d.onerror=S}),ae(s,"link",l),e.state.loading|=4,zu(s,n.precedence,t),e.instance=s;case"script":return s=Aa(n.src),(a=t.querySelector(di(s)))?(e.instance=a,Ft(a),a):(l=n,(a=Ge.get(s))&&(l=T({},n),yf(l,a)),t=t.ownerDocument||t,a=t.createElement("script"),Ft(a),ae(a,"link",l),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(f(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(l=e.instance,e.state.loading|=4,zu(l,n.precedence,t));return e.instance}function zu(t,e,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,d=0;d<l.length;d++){var g=l[d];if(g.dataset.precedence===e)s=g;else if(s!==a)break}s?s.parentNode.insertBefore(t,s.nextSibling):(e=n.nodeType===9?n.head:n,e.insertBefore(t,e.firstChild))}function vf(t,e){t.crossOrigin==null&&(t.crossOrigin=e.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=e.referrerPolicy),t.title==null&&(t.title=e.title)}function yf(t,e){t.crossOrigin==null&&(t.crossOrigin=e.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=e.referrerPolicy),t.integrity==null&&(t.integrity=e.integrity)}var Yu=null;function n1(t,e,n){if(Yu===null){var l=new Map,a=Yu=new Map;a.set(n,l)}else a=Yu,l=a.get(n),l||(l=new Map,a.set(n,l));if(l.has(t))return l;for(l.set(t,null),n=n.getElementsByTagName(t),a=0;a<n.length;a++){var s=n[a];if(!(s[Ra]||s[te]||t==="link"&&s.getAttribute("rel")==="stylesheet")&&s.namespaceURI!=="http://www.w3.org/2000/svg"){var d=s.getAttribute(e)||"";d=t+d;var g=l.get(d);g?g.push(s):l.set(d,[s])}}return l}function l1(t,e,n){t=t.ownerDocument||t,t.head.insertBefore(n,e==="title"?t.querySelector("head > title"):null)}function cA(t,e,n){if(n===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function a1(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function sA(t,e,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=ga(l.href),s=e.querySelector(oi(a));if(s){e=s._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Lu.bind(t),e.then(t,t)),n.state.loading|=4,n.instance=s,Ft(s);return}s=e.ownerDocument||e,l=t1(l),(a=Ge.get(a))&&vf(l,a),s=s.createElement("link"),Ft(s);var d=s;d._p=new Promise(function(g,S){d.onload=g,d.onerror=S}),ae(s,"link",l),n.instance=s}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(n,e),(e=n.state.preload)&&(n.state.loading&3)===0&&(t.count++,n=Lu.bind(t),e.addEventListener("load",n),e.addEventListener("error",n))}}var Ef=0;function fA(t,e){return t.stylesheets&&t.count===0&&Xu(t,t.stylesheets),0<t.count||0<t.imgCount?function(n){var l=setTimeout(function(){if(t.stylesheets&&Xu(t,t.stylesheets),t.unsuspend){var s=t.unsuspend;t.unsuspend=null,s()}},6e4+e);0<t.imgBytes&&Ef===0&&(Ef=62500*Zg());var a=setTimeout(function(){if(t.waitingForImages=!1,t.count===0&&(t.stylesheets&&Xu(t,t.stylesheets),t.unsuspend)){var s=t.unsuspend;t.unsuspend=null,s()}},(t.imgBytes>Ef?50:800)+e);return t.unsuspend=n,function(){t.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function Lu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Xu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(rA,t),Gu=null,Lu.call(t))}function rA(t,e){if(!(e.state.loading&4)){var n=Gu.get(t);if(n)var l=n.get(null);else{n=new Map,Gu.set(t,n);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s<a.length;s++){var d=a[s];(d.nodeName==="LINK"||d.getAttribute("media")!=="not all")&&(n.set(d.dataset.precedence,d),l=d)}l&&n.set(null,l)}a=e.instance,d=a.getAttribute("data-precedence"),s=n.get(d)||l,s===l&&n.set(null,a),n.set(d,a),this.count++,l=Lu.bind(this),a.addEventListener("load",l),a.addEventListener("error",l),s?s.parentNode.insertBefore(a,s.nextSibling):(t=t.nodeType===9?t.head:t,t.insertBefore(a,t.firstChild)),e.state.loading|=4}}var hi={$$typeof:N,Provider:null,Consumer:null,_currentValue:$,_currentValue2:$,_threadCount:0};function oA(t,e,n,l,a,s,d,g,S){this.tag=1,this.containerInfo=t,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=hc(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=hc(0),this.hiddenUpdates=hc(null),this.identifierPrefix=l,this.onUncaughtError=a,this.onCaughtError=s,this.onRecoverableError=d,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=S,this.incompleteTransitions=new Map}function i1(t,e,n,l,a,s,d,g,S,U,Z,J){return t=new oA(t,e,n,d,S,U,Z,J,g),e=1,s===!0&&(e|=24),s=Te(3,null,null,e),t.current=s,s.stateNode=t,e=_c(),e.refCount++,t.pooledCache=e,e.refCount++,s.memoizedState={element:l,isDehydrated:n,cache:e},es(s),t}function u1(t){return t?(t=kl,t):kl}function c1(t,e,n,l,a,s){a=u1(a),l.context===null?l.context=a:l.pendingContext=a,l=Bn(e),l.payload={element:n},s=s===void 0?null:s,s!==null&&(l.callback=s),n=Un(t,l,e),n!==null&&(ve(n,t,e),qa(n,t,e))}function s1(t,e){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var n=t.retryLane;t.retryLane=n!==0&&n<e?n:e}}function pf(t,e){s1(t,e),(t=t.alternate)&&s1(t,e)}function f1(t){if(t.tag===13||t.tag===31){var e=dl(t,67108864);e!==null&&ve(e,t,67108864),pf(t,67108864)}}function r1(t){if(t.tag===13||t.tag===31){var e=we();e=mc(e);var n=dl(t,e);n!==null&&ve(n,t,e),pf(t,e)}}var Vu=!0;function dA(t,e,n,l){var a=M.T;M.T=null;var s=_.p;try{_.p=2,xf(t,e,n,l)}finally{_.p=s,M.T=a}}function hA(t,e,n,l){var a=M.T;M.T=null;var s=_.p;try{_.p=8,xf(t,e,n,l)}finally{_.p=s,M.T=a}}function xf(t,e,n,l){if(Vu){var a=bf(l);if(a===null)cf(t,e,l,Zu,n),d1(t,l);else if(gA(a,t,e,n,l))l.stopPropagation();else if(d1(t,l),e&4&&-1<mA.indexOf(t)){for(;a!==null;){var s=Ql(a);if(s!==null)switch(s.tag){case 3:if(s=s.stateNode,s.current.memoizedState.isDehydrated){var d=cl(s.pendingLanes);if(d!==0){var g=s;for(g.pendingLanes|=2,g.entangledLanes|=2;d;){var S=1<<31-be(d);g.entanglements[1]|=S,d&=~S}_e(s),(Ct&6)===0&&(Cu=pe()+500,ci(0))}}break;case 31:case 13:g=dl(s,2),g!==null&&ve(g,s,2),Du(),pf(s,2)}if(s=bf(l),s===null&&cf(t,e,l,Zu,n),s===a)break;a=s}a!==null&&l.stopPropagation()}else cf(t,e,l,null,n)}}function bf(t){return t=Sc(t),Sf(t)}var Zu=null;function Sf(t){if(Zu=null,t=Ul(t),t!==null){var e=o(t);if(e===null)t=null;else{var n=e.tag;if(n===13){if(t=h(e),t!==null)return t;t=null}else if(n===31){if(t=v(e),t!==null)return t;t=null}else if(n===3){if(e.stateNode.current.memoizedState.isDehydrated)return e.tag===3?e.stateNode.containerInfo:null;t=null}else e!==t&&(t=null)}}return Zu=t,null}function o1(t){switch(t){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch($h()){case yr:return 2;case Er:return 8;case Ni:case tm:return 32;case pr:return 268435456;default:return 32}default:return 32}}var Tf=!1,Kn=null,kn=null,Jn=null,mi=new Map,gi=new Map,Fn=[],mA="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function d1(t,e){switch(t){case"focusin":case"focusout":Kn=null;break;case"dragenter":case"dragleave":kn=null;break;case"mouseover":case"mouseout":Jn=null;break;case"pointerover":case"pointerout":mi.delete(e.pointerId);break;case"gotpointercapture":case"lostpointercapture":gi.delete(e.pointerId)}}function Ai(t,e,n,l,a,s){return t===null||t.nativeEvent!==s?(t={blockedOn:e,domEventName:n,eventSystemFlags:l,nativeEvent:s,targetContainers:[a]},e!==null&&(e=Ql(e),e!==null&&f1(e)),t):(t.eventSystemFlags|=l,e=t.targetContainers,a!==null&&e.indexOf(a)===-1&&e.push(a),t)}function gA(t,e,n,l,a){switch(e){case"focusin":return Kn=Ai(Kn,t,e,n,l,a),!0;case"dragenter":return kn=Ai(kn,t,e,n,l,a),!0;case"mouseover":return Jn=Ai(Jn,t,e,n,l,a),!0;case"pointerover":var s=a.pointerId;return mi.set(s,Ai(mi.get(s)||null,t,e,n,l,a)),!0;case"gotpointercapture":return s=a.pointerId,gi.set(s,Ai(gi.get(s)||null,t,e,n,l,a)),!0}return!1}function h1(t){var e=Ul(t.target);if(e!==null){var n=o(e);if(n!==null){if(e=n.tag,e===13){if(e=h(n),e!==null){t.blockedOn=e,Or(t.priority,function(){r1(n)});return}}else if(e===31){if(e=v(n),e!==null){t.blockedOn=e,Or(t.priority,function(){r1(n)});return}}else if(e===3&&n.stateNode.current.memoizedState.isDehydrated){t.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}t.blockedOn=null}function Iu(t){if(t.blockedOn!==null)return!1;for(var e=t.targetContainers;0<e.length;){var n=bf(t.nativeEvent);if(n===null){n=t.nativeEvent;var l=new n.constructor(n.type,n);bc=l,n.target.dispatchEvent(l),bc=null}else return e=Ql(n),e!==null&&f1(e),t.blockedOn=n,!1;e.shift()}return!0}function m1(t,e,n){Iu(t)&&n.delete(e)}function AA(){Tf=!1,Kn!==null&&Iu(Kn)&&(Kn=null),kn!==null&&Iu(kn)&&(kn=null),Jn!==null&&Iu(Jn)&&(Jn=null),mi.forEach(m1),gi.forEach(m1)}function qu(t,e){t.blockedOn===e&&(t.blockedOn=null,Tf||(Tf=!0,i.unstable_scheduleCallback(i.unstable_NormalPriority,AA)))}var Ku=null;function g1(t){Ku!==t&&(Ku=t,i.unstable_scheduleCallback(i.unstable_NormalPriority,function(){Ku===t&&(Ku=null);for(var e=0;e<t.length;e+=3){var n=t[e],l=t[e+1],a=t[e+2];if(typeof l!="function"){if(Sf(l||n)===null)continue;break}var s=Ql(n);s!==null&&(t.splice(e,3),e-=3,xs(s,{pending:!0,data:a,method:n.method,action:l},l,a))}}))}function va(t){function e(S){return qu(S,t)}Kn!==null&&qu(Kn,t),kn!==null&&qu(kn,t),Jn!==null&&qu(Jn,t),mi.forEach(e),gi.forEach(e);for(var n=0;n<Fn.length;n++){var l=Fn[n];l.blockedOn===t&&(l.blockedOn=null)}for(;0<Fn.length&&(n=Fn[0],n.blockedOn===null);)h1(n),n.blockedOn===null&&Fn.shift();if(n=(t.ownerDocument||t).$$reactFormReplay,n!=null)for(l=0;l<n.length;l+=3){var a=n[l],s=n[l+1],d=a[oe]||null;if(typeof s=="function")d||g1(n);else if(d){var g=null;if(s&&s.hasAttribute("formAction")){if(a=s,d=s[oe]||null)g=d.formAction;else if(Sf(a)!==null)continue}else g=d.action;typeof g=="function"?n[l+1]=g:(n.splice(l,3),l-=3),g1(n)}}}function A1(){function t(s){s.canIntercept&&s.info==="react-transition"&&s.intercept({handler:function(){return new Promise(function(d){return a=d})},focusReset:"manual",scroll:"manual"})}function e(){a!==null&&(a(),a=null),l||setTimeout(n,20)}function n(){if(!l&&!navigation.transition){var s=navigation.currentEntry;s&&s.url!=null&&navigation.navigate(s.url,{state:s.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var l=!1,a=null;return navigation.addEventListener("navigate",t),navigation.addEventListener("navigatesuccess",e),navigation.addEventListener("navigateerror",e),setTimeout(n,100),function(){l=!0,navigation.removeEventListener("navigate",t),navigation.removeEventListener("navigatesuccess",e),navigation.removeEventListener("navigateerror",e),a!==null&&(a(),a=null)}}}function Cf(t){this._internalRoot=t}ku.prototype.render=Cf.prototype.render=function(t){var e=this._internalRoot;if(e===null)throw Error(f(409));var n=e.current,l=we();c1(n,l,t,e,null,null)},ku.prototype.unmount=Cf.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var e=t.containerInfo;c1(t.current,2,null,t,null,null),Du(),e[Bl]=null}};function ku(t){this._internalRoot=t}ku.prototype.unstable_scheduleHydration=function(t){if(t){var e=Cr();t={blockedOn:null,target:t,priority:e};for(var n=0;n<Fn.length&&e!==0&&e<Fn[n].priority;n++);Fn.splice(n,0,t),n===0&&h1(t)}};var v1=u.version;if(v1!=="19.2.1")throw Error(f(527,v1,"19.2.1"));_.findDOMNode=function(t){var e=t._reactInternals;if(e===void 0)throw typeof t.render=="function"?Error(f(188)):(t=Object.keys(t).join(","),Error(f(268,t)));return t=A(e),t=t!==null?x(t):null,t=t===null?null:t.stateNode,t};var vA={bundleType:0,version:"19.2.1",rendererPackageName:"react-dom",currentDispatcherRef:M,reconcilerVersion:"19.2.1"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Ju=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Ju.isDisabled&&Ju.supportsFiber)try{Ca=Ju.inject(vA),xe=Ju}catch{}}return pi.createRoot=function(t,e){if(!r(t))throw Error(f(299));var n=!1,l="",a=To,s=Co,d=Oo;return e!=null&&(e.unstable_strictMode===!0&&(n=!0),e.identifierPrefix!==void 0&&(l=e.identifierPrefix),e.onUncaughtError!==void 0&&(a=e.onUncaughtError),e.onCaughtError!==void 0&&(s=e.onCaughtError),e.onRecoverableError!==void 0&&(d=e.onRecoverableError)),e=i1(t,1,!1,null,null,n,l,null,a,s,d,A1),t[Bl]=e.current,uf(t),new Cf(e)},pi.hydrateRoot=function(t,e,n){if(!r(t))throw Error(f(299));var l=!1,a="",s=To,d=Co,g=Oo,S=null;return n!=null&&(n.unstable_strictMode===!0&&(l=!0),n.identifierPrefix!==void 0&&(a=n.identifierPrefix),n.onUncaughtError!==void 0&&(s=n.onUncaughtError),n.onCaughtError!==void 0&&(d=n.onCaughtError),n.onRecoverableError!==void 0&&(g=n.onRecoverableError),n.formState!==void 0&&(S=n.formState)),e=i1(t,1,!0,e,n??null,l,a,S,s,d,g,A1),e.context=u1(null),n=e.current,l=we(),l=mc(l),a=Bn(l),a.callback=null,Un(n,a,l),n=l,e.current.lanes=n,Da(e,n),_e(e),t[Bl]=e.current,uf(t),new ku(e)},pi.version="19.2.1",pi}var y2;function c3(){if(y2)return Yf.exports;y2=1;function i(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(u){console.error(u)}}return i(),Yf.exports=u3(),Yf.exports}var s3=c3();class uc{constructor(){this.project=[],this.status=[],this.text=[],this.labels=[],this.annotations=[]}empty(){return this.project.length+this.status.length+this.text.length+this.labels.length+this.annotations.length===0}static parse(u){const c=uc.tokenize(u),f=new Set,r=new Set,o=[],h=new Set,v=new Set;for(let A of c){const x=A.startsWith("!");if(x&&(A=A.slice(1)),A.startsWith("p:")){f.add({name:A.slice(2),not:x});continue}if(A.startsWith("s:")){r.add({name:A.slice(2),not:x});continue}if(A.startsWith("@")){h.add({name:A,not:x});continue}if(A.startsWith("annot:")){v.add({name:A.slice(6),not:x});continue}o.push({name:A.toLowerCase(),not:x})}const y=new uc;return y.text=o,y.project=[...f],y.status=[...r],y.labels=[...h],y.annotations=[...v],y}static tokenize(u){const c=[];let f,r=[];for(let o=0;o<u.length;++o){const h=u[o];if(f&&h==="\\"&&u[o+1]===f){r.push(f),++o;continue}if(h==='"'||h==="'"){f===h?(c.push(r.join("").toLowerCase()),r=[],f=void 0):f?r.push(h):f=h;continue}if(f){r.push(h);continue}if(h===" "){r.length&&(c.push(r.join("").toLowerCase()),r=[]);continue}r.push(h)}return r.length&&c.push(r.join("").toLowerCase()),c}matches(u){const c=f3(u);if(this.project.length&&!!!this.project.find(r=>{const o=c.project.includes(r.name);return r.not?!o:o}))return!1;if(this.status.length){if(!!!this.status.find(r=>{const o=c.status.includes(r.name);return r.not?!o:o}))return!1}else if(c.status==="skipped")return!1;return!(this.text.length&&!this.text.every(r=>{if(c.text.includes(r.name))return!r.not;const[o,h,v]=r.name.split(":");return c.file.includes(o)&&c.line===h&&(v===void 0||c.column===v)?!r.not:!!r.not})||this.labels.length&&!this.labels.every(r=>{const o=c.labels.includes(r.name);return r.not?!o:o})||this.annotations.length&&!this.annotations.every(r=>{const o=c.annotations.some(h=>h.includes(r.name));return r.not?!o:o}))}}const E2=Symbol("searchValues");function f3(i){const u=i[E2];if(u)return u;let c="passed";i.outcome==="unexpected"&&(c="failed"),i.outcome==="flaky"&&(c="flaky"),i.outcome==="skipped"&&(c="skipped");const f={text:(c+" "+i.projectName+" "+i.tags.join(" ")+" "+i.location.file+" "+i.path.join(" ")+" "+i.title).toLowerCase(),project:i.projectName.toLowerCase(),status:c,file:i.location.file,line:String(i.location.line),column:String(i.location.column),labels:i.tags.map(r=>r.toLowerCase()),annotations:i.annotations.map(r=>r.type.toLowerCase()+"="+(r.description??"").toLowerCase())};return i[E2]=f,f}const r3=/("[^"]*"|"[^"]*$|\S+)/g;function Ml(i,u,c){const f=new URLSearchParams(i),o=[...(i.get("q")??"").matchAll(r3)].map(y=>{const A=y[0];return A.startsWith('"')&&A.endsWith('"')&&A.length>1?A.slice(1,A.length-1):A});if(c)return f.set("q",p2(o.includes(u)?o.filter(y=>y!==u):[...o,u])),"#?"+f;let h;u.startsWith("s:")&&(h="s:"),u.startsWith("p:")&&(h="p:"),u.startsWith("@")&&(h="@");const v=o.filter(y=>!y.startsWith(h));return v.push(u),f.set("q",p2(v)),"#?"+f}function p2(i){return i.map(u=>/\s/.test(u)?`"${u}"`:u).join(" ").trim()}const o3=()=>m.jsx("span",{className:"octicon",style:{width:16,height:16}}),Oh=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon subnav-search-icon",children:m.jsx("path",{fillRule:"evenodd",d:"M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"})}),Mi=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16",className:"octicon color-fg-muted",children:m.jsx("path",{fillRule:"evenodd",d:"M12.78 6.22a.75.75 0 010 1.06l-4.25 4.25a.75.75 0 01-1.06 0L3.22 7.28a.75.75 0 011.06-1.06L8 9.94l3.72-3.72a.75.75 0 011.06 0z"})}),Sa=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon color-fg-muted",children:m.jsx("path",{fillRule:"evenodd",d:"M6.22 3.22a.75.75 0 011.06 0l4.25 4.25a.75.75 0 010 1.06l-4.25 4.25a.75.75 0 01-1.06-1.06L9.94 8 6.22 4.28a.75.75 0 010-1.06z"})}),Dh=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon color-text-warning",children:m.jsx("path",{fillRule:"evenodd",d:"M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zm-1.763-.707c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0114.082 15H1.918a1.75 1.75 0 01-1.543-2.575L6.457 1.047zM9 11a1 1 0 11-2 0 1 1 0 012 0zm-.25-5.25a.75.75 0 00-1.5 0v2.5a.75.75 0 001.5 0v-2.5z"})}),Rh=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon color-fg-muted",children:m.jsx("path",{fillRule:"evenodd",d:"M3.5 1.75a.25.25 0 01.25-.25h3a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h2.086a.25.25 0 01.177.073l2.914 2.914a.25.25 0 01.073.177v8.586a.25.25 0 01-.25.25h-.5a.75.75 0 000 1.5h.5A1.75 1.75 0 0014 13.25V4.664c0-.464-.184-.909-.513-1.237L10.573.513A1.75 1.75 0 009.336 0H3.75A1.75 1.75 0 002 1.75v11.5c0 .649.353 1.214.874 1.515a.75.75 0 10.752-1.298.25.25 0 01-.126-.217V1.75zM8.75 3a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h-.5zM6 5.25a.75.75 0 01.75-.75h.5a.75.75 0 010 1.5h-.5A.75.75 0 016 5.25zm2 1.5A.75.75 0 018.75 6h.5a.75.75 0 010 1.5h-.5A.75.75 0 018 6.75zm-1.25.75a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h-.5zM8 9.75A.75.75 0 018.75 9h.5a.75.75 0 010 1.5h-.5A.75.75 0 018 9.75zm-.75.75a1.75 1.75 0 00-1.75 1.75v3c0 .414.336.75.75.75h2.5a.75.75 0 00.75-.75v-3a1.75 1.75 0 00-1.75-1.75h-.5zM7 12.25a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v2.25H7v-2.25z"})}),d3=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon color-fg-muted indirect-attachment-indicator",children:m.jsx("path",{fillRule:"evenodd",d:"M3.5 1.75a.25.25 0 01.25-.25h3a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h2.086a.25.25 0 01.177.073l2.914 2.914a.25.25 0 01.073.177v8.586a.25.25 0 01-.25.25h-.5a.75.75 0 000 1.5h.5A1.75 1.75 0 0014 13.25V4.664c0-.464-.184-.909-.513-1.237L10.573.513A1.75 1.75 0 009.336 0H3.75A1.75 1.75 0 002 1.75v11.5c0 .649.353 1.214.874 1.515a.75.75 0 10.752-1.298.25.25 0 01-.126-.217V1.75zM8.75 3a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h-.5zM6 5.25a.75.75 0 01.75-.75h.5a.75.75 0 010 1.5h-.5A.75.75 0 016 5.25zm2 1.5A.75.75 0 018.75 6h.5a.75.75 0 010 1.5h-.5A.75.75 0 018 6.75zm-1.25.75a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h-.5zM8 9.75A.75.75 0 018.75 9h.5a.75.75 0 010 1.5h-.5A.75.75 0 018 9.75zm-.75.75a1.75 1.75 0 00-1.75 1.75v3c0 .414.336.75.75.75h2.5a.75.75 0 00.75-.75v-3a1.75 1.75 0 00-1.75-1.75h-.5zM7 12.25a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v2.25H7v-2.25z"})}),wh=()=>m.jsx("svg",{className:"octicon color-text-danger",viewBox:"0 0 16 16",version:"1.1",width:"16",height:"16","aria-hidden":"true",children:m.jsx("path",{fillRule:"evenodd",d:"M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"})}),Mh=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon color-icon-success",children:m.jsx("path",{fillRule:"evenodd",d:"M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z"})}),jh=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon octicon-clock color-text-danger",children:m.jsx("path",{fillRule:"evenodd",d:"M5.75.75A.75.75 0 016.5 0h3a.75.75 0 010 1.5h-.75v1l-.001.041a6.718 6.718 0 013.464 1.435l.007-.006.75-.75a.75.75 0 111.06 1.06l-.75.75-.006.007a6.75 6.75 0 11-10.548 0L2.72 5.03l-.75-.75a.75.75 0 011.06-1.06l.75.75.007.006A6.718 6.718 0 017.25 2.541a.756.756 0 010-.041v-1H6.5a.75.75 0 01-.75-.75zM8 14.5A5.25 5.25 0 108 4a5.25 5.25 0 000 10.5zm.389-6.7l1.33-1.33a.75.75 0 111.061 1.06L9.45 8.861A1.502 1.502 0 018 10.75a1.5 1.5 0 11.389-2.95z"})}),h3=()=>m.jsx("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",width:"16",height:"16","data-view-component":"true",className:"octicon color-fg-muted",children:m.jsx("path",{d:"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm9.78-2.22-5.5 5.5a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734l5.5-5.5a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"})}),m3=()=>m.jsx("svg",{className:"octicon",viewBox:"0 0 48 48",version:"1.1",width:"20",height:"20","aria-hidden":"true",children:m.jsx("path",{xmlns:"http://www.w3.org/2000/svg",d:"M11.85 32H36.2l-7.35-9.95-6.55 8.7-4.6-6.45ZM7 40q-1.2 0-2.1-.9Q4 38.2 4 37V11q0-1.2.9-2.1Q5.8 8 7 8h34q1.2 0 2.1.9.9.9.9 2.1v26q0 1.2-.9 2.1-.9.9-2.1.9Zm0-29v26-26Zm34 26V11H7v26Z"})}),g3=()=>m.jsx("svg",{className:"octicon",viewBox:"0 0 48 48",version:"1.1",width:"20",height:"20","aria-hidden":"true",children:m.jsx("path",{xmlns:"http://www.w3.org/2000/svg",d:"m19.6 32.35 13-8.45-13-8.45ZM7 40q-1.2 0-2.1-.9Q4 38.2 4 37V11q0-1.2.9-2.1Q5.8 8 7 8h34q1.2 0 2.1.9.9.9.9 2.1v26q0 1.2-.9 2.1-.9.9-2.1.9Zm0-3h34V11H7v26Zm0 0V11v26Z"})}),A3=()=>m.jsx("svg",{className:"octicon",viewBox:"0 0 48 48",version:"1.1",width:"20",height:"20","aria-hidden":"true",children:m.jsx("path",{xmlns:"http://www.w3.org/2000/svg",d:"M7 37h9.35V11H7v26Zm12.35 0h9.3V11h-9.3v26Zm12.3 0H41V11h-9.35v26ZM7 40q-1.2 0-2.1-.9Q4 38.2 4 37V11q0-1.2.9-2.1Q5.8 8 7 8h34q1.2 0 2.1.9.9.9.9 2.1v26q0 1.2-.9 2.1-.9.9-2.1.9Z"})}),v3=()=>m.jsxs("svg",{className:"octicon",viewBox:"0 0 16 16",width:"16",height:"16","aria-hidden":"true",children:[m.jsx("path",{d:"M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"}),m.jsx("path",{d:"M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"})]}),y3=()=>m.jsx("svg",{className:"octicon octicon-settings",viewBox:"0 0 16 16",width:"16",height:"16","aria-hidden":"true",children:m.jsx("path",{d:"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z"})}),Nh=({value:i})=>{const[u,c]=it.useState("copy"),f=it.useCallback(()=>{navigator.clipboard.writeText(i).then(()=>{c("check"),setTimeout(()=>{c("copy")},3e3)},()=>{c("cross")})},[i]),r=u==="check"?Mh():u==="cross"?wh():v3();return m.jsx("button",{className:"copy-icon",title:"Copy to clipboard","aria-label":"Copy to clipboard",onClick:f,children:r})},or=({children:i,value:u})=>m.jsxs("span",{className:"copy-value-container",children:[i,m.jsx("span",{className:"copy-button-container",children:m.jsx(Nh,{value:u})})]});function E3(i,u,c,f){const[r,o]=ue.useState(c);return ue.useEffect(()=>{let h=!1;return i().then(v=>{h||o(v)}),()=>{h=!0}},u),r}function Hh(){const i=ue.useRef(null),[u]=$f(i);return[u,i]}function $f(i){const[u,c]=ue.useState(new DOMRect(0,0,10,10)),f=ue.useCallback(()=>{const r=i==null?void 0:i.current;r&&c(r.getBoundingClientRect())},[i]);return ue.useLayoutEffect(()=>{const r=i==null?void 0:i.current;if(!r)return;f();const o=new ResizeObserver(f);return o.observe(r),window.addEventListener("resize",f),()=>{o.disconnect(),window.removeEventListener("resize",f)}},[f,i]),[u,f]}function Bh(i,u){u=Dl.getObject(i,u);const[c,f]=ue.useState(u),r=ue.useCallback(o=>{Dl.setObject(i,o)},[i,f]);return ue.useEffect(()=>{{const o=()=>f(Dl.getObject(i,u));return Dl.onChangeEmitter.addEventListener(i,o),()=>Dl.onChangeEmitter.removeEventListener(i,o)}},[u,i]),[c,r]}class p3{constructor(){this.onChangeEmitter=new EventTarget}getString(u,c){return localStorage[u]||c}setString(u,c){var f;localStorage[u]=c,this.onChangeEmitter.dispatchEvent(new Event(u)),(f=window.saveSettings)==null||f.call(window)}getObject(u,c){if(!localStorage[u])return c;try{return JSON.parse(localStorage[u])}catch{return c}}setObject(u,c){var f;localStorage[u]=JSON.stringify(c),this.onChangeEmitter.dispatchEvent(new Event(u)),(f=window.saveSettings)==null||f.call(window)}}const Dl=new p3;function Ze(...i){return i.filter(Boolean).join(" ")}const x2="\\u0000-\\u0020\\u007f-\\u009f",x3=new RegExp("(?:[a-zA-Z][a-zA-Z0-9+.-]{2,}:\\/\\/|www\\.)[^\\s"+x2+'"]{2,}[^\\s'+x2+`"')}\\],:;.!?]`,"ug");function b3(){const[i,u]=ue.useState(!1),c=ue.useCallback(()=>{const f=[];return u(r=>(f.push(setTimeout(()=>u(!1),1e3)),r?(f.push(setTimeout(()=>u(!0),50)),!1):!0)),()=>f.forEach(clearTimeout)},[u]);return[i,c]}function Di(i){const u=[];let c=0,f;for(;(f=x3.exec(i))!==null;){const o=i.substring(c,f.index);o&&u.push(o);const h=f[0];u.push(S3(h)),c=f.index+h.length}const r=i.substring(c);return r&&u.push(r),u}function S3(i){let u=i;return u.startsWith("www.")&&(u="https://"+u),m.jsx("a",{href:u,target:"_blank",rel:"noopener noreferrer",children:i})}const T3=({summary:i,children:u,className:c,style:f})=>{const[r,o]=ue.useState(!1),h=v=>{o(v.currentTarget.open)};return m.jsxs("details",{style:f,className:c,onToggle:h,children:[m.jsxs("summary",{className:"expandable-summary",children:[r?Mi():Sa(),i]}),u]})};function C3(i){let u=0;for(let c=0;c<i.length;c++)u=i.charCodeAt(c)+((u<<8)-u);return Math.abs(u%6)}function Ve(i){if(!i)return i;try{const u=new URL(i,window.location.href);if(u.origin===window.location.origin){for(const[c,f]of new URLSearchParams(window.location.search))u.searchParams.set(c,f);return u.toString()}return i}catch{return i}}const Uh=({label:i,href:u,onClick:c,colorIndex:f,trimAtSymbolPrefix:r})=>{const o=m.jsx("span",{className:Ze("label","label-color-"+(f!==void 0?f:C3(i))),onClick:c?h=>c(h,i):void 0,children:r&&i.startsWith("@")?i.slice(1):i});return u?m.jsx("a",{className:"label-anchor",href:Ve(u),children:o}):o},Qh=({projectNames:i,activeProjectName:u,otherLabels:c,style:f})=>{const r=i.length>0&&!!u;return(r||c.length>0)&&m.jsxs("span",{className:"label-row",style:f,children:[r&&m.jsx(D3,{projectNames:i,projectName:u}),m.jsx(O3,{labels:c})]})},O3=({labels:i})=>{const u=se(),c=it.useCallback((f,r)=>{const o=new URLSearchParams(u);f.preventDefault(),o.has("testId")&&o.delete("speedboard"),o.delete("testId"),ll(Ml(o,r,f.metaKey||f.ctrlKey))},[u]);return m.jsx(m.Fragment,{children:i.map(f=>m.jsx(Uh,{label:f,trimAtSymbolPrefix:!0,onClick:c},f))})};function ll(i){window.history.pushState({},"",i);const u=new PopStateEvent("popstate");window.dispatchEvent(u)}const Vf=({predicate:i,children:u})=>i(se())?u:null,bn=({click:i,ctrlClick:u,children:c,...f})=>m.jsx("a",{...f,style:{textDecoration:"none",color:"var(--color-fg-default)",cursor:"pointer"},onClick:r=>{i&&(r.preventDefault(),ll(Ve((r.metaKey||r.ctrlKey)&&u||i)))},children:c}),dr=({className:i,...u})=>m.jsx(bn,{...u,className:Ze("link-badge",u.dim&&"link-badge-dim",i)}),D3=({projectNames:i,projectName:u})=>{const c=new URLSearchParams(se());return c.has("testId")&&c.delete("speedboard"),c.delete("testId"),m.jsx(bn,{click:Ml(c,`p:${u}`,!1),ctrlClick:Ml(c,`p:${u}`,!0),children:m.jsx(Uh,{label:u,colorIndex:i.indexOf(u)%6})})},$u=({attachment:i,result:u,href:c,linkName:f,openInNewTab:r})=>{const[o,h]=b3();hr("attachment-"+u.attachments.indexOf(i),h);const v=m.jsxs("span",{children:[i.contentType===M3?Dh():Rh(),i.path&&(r?m.jsx("a",{href:Ve(c||i.path),target:"_blank",rel:"noreferrer",children:f||i.name}):m.jsx("a",{href:Ve(c||i.path),download:w3(i),children:f||i.name})),!i.path&&(r?m.jsx("a",{href:URL.createObjectURL(new Blob([i.body],{type:i.contentType})),target:"_blank",rel:"noreferrer",onClick:y=>y.stopPropagation(),children:i.name}):m.jsx("span",{children:Di(i.name)}))]});return i.body?m.jsx(T3,{style:{lineHeight:"32px"},className:Ze(o&&"attachment-flash"),summary:v,children:m.jsxs("div",{className:"attachment-body",children:[m.jsx(Nh,{value:i.body}),Di(i.body)]})}):m.jsxs("div",{style:{lineHeight:"32px",whiteSpace:"nowrap",paddingLeft:4},className:Ze(o&&"attachment-flash"),children:[m.jsx("span",{style:{visibility:"hidden"},children:Sa()}),v]})},zh=({test:i,trailingSeparator:u,dim:c})=>{const f=i.results.map(r=>r.attachments.filter(o=>o.name==="trace")).filter(r=>r.length>0)[0];if(f)return m.jsxs(m.Fragment,{children:[m.jsxs(dr,{href:Ve(Lh(f)),title:"View Trace",className:"button trace-link",dim:c,children:[A3(),m.jsx("span",{children:"View Trace"})]}),u&&m.jsx("div",{className:"trace-link-separator",children:"|"})]})},Yh=it.createContext(new URLSearchParams(window.location.hash.slice(1)));function se(){return it.useContext(Yh)}const R3=({children:i})=>{const[u,c]=it.useState(new URLSearchParams(window.location.hash.slice(1)));return it.useEffect(()=>{const f=()=>c(new URLSearchParams(window.location.hash.slice(1)));return window.addEventListener("popstate",f),()=>window.removeEventListener("popstate",f)},[]),m.jsx(Yh.Provider,{value:u,children:i})};function w3(i){if(i.name.includes(".")||!i.path)return i.name;const u=i.path.indexOf(".");return u===-1?i.name:i.name+i.path.slice(u,i.path.length)}function Lh(i){return`trace/index.html?${i.map((u,c)=>`trace=${new URL(u.path,window.location.href)}`).join("&")}`}const M3="x-playwright/missing";function hr(i,u){const c=se(),f=j3(i);it.useEffect(()=>{if(f)return u()},[f,u,c])}function j3(i){const u=se().get("anchor");return u===null||typeof i>"u"?!1:typeof i=="string"?i===u:Array.isArray(i)?i.includes(u):i(u)}function xi({id:i,children:u}){const c=it.useRef(null),f=it.useCallback(()=>{var r;(r=c.current)==null||r.scrollIntoView({block:"start",inline:"start"})},[]);return hr(i,f),m.jsx("div",{ref:c,children:u})}function il({test:i,result:u,anchor:c},f){const r=new URLSearchParams(f);return i&&r.set("testId",i.testId),i&&u&&r.set("run",""+i.results.indexOf(u)),c&&r.set("anchor",c),"#?"+r}function fc(i){switch(i){case"failed":case"unexpected":return wh();case"passed":case"expected":return Mh();case"timedOut":return jh();case"flaky":return Dh();case"skipped":case"interrupted":return h3()}}const N3=({className:i,style:u,open:c,isModal:f,minWidth:r,verticalOffset:o,requestClose:h,anchor:v,dataTestId:y,children:A})=>{const x=it.useRef(null),[T,D]=it.useState(0),[X]=$f(x),[q,p]=$f(v),E=v?H3(X,q,o):void 0;return it.useEffect(()=>{const b=N=>{!x.current||!(N.target instanceof Node)||x.current.contains(N.target)||h==null||h()},R=N=>{N.key==="Escape"&&(h==null||h())};return c?(document.addEventListener("mousedown",b),document.addEventListener("keydown",R),()=>{document.removeEventListener("mousedown",b),document.removeEventListener("keydown",R)}):()=>{}},[c,h]),it.useLayoutEffect(()=>p(),[c,p]),it.useEffect(()=>{const b=()=>D(R=>R+1);return window.addEventListener("resize",b),()=>{window.removeEventListener("resize",b)}},[]),it.useLayoutEffect(()=>{x.current&&(c?f?x.current.showModal():x.current.show():x.current.close())},[c,f]),m.jsx("dialog",{ref:x,style:{position:"fixed",margin:E?0:void 0,zIndex:110,top:E==null?void 0:E.top,left:E==null?void 0:E.left,minWidth:r||0,...u},className:i,"data-testid":y,children:A})};function H3(i,u,c=4,f=4){let r=Math.max(f,u.left);r+i.width>window.innerWidth-f&&(r=window.innerWidth-i.width-f);let o=Math.max(0,u.bottom)+c;return o+i.height>window.innerHeight-c&&(Math.max(0,u.top)>i.height+c?o=Math.max(0,u.top)-i.height-c:o=window.innerHeight-c-i.height),{left:r,top:o}}const B3="system",Gh="theme",U3=[{label:"Dark mode",value:"dark-mode"},{label:"Light mode",value:"light-mode"},{label:"System",value:"system"}],Xh=window.matchMedia("(prefers-color-scheme: dark)");function Q3(){document.playwrightThemeInitialized||(document.playwrightThemeInitialized=!0,document.defaultView.addEventListener("focus",i=>{i.target.document.nodeType===Node.DOCUMENT_NODE&&document.body.classList.remove("inactive")},!1),document.defaultView.addEventListener("blur",i=>{document.body.classList.add("inactive")},!1),tr(er()),Xh.addEventListener("change",()=>{tr(er())}))}const z3=new Set;function tr(i){const u=Y3(),c=i==="system"?Xh.matches?"dark-mode":"light-mode":i;if(u!==c){u&&document.documentElement.classList.remove(u),document.documentElement.classList.add(c);for(const f of z3)f(c)}}function er(){return Dl.getString(Gh,B3)}function Y3(){return document.documentElement.classList.contains("dark-mode")?"dark-mode":document.documentElement.classList.contains("light-mode")?"light-mode":null}function L3(){const[i,u]=ue.useState(er());return ue.useEffect(()=>{Dl.setString(Gh,i),tr(i)},[i]),[i,u]}const mr=({title:i,leftSuperHeader:u,rightSuperHeader:c})=>m.jsxs("div",{className:"header-view",children:[m.jsxs("div",{className:"hbox header-superheader",children:[u,m.jsx("div",{style:{flex:"auto"}}),c]}),i&&m.jsx("div",{className:"header-title",children:Di(i)})]}),G3=({stats:i,filterText:u,setFilterText:c})=>{const f=se().get("q");return it.useEffect(()=>{c(f?`${f.trim()} `:"")},[f,c]),m.jsx(m.Fragment,{children:m.jsxs("div",{className:"pt-3",children:[m.jsx("div",{className:"header-view-status-container ml-2 pl-2 d-flex",children:m.jsx(X3,{stats:i})}),m.jsxs("form",{className:"subnav-search",onSubmit:r=>{r.preventDefault();const o=new URL(window.location.href),h=new URLSearchParams(o.hash.slice(1)),v=new FormData(r.target).get("q"),y=new URLSearchParams({q:v});h.has("speedboard")&&y.set("speedboard",""),y.toString()&&(o.hash="?"+y.toString()),ll(o)},children:[Oh(),m.jsx("input",{name:"q",spellCheck:!1,className:"form-control subnav-search-input input-contrast width-full","aria-label":"Search tests",placeholder:"Search tests",value:u,onChange:r=>{c(r.target.value)}})]})]})})},X3=({stats:i})=>{const u=se().has("speedboard");return m.jsxs("nav",{children:[m.jsxs(bn,{className:"subnav-item",href:"#?",children:[m.jsx("span",{className:"subnav-item-label",children:"All"}),m.jsx("span",{className:"d-inline counter",children:i.total-i.skipped})]}),m.jsx(tc,{token:"passed",count:i.expected}),m.jsx(tc,{token:"failed",count:i.unexpected}),m.jsx(tc,{token:"flaky",count:i.flaky}),m.jsx(tc,{token:"skipped",count:i.skipped}),m.jsx(bn,{className:"subnav-item",href:"#?speedboard",title:"Speedboard","aria-selected":u,children:jh()}),m.jsx(V3,{})]})},tc=({token:i,count:u})=>{const c=new URLSearchParams(se());c.delete("speedboard"),c.delete("testId");const f=`s:${i}`,r=Ml(c,f,!1),o=Ml(c,f,!0),h=i.charAt(0).toUpperCase()+i.slice(1);return m.jsxs(bn,{className:"subnav-item",href:r,click:r,ctrlClick:o,children:[u>0&&fc(i),m.jsx("span",{className:"subnav-item-label",children:h}),m.jsx("span",{className:"d-inline counter",children:u})]})},V3=()=>{const i=it.useRef(null),[u,c]=it.useState(!1),[f,r]=L3(),[o,h]=Bh("mergeFiles",!1);return m.jsxs(m.Fragment,{children:[m.jsx("div",{role:"button",ref:i,style:{cursor:"pointer"},className:"subnav-item",title:"Settings",onClick:v=>{c(!u),v.preventDefault()},onMouseDown:Z3,children:y3()}),m.jsxs(N3,{open:u,minWidth:150,verticalOffset:4,requestClose:()=>c(!1),anchor:i,dataTestId:"settings-dialog",children:[m.jsxs("label",{className:"header-setting-theme",children:["Theme:",m.jsx("select",{value:f,onChange:v=>r(v.target.value),children:U3.map(v=>m.jsx("option",{value:v.value,children:v.label},v.value))})]}),m.jsxs("label",{style:{cursor:"pointer",display:"flex",alignItems:"center",gap:4},children:[m.jsx("input",{type:"checkbox",checked:o,onChange:()=>h(!o)}),"Merge files"]})]})]})},Z3=i=>{i.stopPropagation(),i.preventDefault()},I3=({tabs:i,selectedTab:u,setSelectedTab:c})=>{const f=it.useId(),r=it.useRef(null),o=h=>{var x;const v=Array.from(((x=r.current)==null?void 0:x.querySelectorAll('[role="tab"]'))??[]),y=v.findIndex(T=>T===document.activeElement);if(y===-1)return;let A=y;if(h.key==="ArrowRight")A=(y+1)%v.length;else if(h.key==="ArrowLeft")A=(y-1+v.length)%v.length;else if(h.key==="Home")A=0;else if(h.key==="End")A=v.length-1;else return;h.preventDefault(),v[A].focus(),c(i[A].id)};return m.jsx("div",{className:"tabbed-pane",children:m.jsxs("div",{className:"vbox",children:[m.jsx("div",{className:"hbox",style:{flex:"none"},children:m.jsx("div",{className:"tabbed-pane-tab-strip",role:"tablist",onKeyDown:o,ref:r,children:i.map(h=>m.jsx("div",{className:Ze("tabbed-pane-tab-element",u===h.id&&"selected"),onClick:()=>c(h.id),id:`${f}-${h.id}`,role:"tab",tabIndex:u===h.id?0:-1,"aria-selected":u===h.id,children:m.jsx("div",{className:"tabbed-pane-tab-label",children:h.title})},h.id))})}),i.map(h=>{if(u===h.id)return m.jsx("div",{className:"tab-content",role:"tabpanel","aria-labelledby":`${f}-${h.id}`,children:h.render()},h.id)})]})})},gr=({header:i,footer:u,expanded:c,setExpanded:f,children:r,noInsets:o,body:h,dataTestId:v})=>{const y=it.useId();return m.jsxs("div",{className:"chip","data-testid":v,children:[m.jsxs("div",{role:"button","aria-expanded":!!c,"aria-controls":y,className:Ze("chip-header",f&&" expanded-"+c),onClick:()=>f==null?void 0:f(!c),title:typeof i=="string"?i:void 0,children:[f?c?m.jsx(Mi,{}):m.jsx(Sa,{}):m.jsx(o3,{}),i]}),(!f||c)&&m.jsxs("div",{id:y,role:"region",className:Ze("chip-body",o&&"chip-body-no-insets"),children:[r,h&&h(),u&&m.jsx("div",{className:"chip-footer",children:u})]})]})},ke=({header:i,initialExpanded:u,noInsets:c,children:f,body:r,dataTestId:o,revealOnAnchorId:h})=>{const[v,y]=it.useState(u??!0),A=it.useCallback(()=>y(!0),[]);return hr(h,A),m.jsx(gr,{header:i,expanded:v,setExpanded:y,noInsets:c,body:r,dataTestId:o,children:f})},q3=({title:i,loadChildren:u,onClick:c,expandByDefault:f,depth:r,style:o,flash:h})=>{const[v,y]=it.useState(f||!1);return it.useEffect(()=>{y(f||!1)},[f]),m.jsxs("div",{role:"treeitem",className:Ze("tree-item",h&&"yellow-flash"),style:o,children:[m.jsxs("div",{className:"tree-item-title",style:{paddingLeft:r*22+4},onClick:()=>{c==null||c(),y(!v)},children:[u&&!!v&&Mi(),u&&!v&&Sa(),!u&&m.jsx("span",{style:{visibility:"hidden"},children:Sa()}),i]}),v&&(u==null?void 0:u())]})};function Ta(i){if(i<0||!isFinite(i))return"-";if(i===0)return"0ms";if(i<1e3)return i.toFixed(0)+"ms";const u=i/1e3;if(u<60)return u.toFixed(1)+"s";const c=u/60;if(c<60)return c.toFixed(1)+"m";const f=c/60;return f<24?f.toFixed(1)+"h":(f/24).toFixed(1)+"d"}const K3="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAYgAAADqCAYAAAC4CNLDAAAMa2lDQ1BJQ0MgUHJvZmlsZQAASImVVwdYU8kWnluSkJDQAqFICb0J0quUEFoEAamCjZAEEkqMCUHFhqio4NpFFCu6KqLoWgBZVMReFsXeFwsqK+tiQVFU3oQEdN1Xvne+b+7898yZ/5Q7c+8dADR7uRJJLqoFQJ44XxofEcIcm5rGJHUAMjABVOAMSFyeTMKKi4sGUAb7v8v7mwBR9NecFFz/HP+vosMXyHgAIOMhzuDLeHkQNwOAb+BJpPkAEBV6y6n5EgUuglhXCgOEeLUCZynxLgXOUOKmAZvEeDbEVwBQo3K50iwANO5DPbOAlwV5ND5D7CLmi8QAaA6HOJAn5PIhVsQ+PC9vsgJXQGwH7SUQw3iAT8Z3nFl/488Y4udys4awMq8BUQsVySS53On/Z2n+t+Tlygd92MBGFUoj4xX5wxrezpkcpcBUiLvEGTGxilpD3CviK+sOAEoRyiOTlPaoMU/GhvUDDIhd+NzQKIiNIQ4X58ZEq/QZmaJwDsRwtaDTRPmcRIgNIF4kkIUlqGy2SCfHq3yhdZlSNkulP8eVDvhV+Hooz0liqfjfCAUcFT+mUShMTIGYArFVgSg5BmINiJ1lOQlRKpuRhUJ2zKCNVB6viN8K4niBOCJEyY8VZErD41X2pXmywXyxLUIRJ0aFD+QLEyOV9cFO8bgD8cNcsCsCMStpkEcgGxs9mAtfEBqmzB17IRAnJah4eiX5IfHKuThFkhunssctBLkRCr0FxB6yggTVXDw5Hy5OJT+eKcmPS1TGiRdmc0fFKePBl4NowAahgAnksGWAySAbiFq76rvgnXIkHHCBFGQBAXBSaQZnpAyMiOE1ARSCPyESANnQvJCBUQEogPovQ1rl1QlkDowWDMzIAc8gzgNRIBfeywdmiYe8JYOnUCP6h3cubDwYby5sivF/rx/UftOwoCZapZEPemRqDloSw4ihxEhiONEeN8IDcX88Gl6DYXPDfXDfwTy+2ROeEdoIjwk3CO2EO5NExdIfohwN2iF/uKoWGd/XAreBnJ54CB4A2SEzzsCNgBPuAf2w8CDo2RNq2aq4FVVh/sD9twy+exoqO7ILGSXrk4PJdj/O1HDQ8BxiUdT6+/ooY80Yqjd7aORH/+zvqs+HfdSPltgi7CB2FjuBnceasHrAxI5jDdgl7KgCD62upwOra9Bb/EA8OZBH9A9/XJVPRSVlLjUunS6flWP5gmn5io3HniyZLhVlCfOZLPh1EDA5Yp7zcKabi5srAIpvjfL19ZYx8A1BGBe+6YrfARDA7+/vb/qmi4Z7/dACuP2ffdPZHoOvCX0AzpXx5NICpQ5XXAjwLaEJd5ohMAWWwA7m4wa8gD8IBmFgFIgFiSAVTIRVFsJ1LgVTwUwwF5SAMrAcrAHrwWawDewCe8EBUA+awAlwBlwEV8ANcA+ung7wEnSD96APQRASQkPoiCFihlgjjogb4oMEImFINBKPpCLpSBYiRuTITGQeUoasRNYjW5Fq5BfkCHICOY+0IXeQR0gn8gb5hGIoFdVFTVAbdATqg7LQKDQRnYBmoVPQQnQ+uhStQKvQPWgdegK9iN5A29GXaA8GMHWMgZljTpgPxsZisTQsE5Nis7FSrByrwmqxRvicr2HtWBf2ESfidJyJO8EVHIkn4Tx8Cj4bX4Kvx3fhdfgp/Br+CO/GvxJoBGOCI8GPwCGMJWQRphJKCOWEHYTDhNNwL3UQ3hOJRAbRlugN92IqMZs4g7iEuJG4j9hMbCM+IfaQSCRDkiMpgBRL4pLySSWkdaQ9pOOkq6QOUq+aupqZmptauFqamlitWK1cbbfaMbWras/V+shaZGuyHzmWzCdPJy8jbyc3ki+TO8h9FG2KLSWAkkjJpsylVFBqKacp9ylv1dXVLdR91ceoi9SL1CvU96ufU3+k/pGqQ3WgsqnjqXLqUupOajP1DvUtjUazoQXT0mj5tKW0atpJ2kNarwZdw1mDo8HXmKNRqVGncVXjlSZZ01qTpTlRs1CzXPOg5mXNLi2ylo0WW4urNVurUuuI1i2tHm26tqt2rHae9hLt3drntV/okHRsdMJ0+DrzdbbpnNR5QsfolnQ2nUefR99OP03v0CXq2upydLN1y3T36rbqduvp6HnoJetN06vUO6rXzsAYNgwOI5exjHGAcZPxSd9En6Uv0F+sX6t/Vf+DwTCDYAOBQanBPoMbBp8MmYZhhjmGKwzrDR8Y4UYORmOMphptMjpt1DVMd5j/MN6w0mEHht01Ro0djOONZxhvM75k3GNiahJhIjFZZ3LSpMuUYRpsmm262vSYaacZ3SzQTGS22uy42R9MPSaLmcusYJ5idpsbm0eay823mrea91nYWiRZFFvss3hgSbH0scy0XG3ZYtltZWY12mqmVY3VXWuytY+10Hqt9VnrDza2Nik2C23qbV7YGthybAtta2zv29Hsguym2FXZXbcn2vvY59hvtL/igDp4OggdKh0uO6KOXo4ix42ObcMJw32Hi4dXDb/lRHViORU41Tg9cmY4RzsXO9c7vxphNSJtxIoRZ0d8dfF0yXXZ7nLPVcd1lGuxa6PrGzcHN55bpdt1d5p7uPsc9wb31x6OHgKPTR63Pemeoz0XerZ4fvHy9pJ61Xp1elt5p3tv8L7lo+sT57PE55wvwTfEd45vk+9HPy+/fL8Dfn/5O/nn+O/2fzHSdqRg5PaRTwIsArgBWwPaA5mB6YFbAtuDzIO4QVVBj4Mtg/nBO4Kfs+xZ2aw9rFchLiHSkMMhH9h+7Fns5lAsNCK0NLQ1TCcsKWx92MNwi/Cs8Jrw7gjPiBkRzZGEyKjIFZG3OCYcHqea0z3Ke9SsUaeiqFEJUeujHkc7REujG0ejo0eNXjX6fox1jDimPhbEcmJXxT6Is42bEvfrGOKYuDGVY57Fu8bPjD+bQE+YlLA74X1iSOKyxHtJdknypJZkzeTxydXJH1JCU1amtI8dMXbW2IupRqmi1IY0Ulpy2o60nnFh49aM6xjvOb5k/M0JthOmTTg/0Whi7sSjkzQncScdTCekp6TvTv/MjeVWcXsyOBkbMrp5bN5a3kt+MH81v1MQIFgpeJ4ZkLky80VWQNaqrE5hkLBc2CVii9aLXmdHZm/O/pATm7Mzpz83JXdfnlpeet4RsY44R3xqsunkaZPbJI6SEkn7FL8pa6Z0S6OkO2SIbIKsIV8X/tRfktvJF8gfFQQWVBb0Tk2eenCa9jTxtEvTHaYvnv68MLzw5xn4DN6MlpnmM+fOfDSLNWvrbGR2xuyWOZZz5s/pKIoo2jWXMjdn7m/FLsUri9/NS5nXON9kftH8JwsiFtSUaJRIS24t9F+4eRG+SLSodbH74nWLv5bySy+UuZSVl31ewlty4SfXnyp+6l+aubR1mdeyTcuJy8XLb64IWrFrpfbKwpVPVo1eVbeaubp09bs1k9acL/co37yWsla+tr0iuqJhndW65es+rxeuv1EZUrlvg/GGxRs+bORvvLopeFPtZpPNZZs/bRFtub01YmtdlU1V+TbitoJtz7Ynbz/7s8/P1TuMdpTt+LJTvLN9V/yuU9Xe1dW7jXcvq0Fr5DWde8bvubI3dG9DrVPt1n2MfWX7wX75/j9+Sf/l5oGoAy0HfQ7WHrI+tOEw/XBpHVI3va67Xljf3pDa0HZk1JGWRv/Gw786/7qzybyp8qje0WXHKMfmH+s/Xni8p1nS3HUi68STlkkt906OPXn91JhTraejTp87E37m5FnW2ePnAs41nfc7f+SCz4X6i14X6y55Xjr8m+dvh1u9Wusue19uuOJ7pbFtZNuxq0FXT1wLvXbmOuf6xRsxN9puJt28fWv8rfbb/Nsv7uTeeX234G7fvaL7hPulD7QelD80flj1u/3v+9q92o8+Cn106XHC43tPeE9ePpU9/dwx/xntWflzs+fVL9xeNHWGd175Y9wfHS8lL/u6Sv7U/nPDK7tXh/4K/utS99jujtfS1/1vlrw1fLvznce7lp64nofv8973fSjtNezd9dHn49lPKZ+e9039TPpc8cX+S+PXqK/3+/P6+yVcKXfgVwCDDc3MBODNTgBoqQDQ4bmNMk55FhwQRHl+HUDgP2HleXFAvACohZ3iN57dDMB+2GyKIHcwAIpf+MRggLq7DzWVyDLd3ZRcVHgSIvT29781AYDUCMAXaX9/38b+/i/bYbB3AGieojyDKoQIzwxbghXohgG/CPwgyvPpdzn+2ANFBB7gx/5fCGaPbNiir/8AAACKZVhJZk1NACoAAAAIAAQBGgAFAAAAAQAAAD4BGwAFAAAAAQAAAEYBKAADAAAAAQACAACHaQAEAAAAAQAAAE4AAAAAAAAAkAAAAAEAAACQAAAAAQADkoYABwAAABIAAAB4oAIABAAAAAEAAAGIoAMABAAAAAEAAADqAAAAAEFTQ0lJAAAAU2NyZWVuc2hvdHGOMr4AAAAJcEhZcwAAFiUAABYlAUlSJPAAAAHWaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA2LjAuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjIzNDwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4zOTI8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpVc2VyQ29tbWVudD5TY3JlZW5zaG90PC9leGlmOlVzZXJDb21tZW50PgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KmnXOOwAAABxpRE9UAAAAAgAAAAAAAAB1AAAAKAAAAHUAAAB1AABxIC1bFLAAAEAASURBVHgB7L13tF/HcedZL+eInAECIAmQIMAkikESRSUqi6Ngj23ZK8u2rLFlr3c8Zz27Pp7dtXfOnOM/PDNOs+u8li3ZEiVKJCVKlJgpBpAERQIkkXPGw8s57fdT99XDxQ+/38PDCwBI3gZ+797bt7uqu7q6qro63KKXXnxp9LFHH7OtW7daX2+fjY6O6memvzZxiPdFShb36Rz54okj5EufvMn+ZhTIKJBRIKNAPgrkk6mkyxefK2vj+Vy4ReTX/+KiIquoqLAVK1fY+97/Plu9ZrUV/ec/+s+jzzz9jLWePq2co1ailIjvYf0d4WYMbrGuJcU8F9nwcCgRPROATwL9HyUT+fhlIaPANChQJF4rLi52oyXAJAbM5JiL/PxGRkY8ezwHDJ65Bwf3BNISN5kQeeIa+SeTN0uTUeCSUaAAe9MD4OXqmmrbdP0m+4XP/4IVffbffHb0xPETNjo0ZHWlxba0stwG1UEO9Q1Y9/CI0bVQDLVVxbZsHurD7OCpYevsGTG9dqVQonfl80qtqKzIBk4O2XCXOpmUSBYyCkyHAmVlZTZ//nzr6+uz/v5+47mjo0MGyvB5wcLodXV1nranp8eFfnl5udXU1DgM3peUlNjAwICnq62tdeXQ2trquM6HgPxYW6Wl4nvdA5vraRlaoZDOByN7n1FgRimQFrmJvZMffDpdKkVkoV/Qd37rd37Lij7+kY+Ptp5utSZpgc8uarINdVU2oFHAM21d9t0T7dYri6q2ssg+9+5qe+dVdAKzzTsH7OuP91hHj6yv8iJrur3G6jZW+X3PngFreaTTBk+fvxOnypbdZhQ4hwJVVVX23ve+13p7e62rq8sFb0tLiwtlhD4COQQ0SoNnrP/KykobksGD0Edgw+wIbRTNVVddZQcPHvRRA/EvvfSSzZ07166++mprb2+37u5uVyoopMiPIkAB8H7OnDkG7uPHj1tzc7MtWLDA8fKe+FOnTll9fb3jpRz8KDujlIaGBk8zODjo8ceOHXN851Q8i8gocKEUyCf0Q+LnwsqXVmkiOf2IvveLX/hFK/ro3R8dbW9rt5WVZfaHaxdbtRQFA4OWgSH799sPWcfQsM2pK7Y//XeN1lzrPiYphhH7zb9stRNtI8boYcVvzbWyphLGJzbSP2KH/u609e4dyC1W9pxR4IIogLX/kY98xBUEwhdrH4UA8yJcly1b5sIXwb1kyRJ/19nZ6aOEvXv3umKA2RHYCPkdO3bY2rVr/Z78WEpPPfWUj0w2btxoR48etdWrVzsehHpTU5PDRLmgmHhGESDgN2/ePJ4P+IcOHfJyVVdXuzKgvOAkD7gY/aAgUEC8Q6G9/PLLRnmzkFFg2hQoIPTHpX4aQYG0aQWBYfO5f/u5MwpiRUWp/cGaxdZYVuIK4kDvgP3BriPjCuKPv9hgi+dICQjj8bZh+w9/0zauIJb+arNVLi5zBTHcPWyH/6HVevdnCiLdJtn9hVMgFMSWLVvc7YPw5oeAfe2119zq379/vx04cMDuuusuF9yMEvg988wzPlpAoCPAGQ28/vrrLqQZBTCyoBM8+eSTriiuu+46VxBXXHGFjwJQOAj0gMfIgPLg8iLviy++6KOVW2+91ZXGrl27bPHixQ4TxXPy5El/xmWFkjh8+LABm7zAZBRDuVE2WcgoMG0KFBD6DjckPw8TpItkGFX0jc/8zGfOKIhqvb29qdbeM6fO5x5+eKrDXu6U1SZ3U6XcSLfIvfShGys102328EvqgG8MWE//qBWValJjTbk1vrPGSmqKrXNLr3X8tNeGu5OJwWlXPAPwtqUAowWENFZ2DHthXNxIWPU333yzbdu2zS100hHPD/cSIwBGGo2NjbZRwn9Y6Z977jm33BHgWPBY9QjsgB2uH2CjWMAPLGCShnvwc2XUQsBNxXvykod0wEUJcCU+nlFS4GUkhAuLK7iykFFg2hSYQPBPFnZaQVRUVtg9n77njIIoGlWnkJ+0Vi4mZg+6YGQpB/CiFMo1AV1b5QuirLN31AaG6KR6qXfFeldcqZUgGmAMy/00Oqh8Gd9Ptl2ydFOgAEIX4c+kNcI2X0BYI+RJhzBm5JFZ7PkolcW96SkwCwrik/d80oo+8qGP+BxEriUzGurkTU+5rAIZBTIKZBR4i1NgFhTExz75MSu68113juInzRTEW5yBsuplFMgo8NalwDQVRHo8wIq7cRfTsqXLRlmhMTySLUt963JPVrOMAhkFMgpMjgLFRcU+f/cbv/kbVqRVGaOs0MgdQUwOVJYqo0BGgYwCGQXeShRg7o7l2l/5ylcyBfFWatisLhkFMgpkFJguBUJB/MZvZCOI6dIyy59RIKNARoG3FAVCQXz5y1/OP4IoLimz0opKK6/SrlDd93V32GBPp2k7hB/gx1lNWcgokFEgo0BGgbceBUJBfOlLX8qvIGqaF9ui6+60q265SbuqS+31R79nB1/8kd1YW2I7uwetdWh2NznERqa3HumzGmUUyCiQUeDypkAoiF/7tV+zonnz5vkqpvQkddOCK2zZpvfb+g992BrnNtuL3/66bbn/r+2m6mLb2ztoxwfPVRDr1q2zz3zmM75x6bHHHvMjCdra2mz79u2+kYkdpASQ84vALlRCxKMcPv3pT9sDDzzgZ/DwbuHChX5o29e+9jXficqRBRzgxvk36XKTNgsZBTIKZBTIKDB1CoSC+NVf/dUCCqK2ya689n3WeNsHrbF+xJqOPmf7tj5ldac7bMuxTtvV2nMOdk7d/Nmf/Vl79tln/bwcDkZDQYAMJcDhaQh6DkTjzBoOLUMZcKAZyoOVVEuXLvUza6688ko/AkHKy/Nz3g5K45FHHrEjR47Yhz/8YYfzj//4j37swTmFySIyCmQUyCiQUWBKFAgF8Su/8iv5FcS8snJb1TDHiq661ZYtn2u3zztsi5fV2f6t+2zza0ftG5v3n4P4/e9/v+Gz4hA1Nt5xBAJn6HB65sqVK/3wtPXr1/s7TrfkADPecWYNowFOtuR0zu9///vG0IZzazhw7V3vepd94xvfsA9+8IP29NNP+wFsnLHz05/+1O69997s6IRzWiKLyCiQUSCjwNQpEArii1/8Yn4FsUgnuy6uKLPXdcTNtSub7T9+5mpbfMVCe/EnO+wbTx2wR7cfPwc7I4iPf/zj9id/8id+7g3Pa9as8VEBB6Lt3r3bhT5xf/u3f2u33367Kw7ecdomp2Nyvg4K4vd///d9He4rr7xi7373u+2f/umf7KabbnKF8KlPfcqPU37jjTfsW9/6VqYgzmmJLCKjQEaBjAJTp8B5FUSTvix3ZU2ZvdgxoCO+a+0Ld66yxuY6e33HMbvvpcN2oqPvHOwrVqwwfj/5yU/cdbRq1So/iZMrh6kxX3D99de7cP/2t7/tiiMmo9mUgYuJgCK54447bNGiRX6cM26pv/iLv3CFgVLgwy4cvMb7Bx980N1T5xQmi8gokFEgo0BGgSlRIBTEL//yL+cfQZQVaSddSZF16puiFWWltmJuna1b2mzP7zpmx9t7bci/NTo53CBjDoJjkj/5yU/6kcucg3++yWXO/b/tttv8Qy2c2Z99WGVy9M5SZRTIKJBRYDoUCAXxhS98Ib+CADjrjFhfJPmuez4ez8ffdcT3FPdAgJQRA4rhfMoB/BwYxY/AJHasdvKI7E9GgYwCGQUyCswKBSalIGYFcwY0o0BGgYwCGQUuawpkCuKybp6scBkFMgpkFLh0FDhLQSxYsOCcjXKXrmgZ5owCGQUyCmQUuJQUwLXPVoJf+qVfsiLtMxhlAjjXx88zP7QJv4sVMrwXi9KaY8ra+KIQ+1LRmcpdKtwZ3ovCWo5kNmjNoiL2thXt2rVrFAUAktzAJjZ2Ol9MBUEZWBYbH4DPLdNsPVN/vlfMN4xjcny2cKXhgpdluxe7vlGGS0XrS1HnaGP221xMno42pi9dinCp2pj+dClofanwwtNvlTZGBj7++ONWpEqN0ogRhoaG/JYEMBYVnqrApGOkz2DiOUK6g3Ifz+nOFHGRZ7LXwBv5WTUVOHiXrg/xxPGj7tAi/X6yOElXCG+8YxVXbgi801EQwKCOXCNEvXgOOsQ1HRfCY6p1DnzpK+WIMgE37ql/lCs6U7pMaRhTvY9VcuAKvOAIvLTxdGhdqFxpvKQJGkR6hNZsGFuBh2s6RJ2Ji348k7QOvNQ72niU+1QbU+eZpjV4g9cvdhvHasrAm0vz2WrjqC9tGbSmLNGfZquNOcHiLAVBQV7YvNkLcbUO36MwDDW4XmgAFuctbXnpJWue06weY378xiKdw3To0EGbN2++H7cBXOBztEYIDeKm05kQAuy1YARUV1dn27XB7iptsDtx4gSgbZU271E+fjU1NY6XkQPMPB0FAYNwBlWfjg5ZonOlXn/9NVuyZKk6aJ9vBLzhhhs0ShlyYQUeykmnZaPgdDoSeA8ePKDzqY6Z5pR0nMlpwU1oevjwYd/RDo4QGuCiM1er7sHUU2ljJ2aeP9SLHfLQm82TnL91ROW44cYbXXCGlTWdNs6D1qM45mXXzp22cdMmPwtMI2Sd/bVI7VxrlTJ2yvmp/jMpLEEM3q2vvmq3au8OnZfjZHp7e2zOnLnOU/Sj2agvwp/zyeDlOXPm2D6deQYvLxfdCfiSaQ/wz2SdgXlS7dve3j5+hhp1po1HVP8K4SPMdJ3p02ym7dd1w3XXic5Hbafa+8orr3Jcs9XG0Jcz4fhxqgPPyJUaya15c9XG4qnZamP68AHhXbFyhc2dO8/7FnHsFaPf0sbw3EzT+iwFgTbkTKTnn3/empubrbGx0a8IlqkIDwiIgjh+/Lg3IvdLly6zffv2SmCtdcZq0e7puvo6pevxyh6TIFmn85rAOVWGph4w0Q9/+EOrl3Lo0PzKMglrLBsYuKqq0mEjqFEOHChYLmGN4lqyZMm0FAR4f/DQQy6AVkoJcR7V3r17XGiXlyeCCeXBXpKGhgYJziO2dMlSW63jR2jkqXZg8KKI2zva1SWLXCB2dXZZj3CtWrXSOLIExdHV1eVKGeVRJiFCGVFU0HoqbSxkeQNtj9Bi9zxMjNJEITVLgKE42A0P7afaxnmRjkUiqDdvft7e8547fXMl/Nfe3uYGygLtyudAyNlQEJwE8MwzP7G77/6wnTx50tj1T4elPCt1FhlGSSjpicp/oe8Q1KGAFy9ZbE8+8aSfMtCos84InHxMG0+Hv/KViTbGCGtpOeV127Z1m/P67bff4YbBWh24idE300ILIxLeOnjwoN1yyy0ywl5PjMDtb3gdl0nGLNWZbjPdxsgVeOlVGQEoCPpLq3iZ9kWuoJCXL1/udZ5qP85HZ+KAf/p0i2hZ6UbAT3VuHX1+rg4zLZVcu0J9DKNgpvvTOQoC4rNrGWHSJAUBk01VQUBQ4D388MM6YmOTE3bFipUuFNGCAwP9duL4CVuoIzPoUBydgfCAyByvMVWGBi/wHpKgpmNwKOBcCabaulrX/ggmtG11dY208VzbtnWr4ybPe++6a9oK4qmnnvLGQsFinXOKLXXDqqqXUiCup6fHGUnmtHemO3QgISOdqTIWSuenUgLUZ+vWV23F8hWuLPj4OAJx8wubbc3qNXZKnbmpqdnPvmppaXHBRTlnWkHA1Cx8wNLDqsXagaFpWzo2p/lSrplmaPD29fXali1bbMOG61z579+/T0pqjdOZctylNp5p4QFe2vS55561W2+9zQ+sRDnSngsWzPdy3HzzO9womElFDF4C/eyll14Uny32foYRhDEGT3P2GWedTbU/JRjy/21ra1V7HvI23r17lw0PDbvM6JRhBC+uknKaaQVB/9kpg4P6zJec2rlzh4zZJhkh29XP53qd79Q5cDPdxsgVDB0UI6NiZMhLOj8Ogxa+QlFs3LjR5c1Mt/GBA/vdCFi//hrr0IgNGYNhcKMUFaM4yjAbBtdZCiJYAIsXK5TODOPRwFOpMIRESOzZs9sa6hvcnUHlaFQ0IqMUiF5ZWeE+Uvxpra1trhy4n47wAC5Db5iJsu+RoELDU55EOVS7IkCBMEQOgY0yIW4q9YV+wMatwkiM+h0+fEgn1C63XgmPUxLI0JQ0w8ND8h+WOjOj+VEg0+lIwIRBwc0R6V2qZwkWhdruqIbgCAvw0J5lOjplYGDQR3fghVZTbePgmXxXGLhbI5Zu1R1BSfkYoTFqhAcoz3TqnA8ncdAijplnBAfe5uYmrzMWLe0y08IDvNQXXCGIqRsjNkYWpaUlUhQLp8XT4CgUgu8YCXdppE7fw7CDrzG2CNPpT4XwhrETqyChOycynxavz58/30pVnpluY/o1Rhe4MTR4RhGu1CiNK4JyNtoYmuLGpT1RxPA0+OApykJfm6c6R/sXotlU4hmpMYJAEVI3aNrT0y28Q2e18UzTOq+CoLJUHiGN1QfSqQhMBA+/NDyITAA+v3QgbQQ623QrG/DACTzqA06eqU/g5zmddjoKAjh01gjARhBy5RdliPekJQ+/6Qgt8gcOYAd9ieMdeCMEDXiGDigNcE+ljQNmvmvUK122qD9xM9HGk8Wbrhs0mQ6t8+EkLl3fwEdc8APX6fL0RLiBT9tGOUjLM2WhD852nYP/vI2hh36Uaabxgge4XMFFfQncE8cz15nGC1x4FtzgSgfeQWvezUYbB17a0unr7YxMSepOfBjzlGOmQl4FkQaOgoDQwfDpd7N1D7GxCmaD0BOVGbyJhT31EcRE8Au9C7wzzdCF8KXjg9aXoo1DMc0kQ6frlu/+UtE66DxVniY/QgJBD4zojzxzjxGSL5AHYcl76FyI1iFYcwUfMHnHj3cBLwR/4KUcBIyrCBPRmnfkIX/UhT4PDuJCAZCOHyHeBfxC14nwFsozE/HgvRRyi7LPFu5MQaQ4IxhrOiOIFLhJ3wbeTEFMmmRTTnipaB0dOARorqDmfTqkhXkIaNyy/NauXSO3Rp0LBVwcvMfVgqAFTsACBi6RMn38i/mAtPAnTRoHypq5oVWaSI8QZeQdk7O4I5kcrpDBuF2++GuuucbdHaTHxUTZrrrqKi8PecGRNgKiXKTnft++fT4PBU1I/4IWFqxbpwUqchHt2bPH501w/2KklqhuK1U23EfnC7l4z5d+pt6D962mIL75zW+evcw1l1jZCCKXIjP/fKkYmpoEU2cjiJlv1zRE6Mwqvvvv/65Wj5XZO7T6hqWZQ7Kir5RQ5WNZo6MjErBX+9JofNw33MC3U0rsR1rkUasFDKx6YwXgdddt9MUWzHMh0Jn34KTl22673f3jTz/9lBTGEl/0wEIEVsrhF1+zZq1WVr1uixYu8rmRPi29vummm32ugqWi37nvPnufds4e2H9AvinTyr9l1qS5m23bWJ201+68870+gmBxwdOaJGXZ+KuvvuKK6frrb/AyVVdXSYkc9YlaVqodP87qm1at1FviOI+oLJVaiVM5tiwTujDJuljvWR3U0FBvV6690n748A/1Jcl3ex1YIt7R3uHLlplfO1+4VP0p+tJUR4nnq9dE72cLdzaCSFE9GCsbQaSIMku3QeuLPWq6lHiZsP7bv/0b26T9GXL2+Iq94xKOWOJY2qzMWaT9GkwsM6F86623+jLpXbt2+wiBPRVbteIOYcyyVgT1gNwyz8vy/sQnPuGLIbZt2+pLi1nifNPNN7vFz3JmYDJ5zUQqS6FH9D2XBq1eY0IZIxC3Dp/33bDhWs/DqISFDc8//5yvysKi52Nf3d1dvt8AVxPW/UMPfV8jmivFJaMqa6cvK29TPKMZFp/Qvu1tyXMixLQ0UysYUYpPPPGEKwCW4e7atdNHINdvul7fmhk2lnF+Qt+OYQUcYbP2ZqFkWBV1vnAp2/itNoLIFESK24KxMgWRIsos3Qat3y4KAoHLCOLP/vS/+34bhPyjjz7qI4gPfuhDbomzOuaaa671UQLLNVnxxmqvx5QOy3rxkqVaPrtNCuZ627F9uw2PDGs/yTpfYokCuOeee/xrjq/rm/C4Yq5YfYVGJebuJdbrs+S4V8qA1U0IdJZAr1u/zlfk4PNn/87KVSvt4IGDPrJk1R/upFYtZWWUsuHaDT6CYOSAAjsht9NXv/qPWq20wG7U5jhGRKxiGhwa9L0XJ0+clEBnn025vbzlJXcdbdy4yVfYse/n8ccf8/kUYFPevt5k4xurc9joeP0NN7rLChZEmVypfRWxIou4QuFS8lamIAq1ygzG08CXgtDBWJmCmMHGLAAqaP12URDUFyH+7LPP+iYrhDT7YuR8d/89AhTh/a53vUtCs9Ine/HLExDe3PND0UQ877gHNhZ7TCKzhJqNkDHnwPv4kT8dT7703AXpRqR4In/kAxf3LLdk+Sp7dlhC/Kr23tz8jnc4jEhDujYJ/RfkNuPTwelln1EProxC2MDJCKamptqVHX0v4ESdqD+uMfZQsaT0fAH86bmP86WfqffgvRRyi/LPFu5sBJHijmCsTEGkiDJLt0HrqSoIhAZCgA4JrMkG0rJ6hjZOC9rJ5p9qOvBSVoQiPuq0ICQOYVtRUe7KAXdPumzkTT+nywCcNLz0u/R9KJZCcNJpC90H7YABXujILxmRnJ0LoR90nsgnj9LkxwiCdCiFCNAFGMy10Na8C7pFmnzXKCdpp1PffLAnigNvKCbaEPyzsfckXxnAPRnlBB9A1+DFfLAwIOiXtEc2SZ2iUDQwDZtm1FSSWbkNvFMVltMpVDAWuN9MdUYAcSQMvnGYfrKB+ka42MJjpvFSfjZ2YqWzSmmigEC42Pw1Xb6mjZkX4eyjN1sbI1yZs1k3dp7dRG0zE++iH0+kjMGDcmC12nPPPeeKOR9uYOAyZEVapiBSFAqGzhREiiizdBu0nqrQwuLmKBWYHaZ/OwYUOsekfOADH7CVK1cWJMFkhUdBAFN8Md02ZhL8wQcf9ElzRoxvpsDIYcOGDToP7D3jLr3ZLP9k2xhD4TXNUT399NM+J5avTJSdhRS4O++9995smWsQKRg6UxBBkdm7Bq2nqiCY8H3kkUdcQbzZhMdMUTUUxJ133ulHmBSCO1nhUSj/VONnoo05cJMVW2+2NsYKR0FwmODFGJlPto1x2bGYgJEZrr18AQVxnU7JvVmr4CZUEEPDo7bzcLsNjrJLM5kwywdw5uPkTxvQ0QAX2YfIyo4BnW1SpnNzmKS7aAHfpVZ+UN+LS2dqCK111IZWmkzW5eKcoD9Lmiusvlo7X7UGfzJheFTnVHXqCOyhXs0bjIz7qFnyOdlAuyyo1dlCA8N2fM8uO7LzDR0Qd/YIgnoUl1da9ZKVVuQ0PRs6wiYmas9+M7tPjHTwTc9c0DEeRcPWVywf/chAYbDir5gPUCMXTjfNN0CuEN2vWbHBaiprfJVU+OQny1vpInT3ddueg7tsz+HdvmIr/e5898NaxltSchH78FiBgrcwMtlvMker0RbWLbLK0kobHBmy411HtcprgrY6X8XyvVebVpZUWENRnVl7qw33dOZLZcXaf1NS12hdct3t3/aK9fjJz+cmRRZwsnWz9pw8+PRzhUcQvQMj9nv/vNtOdXFe0LmAZjNmRAIEproQ4THd8lBFrfdwcXVx8SarTBB+s9d9C1NnSrRWQX/m1nn2wQ1NVlU+uY7YP9Rvf/38n1l7b6uOO9fxDWKq4gsUWKXFpfbBKz9uV9UstxPf/bq1b33JRnI6HHQsrau3db/7X3RtOKvi07VqzwJ2AQ+TtfAuAKQvJ3394Db78/v+qx04sf9Css5KWvprfXWD/c5n/oNtWn2jlZeWj0/aTkVBdPZ32Pdev8/2nNYpsRKuFxKmwlsXAr9Q2jReZEipDuT8zHW/YCuaVtmRjkN236v/Yh39HMk/c4Hlyg3lDfYzyz5hLfd/zbr37BDwcwV2qXbfz3nHnVYxb5Ed/cE3bbDtdMFC0IdKamrtpfoVhRVEd9+wfe6/v26nuy6scQpizV68pSjwS+9eYD93+zyrr5qcVdw72Gv/18P/q9HxCbDwhSrEEimIT6z/jN1Yd7Ud/pv/Zu3bpCAGz7bIgFlcWW03/um/WnljstEKfIS3koIYGOy3LbtfcgVxsj35EFZSy0v3t1ojh1//6G/aHRvebZXlVdNSEK29Lfb/vfBXU1IQU+GtmaDauXiL7Ndv/W27ct56292yw7764l9be5++TTLDobakxn57zRfs+Ff/0rp2vpYXemlNnc297S6rXrbaDt379zbQPpGC0Chcy61fW3trYQXBCOIrf7/TTnYM5dFHecswc5EMWS7QupwJ5AiQqVg708V9qfB6uadAa4Tw59813z6yqdmqK84+2bIQLQY0gvizp//YTveedhfTmc40eTXBCOLj6z9t62pW2dFv/J21vbLZRuWeOyuIb8o0crj2P/2plda+xUcQB7bZ//PAn9mJ1uMXv4+eRXS6q76MWFFtX/r4b9qNa2+ekRHEt7f+i+06lWwKzEE3wSN+gDA+Js9bEwCc5KvAm+BEfJUWl9kv3PBFW9ksodx+wP7l5X+wjr7EQJok0PMmg+7NFY32+RWftZPqE9173sibp0Tfv5n/ng/7COLwd75qg3JHFQyCWVpday8vXFdYQQwOaoPKLn3KsFSfqpRv8eKF/HMQDN8GNS8yrCNuS0uKrHzGfYyXZg4C5YCPuLz88piDGO7tduVcIiu8UID5F1QOWUONvukwiQPUgMPOX3yw/UN97mIKv/iFuPMYTs+tmW8VozraubPdBjRMHhXcs4IKV1xeYdWLV/g1/e6tNILgSIpjrS22efszdqTloPpEuqape0lLfOPJt6JT8TN8SzvWVzfabdd+yObq+y9V5cn3R6a6EGFgeMBHmx197W5QFCouLsZRze8UsX9ELh0My0K8NaJNhPB3SWWVfPLlhUBOKR71wHdW6Mecwj04pC90anC7as5ia5RwHhoetBPdxzXf2H8W/CElxltTVVE8JZmGgqjQHER9Ua0VdbTZcHeBOQj1CUYRJZLlA20tNtzfe1Y54gH5qikcG5Ex9sNnJpiDGNYhWa/+0f9sS//N/2SN190S+Wf9CqF904cqlLbmGdG8uLfTHtnaZl/+wGKbV3/maOGZKFQIaiYSL8bKgyjzpRJa4Hda92mNvFZdxHzAkYe+aT37d9qaL/3HKGLe69Hvfd0GTx2zK77wO3nf54tk7oH6emcaX5s/uTmMgIeSwEYDjrQDlTg7uAEnccWmKzRZKlwqWoPXeVp0TvN0qmgXfNs/qO/H7+mwVw502qffMccaqtlglweM6MOBd7TxTOHOg8XbpHdg1P63fz1gX3zPItu0MvnW+1QVhHMJvEI7TxD6xYN7/v6/2sIP3GP1V290o6DQ5Pig3Cq7/vqPbdmnPm+1q9dPAPXCX7HwggUfrGDq6R+x7//0tP3lj47a//0zV9jtaxuc50mTW53W7iH74wcO2ufvWGDrlhQ2ys5XokEWm2gi2nkgH8l44T9BQoPlFmQMQVf/sD36WpsdaR20kiNPFB5BDOvTjVv/z9+wZZ/9FWu+4bbzlW/G3hfqTD0q+LO7Ou3Hr7bZb9292BY0zrAFIILBWG/3Za6HvvtVKYhdduVX/o8J2/Tgt/7O+k8dtzW/9nsTpsv38lIK6kLCI185ZyquEE9PBz4K4tndnfbq/m6fC2qqGRMOOUBnA3cOivHHbvXR3/qH3fbrdy2ym1bXTmsOYhzoeW76Thyx3X/1x7bo7k9bwzU3uu+8UBsPaMS188//0JZ/7les7sprzwP5wl6n6dzVN2LffbHF/vzhI/Zf/u0qe/fVZ7s605BbOgftD791wH7lvQvt2uXnP848nTfu07inawR09A7bw6+22pHT+ibPsQkUxIi+Gf3Gf/tPtuRjP2sN6zZFWWb9WqiyfeoQW/Z12U92dNgX3rPQmmsnNzk62QKDN1MQZscffcB6Du21VZ//yoSkO/aj+6y/5YSt+JlfmzBdvpdB66lal/lgTibuUuKd6REELoxXD3bbtkPd9smb5lhdZf4RRKH+NBl6XWga+ugfSdj97G3z7Jql1RdFQQy0nrL9X/sf8q9/xOrWXqOlzYVXTw3JLbnvn//SlUnNirUXWr0J06fp3Cs6YMh+7ZmT9rsfXWo3rCp8hlRHz7D9hRTJZ26Za2sWVk2Io9DLNO7pKggM8ae2d9jx9gEb2vdo4RHEqI4waNuz3WoXLrGy2vpCZZvx+EKVZQ6iW0O39p4hW9BQbmWah5jJAN5MQWiLgfz6I3JJVC5YPCF58WOOagURy+YuNAStMwVxoZQ7kx4vAb5rhBHGUqH9KIX60xlIM3fHJzAPtPS7+7day58LWfIzh1HeEvEgbqbyhmZfvYYbpRBe5ir6Th6x8qZ5Pg8xk+VI05m2QU4dbR2w5XMrra6q0ASRjr/QvOqRtgGbV1c26SXjueVO456ugmAOolOjCEaoj/7gOxMoCAnMPu1Yraiq1ATXzFrruRVMPxeqLG41Fcl9kvjLcafNZABvpiBEX441wF2pj9VMFCabLh+MoHWmIPJRZ/JxdObErVy4PxTqT5PHMvmU9FHK5P1TXvdCgnryECeRcmxeywWjiIGMKIhXL+HbIha4aC5rJkOazjQKypLJ3lKh4YNOhQLldZopzQTJCmX3+DTu6SoIykM7AvPe7ItyZ+gOQTIFcYYes3kXtM4UxGxSOYE9k8LjQkr7dmtjDhREfpzvwLwLoeFk085WG0/6uO/paqXJVpR0l5KxxpfHzfTwZAICRH1hrIsdgrFYucVSyPTBd7Q5loSbZOMFy7WESBFxnjrJ4/mSV/E2SZekcQtL5lWVRqdeBnUsMkL28+MdwwlgBzcGMx7BrXAGb/LMX1JSz1otzY26YzGN482BdwZK4KCAAIpnoKaKMfY6iT2TFvconxfls6EIEvhs/IRSkJ8FLh4cUQLKh3RpREm0p+QPSccvZ/DyCmueuqKMwZm/jcmdAsRj3uAYzy6u0o2hH7tL0kBU3NQcB87OXMrgONzil2lNvT1ncvVHxUw3gAVas2qLY1gQ2l6is9osaAQ23sazpzxTv+RxvIKUlBDR3I/HKXJIe3Lq6+u9rrQxR36cCZGLHKl7f4xnvTlzO541aOOv+KM8gZc7RijQt0xtDM1p4/G0aVzjENM3CcKz8I7Bv//++wu7mADBkbsze35MumCF7+NME1K4wDir9IXzTfcNHYglrqEQE6aeLtTz50/jvVg4o1TQms9Efv1fvqHPPh53zkNZ8aF4ysVvGLqwvHSMERE6UWYvr56BAy+y38HjEr6z0rJSh1WsYf3w0LCE45CvFd9w7bX6nOUttmXLy/bU08+oOBJiwssqMserzjWkdeucmwRuAnCBX6o4hA4ft6ETIoAJPCehyM/iSfImim5Qa9QpwxKdM/PZT99je/fts3u/9R0lT4Qnh5QxkUzbU1+C84KnEGzhIT9x1JWO6C4e0YR6ec9Wx+I9eIHD5z75EBDp6Uf//nd+W1+AO2IPfu/7/slO0vFBnQEJE2gKXupI52eZ7qjcFJQveBK3Bf/8Y0NKlQh70iQ9Ojm/DPzFqsuA4+XTnx+++0P6GtsCu+++++2ovhMNPBQGbZzQNGlnb2OVAxyUP93G7HOgPQhe//E+ST3VRoLFXgvKNKQ25vsWmzZttDvf/S5BM33XoS/J26WvznW1WJ987qXF9aaSKK++QaB296XJnmp6f0pV/2Ydhf6yPkj0w4d/7AoZWlJueJh6q4JO36ij86fe80x7siT1TIC+COKEXvEOGoV8BGap6vCVf/dlO3jokD3+5JN2Ql/Voy2hMTxKen6K8GenmfLRnqQZRLCP8d4Z3OIp398hHoTPCF6WBDcw+ODS++680z/m9L2HfmDH9LU/4Hg/Ur1BSTovg0pE+9LW4CTQZmedaaYMZdrPUadvjBdJw47SKfMFPtYB4GB4r1y+hDMY58Qcq1y6AWYQRV5QgZcrv0I0yZt5GpHgImBxBMOMM9I04E4mK7hhDj4V+Wd/+f9aiz5NCfNWlomZdKjeiDYTiZXEwOY8gGCGyWAuF3oS/jA3who4dL4hOleKycuUBsFBBxqSkB3Q6jhoe4OOFP7A++5SR3rKnnjqaS8um7KLRsWsvgCBjVYjrkzA61wu3KFgoBGbxRDcTkG9o0wevAPpAzPsaZGwQDgg/KHvihXL7Rd//uds+46d9s//8q+eXNXV0RDF1jXQow5fpbormk7i68oT/z6wEWQuSOjIwgd+YA5pUymCnMB7Fxp6pJ496kMoLmD9wf/+e7Zfn/T8xje/ZR2dnarriEYzlfpedJs6ZK0NjyI8EnzAoIMjYKBvCDDqHbzCNQICvFxCOXgX4462QFB/+p5P6hOmy+wv/sdf2amWFodZWa621Kat0ZKypI0lD+nntJO38VhbUocoP8oZGtDW423sdEr2DpEfJYLVzqFvt7zjJrv7gx9QudhoS03MWvbtssOvPWXFa3s1uf5exTQ4vZIvz2GcJZREyCfCl5rlBEVAByiezHecnQIBjtJ6fvML9t0Hv++HfyIU3UhQ+cvKMDoSuN6uwlVCvVR2eAW6Jq15Bi8YaANomryU4BWt4G+eS4QPWv3e7/4vbnz88MeP2pGjx7ztUPwodyz9Mk1KeGnFP9CEfMG3KPWQB2cwax5DdIUX4DfyUndvK/hbMKtlZHzsox+2pYuX2Fe/9nU7cbLF0zte9Q+Cb8QVXeBXYHFOlBtUggVdQvmT1nlJBsSihfPOryAoDA0F4IsRIBAEoxIELJ2LES4V3qgbHRoaX0xag5vOjCHQ26erysDO5N5DO+zIgaeteNVynbW0QXFlbuHhmoEfPPgl1XkjPnk79jfpBEnSsXx6gxCqlOCCaTlBt7sn2dXZe3S/te141lpX6lvKNfqUpU6opHPU6OAw8owH4RqHlhdvkjLwcqUkCAU6eaO+8Uxn7OzSrnEFzqXp2PyQnVoxrBM4b9NEZp23RWNDo+fxRPxJ4x179ndJNcduJTj4N5aWVwTatrGhzq1T6ktnH9Jqsc6tT9qRkZ22aO0HbHiwXvlK3AWGu2C8lmOVTS5jDwlYerMH+Jf6RRkdr/4gSGpr9YlTtSunI6CwEO49B97QiPEFK9W3pxuq1ikfKwP1FTS5/cbbeAwHKBCGjgocZ4Wk8rnvGMVUarNrTU2VhKBOEh1b6LL1UKtt3rXdPjX3CRuZ/0kbsibnecrPD9xcE4MiGXm5UEM4jtWP5+IyCTZp8oaqehfuUSQUQWK0mL7U12nHTp627kFGC9rIphVD0BQ6LWxUmcbgRV4hdvqd/cxTUiYUR7/6SInkIXSlnFjafdpsijHCaK25scFHAqdb261VS1gZZWIYDY1IOcjwadTpA6zwohxJG/nfPHjH6Cwc8Ap9k3IzSqF+9J1BKSugoFwb6sVbiu/r1+qpUzrVVYYGo2tsF5QIZ6bVV2kgQJ0JSbON3acfkijyPPHEY5evgqCyMESmIJIGm42/MDgKwq0bMTwdAabavXuH7dj2HVu/TmctNb5XzF3l7eAWnfJER3UrBsGBhSuG0qvxAB+OFCUWS0WpdvHqXzrEERnkYYRB2LfvoL5T/LRdveINq5v3KRu2eS48sMwc5xgfozTAjaAgnnpQdgJ4R6VLRnS8eFWZjlRQ2dIBQami6j0dJ8F7QkLk6ScetzXLXrC5Sz6l/EscUKVcXgnA5AK+BG/iQjqDm/eqoQTAwHC/4+XcqNwwouMWgIcSIH13T5+9uPknNtj9Pdtw/edsaHSR6lLiQhphkNRK6VVgBBB5KEMSxurs8DQCHR30Y6WxDHMDR0wgEZLViLTxsO3avs327njQrrx6oVXW3yEhVCGlXZUIa6WGRpQ16OxCOU8bD6uNEeaF2lggVCcs5aRcPVLMXfoWQflot5VV1MnqrnQBCPOAK3FRJoqN72uXSrlQFNwvXCvkCvR2132+kFYQjC6lE8Tjyeh8SG0PfYAD/0FPLHiMUWDiGqMM7koVg4SRipsUGPB/qdKnA3w91hIOL9qYOvfKAEAxMiLz+im/u4lkyePGZSQGXtqDQpE2RmbgpmykoUzj7UrhFSi7I/YH3QKDCPE7Cos+BY8D2+effHTEiLw8wafU4GZETr3ARz2ZvwEffep7Dz4wOQVBBn4XI1AwKsUPImQKYvaoHgqCK8LD/fq6P9nRZa2n99lSbX8prlomr4f81WI8Op8HtcsYnzojJQoCYQ2fxxsJYf3jEcs0HQ+cYGiYGCFAaOnq1Q7OFltZcdBKatdIUGvEwr8xkPADZR2HpfhEWESaJOFokXhICqK8RP7tlIIYFx7CBRwsW0KnDs3ZdbLdlpfttMraK3SuD5Z8goUaK2lSt8DPO/0ITjvhcAtbcUMS1NS3RErg7CBLUGv2SYdigmaMnvafbrfy3h02t3m58DZ6fOQbr+8YPlwnodRCqHk5Ha/cWGpDXCW5gclTxFi6jY+1dVpn215bUq/yqI01VvdKJtVS3cYq7c/UX+VWpNcXnNCVq3qqX89pY+VHGYf4RMkTsMIHJTipC0KvRPGjCVKHQ71wjXjdsfildPnn7aUyoGi8zg7t3D+kQ7EQEp97MmldrHxwjo+y9M7bzduCulL1ZM4F5eD4xupKOsl6jQbaRHt9e0HfduDsI4wU8ignqMaCDK4xVyavML6cx3gQDniV42a4xzWFYeb1JE4BmsKjBPDiPG3v7dBfCXa5e2vKalwZn8GbpCU9gj2pU4lcRrhTxQfCR1wi8JNjPsLII4+Qu0KibXGtUT8UMWXkLKyH5J477xwEhckUhJNzVv9cChcTzAMTO2O5gkiYfUCCjE8+lohhqnSwGVYYViKdB6sMnqATw2wDsgixdJhkpPNGBzwfsRgm01Ng8XA/MFnb1d0l5TGgYTPHDiTWMnARcggUzrtB2GDtESo0rKcck8WbGB5JBwy8g6oTnzEdGtSZRWU6l0rwUFp+vo0sPYQatPAOLqFHKJOPHevO75V+MoZMWkEgDIZEwy7tNert6VLd5MaTr95pOlZHaOTCwa0+CU4JPkY1bkDJvYAbqkI/OnqEM3dJDPQd9hNvERQSri40zHpkZba1dwgvfnThljsIXsCKpFFG5b7BTeRGg8rpLj4Bp86UEbzQY6KQtDFySiMg4SAgyHBzEaiLKx7KL14kINR75IJj7iQWFoAPxVHpcxlJOngwEZSezf/wDC9TRq78MEBwJ7piGYNPecDHogiv1xkQ59yBjaPqf7zzMRfg6xdcbQ3FdVZTVe10IIPTXLiBS39wuog21CNkJyNzcDFCgnZRnnMQpiIY8Tyz/3k/AbapqtE2zFnnfIly8fqPpYWGTDJ7P5ZiAC90hOaJEkoS0p60c0K7FCLdJvTSwiQpuF4ds3S874Q9/+gzmYIIMkEgOh6MSJhMh4+8M3G91AoCZooOh0ChPCKJ+zz9oLexSkInhttunalT9PT2uA+U1wg9mF/RBUN04qA1z+PCQ3gHhNetY4SQBEKUCYAopW7cExLOPuksK47JSMpShethAsRpvElnSFYvAbdvYMjaO7u9k/Dsq7jGRhc8q/voxNA+LyeKiY4LPgRRlcpIxysUovzgjIlyBB6Cl/q0dnQ7rcEJz/kGxTH6YdWVaNIeIU4dWQlUW1sj+iRfxZvoK4RBCmWTgkuMAOicWLHyz3fLCOhK/NooWdoujGHQlxWFUixKyqc0iZWpNpbwLtTE6fqGAiUu2hgjgDkvgrez8PoHpEQL2g/XCKuIcOWwRBZmQuiCkIn+np5u76esOuMX+IDHfbofU/dhwR8cSvo0MBgdpAP0oC2UNW/wdpNFfrKjxd18zfrwDjuysW9QCKXAdBiJtwNB7TTWCHJgArwYW9A8Xf50AVBMGAQnWk963WtlqNXA92OGUZnyo3BI531XV8pK4tNtHRpzJLTEqEri/ZVeo9zLvN9EpWkHjCHMNQxAeA1X6eM/ejhTECKbhzRjEfF2UxDUF8aGDjAIjJL0pcRSEz+eE0jLD2b3AH8qwHDceocXzAh0hujECA/S8Ry05hmhmQTSJjAiP1fwnRPG0FPmpDy4cdT5xhKm8YZi4lXgBSdHyStzkkOIXdkIADCS3xm8dCQXNLxQtNcXOihf2hUbeAFKudIKwoWIFAATmOCPtNTZYQdeucucEMrvdUsSOF6esRB58NEB5RkLwCeQJkaJ422sePI5Xmo3ni+54W+gCRg8BwXGk/MyJ0Q9wBuWPHGhIBitIbD12o8HwXOdhkfa8XoKdjxDc+I7uyX8hqCQXCIa7VVoRZLPFaXSRhtDGo2DfDREHEhRKml65hTfH13gp144X0pYUxaMgZ7efk1465htWfINmvwlnh8hDL1RWfKcTcWSON6EcvYHlYP654Y0HN5R51Cy8COKs1sr+3Bv1VezTDjBC1185ZWuuBF7NFHtc3zQWGUsZTu3ENM/fC6H8jpyURH+0kgdfikbM3Sc1iLeA/fflykIp5P+QORgLOJCeMT72b4GY2FdRueebZzUOVd4oBy65JPv6k3W5lMGOjGHwUWAucjrHc15TwJKHYI4rEwsXYbUdFwEF9ZgDOXpBKTLpyC6+wfdsqXzJ/2nyI+xdlEnpAlTJx3HH/QCvC4uKLfcNcMSPoxicAFheYfADrz52rhPVllbV2Jle91Uv9pKrShDyQTSqDzXYgQyCshLpvr2qIPiiy/2kQV1DRdCCA6y5bYxyqFN8y5DCEy9B1elBB5Cz9F6RxYt/CUJ9H+sztBwWOXuYX+B3mNtwze4+xAmgZd0uW1MWWhnnxAdr+C5FeVVOpZyRDmBMdZIfht/PI/+RBtzpSyhILrFW21d/VJQKrO+gZB8cCoZzUWZIQR4gQVO5pMIxPWJ1sh6zY1bmVZcJQsWknYgv9NlzBOAgugf0TuN/rBhaDO+m+1wBctdeNAB4KkAz7iBoDjeATNxl6lcAsQqNOhXzShGo6kIpMMI8HqoLdp7tHCgJBHo4wpCid2gEAFy8Xr7KV8E3vseG6WEt3D99mk0Rb9ik+l4GYU32hgFQd/V9LbThlVW3gcEDCUS7j1lERHlcpIC8WXoog2jcWjMO1ZOfee+TEFEW5zFWES+XRUEVmWr3C09Pcm+AbpIuZRWaYm4RpwTygsGYoiNa6RMH4eBgUnLKo6ubgk9WU/lYtYSMSguiQoJ7BAWXPMpiA51PFwuvvxQ0ICPwAQvnRrc4xaVGLqyutInZuFqhF1HZ5vwMuzXTytyKlQulAUhV3gQF23cJYsQFxOdHlwotHJNjoKfydQQXMmoSvMy1cmGPuIxwDp7WuUakwDSbGax11XLRXF/jOEFFyFXQQzIIjyl5ZDAxaKng6LUigU06AwOXA1cfc5B9A4ZMqCPvnRpJVSxhCAKqbxCtFZ9EQhRZmgdwmN8BDEWF6t7ijSZj7BgTgSpxQe5+JBNuSxP6IALiPL0DWhKWu9ZrqnLuDDxyukPopYPeVGHaONo81AQ/QO9ErDiLbk6mNdRtTwfrpCkzEAWDuohnOQfF+F6xcQ+ARWCdUx+6EwgP+nDCEBB9A4LxmC38zD7BdJ0IR3pI8R9rpFG/Bm+Y2URCitpIxRUlICy4MN3wa2yt3b2u4Kok1sw2hNcUT7uI4CDdnNhHpG6ItQJUTfvd0JEGcdeOC2YowNGkVbPseiiSC4i8AbdeQcfdI0t7YY2lIll30Wa/6qpYpkzdVHNlJbVTd/5TqYgnCBBlHTDhfAYTzDLN7nCY5bROfhgGq5p4YGgwLqlE8KYflKoD0VTpRrrV7yPTkenwTryzXKCSUdxSzqVZpzR87iYwJus7U46RCJAkCAJssgbpUjjdqbm62KScQgM1otHuSIdafK1ceJiGnNPKbdPSKvMLv0DGdc8dUZ4MWczzIobJWGCOz1aijKQPbeNUUjQapj66T+C2ecCAhGZKEeq/mfgURfNh9BOKCbv7CgGMiWdn2u+No54rklIMoUgpt2TyurqtyjoRPhCgtRbzx5xASspciJUwU/eEFS9UjI9OoUW5VujEQR1PicofZ5YJ8PJNo0gUGRKgRKu0oa/Su2JoLxRxmhjhGDfmIKokmLFmImQywsRz3VCBYHgb+90pUmfqdHX4sBLnSlFsoqJB6XTHE9tpeZSMBZIoDAR3lwFQdpQTOTt1EKK1tbTqneVVWtPEnxXpFVVlSpDaVHiQgsFUVo0ZHVKE4oJWCgbRj/Qh0CZtObOGmsFQ8ZUBNIysX///d/NXExpogRjEfd2VhDtPQNu/bDJp0YM3lzHRCyW/Bi14HXdw/PsN0CwJOyvaOXpkoWI4GO1BZ0Y3yZClxCdON8Iokub9U62Jy6TMs3+NdeymU7W7ZgEcrRjeIVZVm4yISh+9mW47VqeS5mFxSdzsWTjGOzAm6+NmaQ+2d7r8xDgmFtfrslnrOqolYowhpeYoRF1TKxf3csG8xETli2jACaRGba7cqMkKRi5CgLhfqq9Rz5jrD/TJqpyq9fO6nQe6kIokoJmcjoIDfYBlRsXEzVm5IAATEYgZ/DS2XNHEA5wlv+EcONKfUJBdIq32jqTYzcQnpK3HryW+pPQOaGtj0zlzotK407s6mXOJjE+RqQYq7TprKo8aHTuCGJAo6tRnQpQKfqk+zTlghe45gZ4PQQr7yIt98xPdPcxooMtkzmJmAvgmlYQHbLka1Q+X601xgfAwojilxvAmTuCoJ+Qh5Hs6ZOHbceOXVI4Gh3X1NuQRgQVNXNs7uKlmgsRNKXDxdTdh4tpWMpL+4DGCAwMRgV9WmKcjIASHhnSSK5eI2LmUyKQFp757nczBRE0GWeCaLg0M40nmsWbXOExi6jGQQcjcKW+MBNWLXMQpzq0ckRCGMuiRvMPw3Q0YvQe4c0Ha5j7wlcvlvd/WLI6u8FOd7N1n3kJlsMW2Rydu1MtSw88IajzKQgY+0SHhIcEQLlcSwg73EQgxuWBa2MAuEKTxovVzb4DygxeJfWOVicBVKdJRDpO4M2nIFgZckKKiclTjhnB+quWu6ZEiDgXv1xxXBFD4C2WA5z1/8XCCe5unZ/fKasY3NWiFQqxkU+AKn1a2Oe2Me6CVvnjOyQ0yYNLp1J4VVz/+eS/7rGYeYcwHNKqJmCimGiDDn13oE/zHxWiL2WZW4drBosW7MC5vBREryZQ28QftCW8pOp5WRGu0A+ioQAq5G6rluAv9WVCiSLmHSuaEj6idskcESNVrH6EN++ijeGDQfGjDWv5Mi44jI2xQDr6OtcICVyE/hkXHe8CJjTl1yEFAU6ywqeVahs9el362aSmukhSiy80X6DRTa6CCNyBN3DkUxChxEZliLW0HLA9uw55XZvnzNFRGEt9ot73WshYAq5PUstwKBaf1MilllYQKAaWicN3BMqsxbfq31KeuQpCo437MwXhdPI/wQSZgtAks/yoWBveUUSdxBefKAd6RZxJA4Pht0yWPepBgU7P98Pp5AgqnsOXHR0MWudTEH1iyl51MFw0SQcUrjELiHaJ1VLJmvKkI1ekXEk9wosiQYHIOBdezZHol8YbwoOyhsDoF94+dRzsVmoROEmD/538KrILFOZHmOx0hQoBFFAe/RLWBL1S2WXRS6lQB/JGyFUQCH7mP4oArkC9SU98lAP81BdDm3ZgcjJgsiII3IxcoDVQUCLgjTpA68tpBMFIC1dHMr+QzG2oQi5dKSsV97ZXXZJdxaqLiJr4+s327HxDyaWcNZqqqGlU3eTn156E+fqwGXVO92MUxMCIhP1In4+wAoZAe4Cnor9HHNdx/34qEr4hgKNHS62hNQsDwp3oL/XnzCR1ieamBtzFlCxHjhQJH+XDC+xot0gdCoI2Z7ky/ZJRefBupIs2jklqFBPLWYNXKC9LtNnjkB5BjBRzKJ+WWEshR3CeuRAFkeuTC0CzcY0GhjBULpcQs4ETmIE3Gu5i4Y365AqPiJ/NqzM3vcy1AAAw4ElEQVSCBCNXF3hiUAQ6k6dY077WWtI2OmyUhXYhT4SkfzMMllWmfB2dHb6ahw7JMJz0pGFlUXTifAoCvP36IYSxKN0SCyS6IjQJgZmRC8Hh6+3pltPu1kpOBk2sQIR1aQpvPgUxKF4DN1VKu8McOPDHbs7g1Z0iiUelsMmOuicrWpLUg/IP19QkZ0kFnNw2xsU04HMxjI5ww52xRBMo/E2sbAoHfugYoV/KpU+z4+zJiDah/Zjwxd0UcSE8oo0j/2xeoUe4RyhHuJi6ZH23a8UYwlvV9ZEWI7TxRlWh4BFvU9VVYMbrDMwtzz6hlW7dduj112ze0mWu2Fevv8bWX7PJDRrSRBszIOnXHIQN9riwpP7AjRDCN565kt9HI6l0AdPLJHD9vSekWDQKknHiLiGl7R+QW7FEnxaVQnchr9Eco0NGnLi30oI/Fy/wCcBKpyMOGhIozvBQhxRiV7KYQbgJ/UNsIpTLSSMA4IzPQWgVEy4mL5/SgYFFCV1dXf5AXZyjdIXvhjUarpFbtVwjdvo7ZbzvQlYxpQlLwWYrUMnQ7FxziRbliOtMlSOYAHjgBX4Ql7jAF1fiZiqAO1Yr5IMZNJgN3OB1xlJ9CQgYLB/cHhUaOrPeGouZAH46xXgX0w2L9ZiH8M1OWNuDOqrj6CE7fvygziTS9x60qqJCQ9258xdaI596RGkIR3QSYNIhYVb3T3drVY4wcLgYE5gwNvj8ZFYkSgRFDqqTkg945bKE9sm6ZJVMb1ur1c1dqJVFvTZnwUJbuGi5d7zAGyDCUuR8oFb5xRl9NAovJ24SSE+aRNG5qnMacO4RdOKfxIKdPnHCWuQf1njJejp7rLqe7z4M2boNNzte6ggsaI0AgAbEoZiOnda6fum5Bh2kNm7FqW50WqeL8pGWICprdJH4zaFRn1aknDh2UH7lHvV+zYGIctV1tbZk+WqttDozQRlt7G03BssBzuKffLSmLbvEV6zugX4UhVVSFbJ2g0Zc2cVeU4n1qzqLt5KJe/GaFOozTz7uk7PHd++0hjkLtEppyNZcs97Wr99wFm9RNVwpveJHNjnCSUwoQ9PAFTyYS4bobxFPXRDU5JPclxXeqd3vcltJ8OM+oqAlHCcjf35slINr27Sar1g8WldbO64ggRXyLQ2fe/DyS4eQCxhLg6oHAh5+5IA+YJXoCA6UAnN/itB94toaUj/AcKiWkiCQlk2K3V3iFdGVZ444wfXmgbqpcsxl4TZzBfGd831ylBMExagUMjRZAm32/zKMwvKJzUU0TgRvqNRzxM/EFbzUNY46vxh4YRiGq1wZvubSGqYOoTITdQwYQUfgY92GIIE5+BEY3sf5P6T3DjYGAJ9vYvHQ9RXEdMBoP33K2rTaYlRWdJk6UIVcAHU6GbVG3zZPwwpaU18YFqsbJlZfVoBhgem3wot1xUR5IjAd7xmW8HSnjh3WpK0mfWXRV7IvQHnqG5ussXGuOs4ZoR+0pqzQnCWCWPLA1n/hTQBTJurrCoIXCqwZP4v1FN/Z3mYdUkr9mgDsF/5qCYRy8dGiJSu805Ev2ph7+JpnhD0+YUlLkCZ1JYFu0wrCo4LWwifKqJwjfkRHu45qZ+JxUEeUUN8aKac5UsZl2kQW7csV5UCb5vIWsGcrgDe3jZlnYFOiU1N/fCSh+kb1oTykRmnQZNBovD2U+MiBfV432qZcfKWPUjuP1dc3nUmnd7QxdHZ3EAAV4BnnX5ApuJAce+cRY38Snk7HJO3n5VBWXH60H5Y2cUCnvQjgBW7IruChNMxCeIEVdXVg+kPaCChV2pA0KE2MMngz6sSVjXBMlHPFqEornITX1dccILg4ZkX8HAhSV3D94KGHCq9iomAIDbQkgPldrAATM0SmDEGQ2cYduGIYGgLyYuBFUAVjgTfNFIE/l3EifrrXoHVuG6fLUAh3vnjysdoG/7FunZlJx/yBW4K6JwRe7oPWaZzEnxPIK6D58JLWaed4xavg1A+cCHUC8EkTyx2pM3HnwwscTwNMh3T2H4cjWHRYJXTcCIQ464m86TYex0tXTXrr2QDzPOWrcwJHdZDgTMonIThW33T6oDVpyHOxArSmPxHG25iHydRZhIbWqJKgOvfJ5rbkHW1M4BKGB3WkvmFhO0/QJmMhTZeIu9Cr0zqdiQKk2phX4E3TekbwAni8Lgl1Am7QmrIFrUke77kn5JY9932SKvn7HUYQ8p+OonlyA4BgaiyPixnASwNfCrwQdjYs9YnoN5n6RqNO1JgT4Sj0LnCHBVIo3UzHB95L0cbw1tulvrRb0PpS1Jn+lE+2UK6Z5mVgEqgveIO3eL4YIegcCvFi4Y26pWXmTOH2Za6nTp0axXrNF0A0Ww2ZD1/EZXiDEskVS4TRXKF2Ojv1hT1ltL4wek019aWiM+W9VLjz4UWQIVMKKY6p0jedLx/e9PvZur9UeKnPbOD2EQQKolY+07SPbLYImMGdGgUYyXVr5UZdXfKls0uhtKdW8ixXRoGzKRDLQLHwMz4+mzaX29O3v/1tK8oUxOXWLOeWJxREfT2TvMlk2LmpspiMApc/BTIFcfm3UZRwQgXBkIUVAPjU0PbJhNiZSS7exzAxbQlwzztCOj6QZtcLp8D5FAT0Jg1tRFuFEsEXG+1GW0V8ugTTaaNYJQJOJn5jxQTx/BiZ5gbKCs7p4A2Y1A08wAJu+J6pJ7/AMZM4A3d2nRoFJqsgaEt4Or2fI42RNs3Hz+k0k7kHDjxEucAV/SR4KmAED8Vz+hp8lo4rdA/P4mYLeFxj3oJ31JsyTAQzTZuZoEGhsk6oIGicJ554wq655hqbP3++uzgAdOTIEWtoaPAKIACoFCsGSE/FiUOxUMlYLVKoAFn85CgAbXExFRpB8J520WjQrr76aqc9bcG8xeHDh739aJcQ4FzJQxvBnBMx40QlBPauXbu8ndeuXetLGoG5f/9+O336tF1//fXe+VjqCFPDK3QImJq4qeKlTMBhKfKrr75qy5cv9y/gUSfmaXDFhXKifnT+MHQmqk/2bvYpMFkFQdu+8cYbtnHjRi8UQhz+QaYAg/anrafDQwCmn+zdu9f3FwB7xYoVzqs1OuiOd/QVcIE/LYwximKVJ/eTLQdwDh48aG1anrx06VLtFzpuV111leOij9CPly1b5oYeeMFPvcGFnKVMyIKjR48afY734J+NUFBBUIlDhw55R0cZUEAKRqdDKCxevNg7J/F0SghLg1JYOmLE3XDDDWcRdTYq8XaACT0nUhDQfuvWrS6U16xZ48xDW5EPhrviiiu8bbinfZqamuyENnfBWLfddpsriqnQkY712muveX6MiNbWVscDXhQFDA2PENjgQxoUB3V5//vf73wz2Y6VWz74ER6FH+lIdF7qHHTauXOnP9PZKOc73/lO7YdozAWTPV9kCkxWQcAvmzdvtve85z06g6jFXn75ZecXhOru3budnz72sY9NWzgilOk7COCVK1favn37nJeQZZSBON698sor3o/4FC/9h3rwHkWCEoPXJxPIh+Jj9z38evLkSYeBUY2spQ/RX7miRLiHz4FPmVAozc3NrsToOxjws8XXBRUEAufFF1/0Tk5HpKCbNm3y+lNYCkQF6PxLlixxKw5CQjg6I/FUCAWBoMjC9ChwPgXR2dnp7YWQJC0MtGjRIheWMPzChQu9vbCsgzFRFAjrW2+9dcptxEiB9oZxKQNtDlzKQcehM8ybN08nUO7wMlGu7du3Oz7wkmY6CmLbtm1eH+oBH6IM4Et4lg69YMECN2bofOvXr590J55ea2W5J6LAhSiIZ5991m655Ra3uMmHXGLkiQGLoLz77rtdaUyE73zv4BWENDwETIwmRqTE8UNAh8GMYYw8g49RKhjG8Pt111036RWG1IP+QD3AR3+kD+AdINCXkKXwNvekC+WFhwDDDqWAkmEEhXKKvOer64W+L6ggYggDQY4dO+YEQknQAakgPwiFMKKCCAEKS4fHSkVY8MzQiUpOVQhcaIXequnPpyAQgAw5sUBgIKwiGB8BeeDAAW8fGJl3CG8YnI6ABcSIg7ipBHiDEQR4gYmlB7PSceAP4COw586d68+kY3gNT+AK4zrVQB2xJOfoVEusOoQHHRvehSfBDXx4mA6GkpytofhU6/B2zIfsQB7QFhPJBdoTJQ9vYngif7iHp+F1fh/84AdnREEgsxiJYviCA2WBgQUfwU+MfOlj4MZApi+F9Y/sY1QzWUOYvoxioJ/QN1BCwAI+OOmjGDvUF4OLNFyJBxe8DE8TT1mRs5RrNkJBBcGQnVEABeDKj8aMBuV9biAtgbQE0hIXeTwy+zMlCpxPQUR7BXCeg+6596SJd9FGke9Cr7Q1gjrgpWFzn+aTdBreTUc5BOzgtXjOx4OBl2vckz4Ll4YCk1UQtG26faO0CMjXX3/dFQOjwskK5sife4VH+YEL/gieTd+TJ3iH9+l33F+InAt85Is6cs+PEPD9YexPukzpeO4Df278TDwXVBAzATyDMXMUQEFgJTPcDCE4c9DzQ4LxGAlcLHz5S5HFvtUogEWOUTFVwc7IGMGK0MSSD8FaiE68Z7SCQXK+tIVgvF3jXUFoiJNtlLvMOQAFgauIYfDFYnIUw8033+yd8DInT1a8NxEFcEviGgxLeraLjmJgHgH3zHRHrbNd1ssNvh/3rQYbxTK9WILnciPCm6E8WFx79uzxiasYbs52uVEQ+Hjxf2Yho8BMUAAZg5HDiiQmfi8GLzNSYRIZv/5URy0zUfc3Gwz6/wMPPJDspM4UxOXdfAypmcQiXIxOBR46M8ohs7qgRhZmggLwFJPPjIgvVkDQ4YpCOWRG8OSpDt38LCb5tkens9wwH8oQYukGIW5Ec9vikbHje2OiO5mcIb5Q4POVyu55+UIYgWcgRD6eeZfGOUI+peFjGxOAB9xZwT8GkwMP+MQT+LzjhQTKz48P4Pi/C8vuPlssrsyavxCqZ2kvRwqEcsgE9uXYOmeX6d57702O+w4FgRAPAZu+j2zpONLxnI6Le4QZDIAWioBobekc0sfgtYtWnxjkoyH+zWIJTj63GBIc2UnacRmqm0On+vWFKb6hVaTvpyYfuOjSR+L59jEfhx9WOXr6R6ypRh/ISAnvkx36mlOVvpksfEQDFxkfOPSYuk+w8m5AHwRp7RrSB+A5tiJJRb6jrf02R3HAS2L94nDjOYFydnxLpza6qbzz6susSvXnQyMXEnAxZQriQiiWpb1cKQAfIzsmqyCQKbkhZFRuPCNtQlru5KbJfQ74+WBO5l3AS+efKF+k5zpROt7xC7jp+3QccOKZ+0IhcPGe9OnndJ6IJ803v/nNREEwBGOVDG4M1hwjkHhmjXmsOiAN2p93rLsFAGvNec8qAQBzz1piNtmxBI0Gw33l64tLyu3FvVqbLtm4oLHcth7qtsW6Hmjpt43La9zCBiZCHsHeIMHP91xLlOHHW7UHo1krapQXBVCmuAp9nP3oaX0aU4J3cVO57TvZZ9curXEFVK5PRvb0D9u2wz1WX1lqS+eUW3NtmT5BOGoHpWyaavUdV5UXhbWwscy6pVzae/SREcGs1k86S8pgwJULwpy0c5S/Vx+ILyvlU4JD1qxyDvChepUJuErmyiopuz4dqHKeaB+0uVIKrx/p8TLvONprH9nU7Ioi3Sjnu88UxPkolL1/s1AgV0EgN+IXdeBZ3cn7HUepxAY19gbEngNcn6xoQmaEQmBugy/tXXfdxvE4ZFC4SYFLiCv3zz/3nG3QHAVyCqVFX+M9MNmYxj4D3vFMPD/gIfvYKMrmU+RhrJRCRh7UgpJmyU72/bjSIo9gU17gRHn4GiBffkPmRpmoD4G9ZMAiP7jYk4EcBReymPh92gTLfgrkNHAjL3VIP5MW3OwdYTDQqHLxOVb2dICbfRghY1hE0NPTbfPmzrPHHn88URAAhrgUIDZkxLEMuDUAygYnAvcrV670tBxnwFJIdtOySgBkKBY2f3CmCQqDdc/r1q2zxuZ59uwufX9XbXRMlnh1RYktbaqw/S19fj0uK5vPDBL30r4uu2pRtYSyPvcoQbvzRK/VKf2prkEJ8RIX0Asayu1Y24A+tF3sima3FES7BPe1S6utWVb+a1IOfRphYLXj3tm0otZOa1Rw4HS/C2vGACiaI4KBMJ8rXMelmPqkBK5ZUmNdUjDbJdhRWPPqy62zV2cbSSFUSEGgvMqUh/IsUXl3q3wol1VzK+35vZ22VMoM91aNynxI+EiP4qFMH72+2Sj7hYRovMzFdCFUy9JejhTIVRAIwcOHD2luos8/lVklgcwnM3v1PXGUATvvTxw/Yddpx3CnhCT7IEgzZ06zbzijn7HpslpyilU3a3Q+ESIWgVgvQdgjGXT1uqslhwZst84Nq2+o93dtbRjAzbb5+c22cdNG62jvsDoJWwzCYQlUhPsTTzxuN954k+NE8VRV6sw5wb36as5OGrZXfvpTmyu51yvDmjxsxuyWMD+kiXi+VT1HG0STOZcBycsmLy8bSpGfhJdeekmf5tXRGquv8I1xtbV1rox69dnalpbTrrBIj3w+JZm6QPCpz5C+w11WVu7ydVx5CX+laMCmVN8cqyub6UplvJeVlfo9ZRgcHLDBAZ2bJxjHjx23puYml+nQv7MzUUKUGZr++Mc/ThQE2uunqiw7UWNnLBoIbUIBKQQKAgVAo6EUKDRKBG24T5qMvFQcrYqm5x4FgeZjR/WceQvs1f3d7ip69WC3C0kE6V4Jdj4U3yJhWy4h2qT7do0K+O7rmgVVdlQCHAF7vGPAhXJbj0Y3svaXzKmQ0B6W1V5iCyVwserfONpjq+ZV+gfvXxEOhPk1S6rtkEYDKyS8qSf5+4dkVRQV2QIpj80S6OQH195Tfe5GWq17FAjKAwXB+53Hex0fH1lfLyXUImXTL4WxZkGlvby/y91mC6RIWnq0U7JtUGUocZib93R6mZqlgF450G13XdPo9XEOmeSfTEFMklBZssueArkKAoH/8stbJLx3+3fDkRvsyD8gOXL7Hbf7prhyCcMrr7zSlQVjgPkSyi0tp2Q9N7iMYQSwVKuUfvCDH9hC7UY+deqky6ijR4/ZmtWrXbkwGnjooe/bqlWr/JiKClnhTZJtCNE6CeZTgsfnWpdJjiGvsKoffvhhWy3hTZmRHYcPH7FNUlQoHORjUpdi+/GPfmTHjh+zDRuuk6E81w3mBQsW+nLeYSmUtvY2F9ws7123br2nQS6Sn4Blj6JEzjZJiCNfS0pLvAy8R+4uWbzEP537vQcf9FHEEeWZO3eOf24Wox54KEToh4Bv0zfSkcPIDo7j6Ozo9FHO0WNHXVb3dPd4+VC8fEudduAb1XGuFKMUX+YqwD7uYijH6ABBT2IIxzNDHSrCEIpMaGaO3ED4844RAwHNRSFpSArMcI33WL0MEUtKy+TX1yFuErCtEua4gdD+zEUca9fHxWWxI2BXSMBvO9RjS5oTK3v3iT67QnEoiisXVtmWA136sP2IrVusoZ9GE/j35zdorkBlaJfCYH4Dt9V8CX/CMbl5lsvFNChh3iBhv/d4n1xc2jijEQDKCZiMMGorNWyUYsLt1DswbCvnV1pv/4iVCx6jgw6NIKSkhbPYdh3rNZQIkw+NNSW2RzAh4lIprddVdlxowNsul9K6xVVirsQ1hhJEcTCPcSEhUxAXQq0s7eVMgUSonpmD4Hn37l1u9SJfGhsa/YiNRglFLPX9+/arvw9I8K2yw3KJIJMQ7F2SLQjcPgm39773vZJbK+wnP/mJH4uxb99et5IR8suWL5M3Y6Ufn3Hw4AEJzXaNFtpdJiFQX9dRMfN0lAYGb2VlhadDltXX1dtLW7a4POzu7rL+Pp0IXFHu3pCFCxe5gkBpINgfuP9+H33gRSmVwTygOGTe5s3PuwFdXS0Xuiz2igoZqRIiCGXKhgcGRYjlX6NREfAQ7i066oPRSJEaslzKAjfSaik6wn36iA+ymJfgw1vT3DzHRycNGh2xHP7nf/4XfIlqfX2du6c2XrfRejQqQUidlPJkNIXyQDDddvvtPrXAyOe0ZD6HWlI25PsDD9yfjCDQWPi5EOY0EgVFKEE0FABuIkYSjBaIQ/jj10IhAIh3MelE4ckLDH5oWn5F+qEQIuiVV5I4Jpjx8+OSQYEgzBHgJEEwI/Tx8+OWOiyXDc9Y9swHAId0Su4BIc6kNa4pYPIeWBCUe/Axr6ERo79PVhYlMACAwqI89WOT4QnUM3+pAmUhXzK3XqS5CI4l0RS6cAyp7LwjAKtcZYRm0IKyiQxJec6APO9dpiDOS6IswZuEArkKAjmCUIx4qoFMQaAmLhE+IzCoPqNjt/UufP3IpGeeeUZ9uVgH+r3TrWwMUmQUvn3kTU1NteSSFoZIrmHYIkwR4BWy1JFduJHAi+xql5UPPvoaygelATz6LrhIU6V85MXSJ55Avz4mq3xwUC4tCXLwIEMpJzKVvCStlHsKeK7gpPwoZ5/caMflPiMfdUYwAzdkL3PCITvYx8H9T55+2uc3muUaYmTFXAJwmSvBe4OL7MabbvK6ggNY465plbW9o922bd3m5b5KbiTmNKiD11vlZT6DsicjrocSBREF8xpnfy47CtB4MPJ4Q192JcwKlFFgchQIRRAG5eRynZuKPoGQBw4CG6H2VgshuFEM/M64tZLjQ3Lri+eHPIXkBO9QYLGnCsUE3NwQk9p+1IaI7Edt5EuYmzF7vjQUyBTEpaF7hnXmKTBTCmLmS5ZBzKXAN77xjWwEkUuUy/E5UxCXY6tkZZoKBTIFMRWqXZo8M6YgEGAMXxiF4Pci8MxQxecfGMboeVR+RSXSL5mTYMKG4KOXPEMdf6k/oyPDpHK/YsQ5PMUXyTdJII3fTwiHiYcEFsvWfFJA5SUfPsvxoHeU7XzwxtOf58brCT7wTFC+s8BAL/2YLGElxIB8nNXyUWYho8CbmQJTURDIEfpCyJZ0/b2PKGLS/Sqdeew+4I/LqjxpkHHgIA04J8IX8hD3F7ADPs/k5TcRrjzox6OATchHi/FEqRtwkSfwURbKHj9cTtwHPNKShvRn7aROwTzvbRAH5ADDp0XDM1nC/gcCkzPEMxHkyCXoBlpP2ZDW2lYtXm5FJSKWFMZgR6uV1Tf5s0o6hpvpqDP35BnRRFV505wz8RL0A+1aK1yliR35H/tPHbeKuZr5dwVFfsIZGDwNawPIQNtpK2tosp5De12pVM7TCqsqTWbVnBG+oyJa/8ljVrloqYqUMIRDGyufC3wHzZ/ARQpCOi7BP9St8ss/WCIcxeVaIuxKLScfjUbewKGGGuxo83oPqtwjolfD0hUJiuxvRoE3KQUmUhAhPKNqPCNr2NDFyqJYXs/7eAc8hFkIuMhLHCEEIukJIbuSfpssHkFWndBHfFjiGu8DPnmAwZJ+JoZZkcSkerosgStwsGwV/35MjrNFgMnjpVr9SeC9r+zEOFV8On+Ul3TAo15c4xdLV6FHpOEKnMCfvmeVFatKmWemTCw6YkFNg1aLgXe7vky3RFsXKCv5kk/4ssG5yh555JHExcQED8taEehslgMRBWFGm7iYmQcZFWAJFsBBRj4C8bHrkNl73qMwqAhKoqq8zHoOJkIZgT6ipWullTXWd/yQVUphIAzLG1EAWv3T3mrlzfNsuK/HRoVzuF+rHFpOWNXSVVZWq5UHbS0uaAfaTllZXaO/79m/y5o23WpDPV1WpJULqquE65CVVtfaqJRLsZaYDSpfx45XreGaG637wG6rXXWVFassQ1pBAMMwiiiprLZ+4eo5uNvmv/vDTov+k0d9+VGlFBDKAeVSWltvI1piR11QIkPdWkHhiqZO+Y8Lb53KqOW1ne2ufEYl8Fs2P2GNG96RKDHB4f2IGBzcFXO1mkBxpTWaOBJTjAz0q6xbnQbVK9a6Am5YshzyZCGjwJuWAhMpCCZZ+doaaeq1Q5n9EDUSbK+//po+s3mtZFKrrzRi49cxbfJi9eSrr77iJ7Uie9AB7Gwm37JlSyWDSnwvF7II2UVAHrFCp64Og1Ab0LTskw1qO3Zst2uFg1VGXZIHrCoCJoLzqJTD/gP79dnl6x3nt7/1LV8eilxEgLM1APgoDmQncg+BfOLEcYdNvVh6u1h7GZC1e/fssRtuvNFlbFVVpS/RRTgja/maHaugkpVcw35UuSswwerW3gVgDQkXG/QITNCThyWv4KVMi9iwJ1jARLY8//zz2r+2zMu+QxsPUQhshGNEs1972BCWyPGmpkZfOuzl1LuntWy4iElqALGTGoWApgQZWg4AVJTfPgApQMCVK5Od1KxDhogUmrSh6VEIxLHsio11bDypREFIiKMYuvZut9rV6/wZgVwswTogoYp1DYFrlq32dB3bX5HArrLqJSt9hIAbqWLeIhf4vYf3WfXyNS6AEbT9J45aldL1HT2gChdbxfxFrhyAOdTV4aOU8ua5LsilzQzYKAiUSM/BPa6QEMrDUjBljc3We+SALfrAPZ6+7dUXXFA333SHFbOf4+VnpSAalGa/lFGpVcyRcJcC6D91zKqXrXKF0acRTVl9g49aSmukLFSPrj1vWNXCZZ6WhiMwkqL8ZQ36ELlw1191nSsjRjEoHR+taDlbn+rQIEWahYwCb2YKTKQgEHBPPflk4hLR8lV2N2OpJ/sgVvrOZYQZx/gg3JFFyKuFCxe4fELQEwalYO5417tcBj311FMug/ZIViHA12qfFruSq5VXoHxj2nFZ2AhWlAd5kXcvvviCBHWFf/8Zg3efZNldd93lshEFsUA4EfbAvOOOBBeCn7S4aVatWmVPPf2UC//Tp1vcgF69eo21SDkdOXLY1q2/xvdBgO/nfv7nHQ47qxH4yMyt2pe2a9cu+/Uvf9k3BfJ9bvIjV9lRzvJW9oUs1vJXlsvOnTPXTpw84cuBoQ97KVA0wHKlovpxrAijiPla2lqr+qP8OBZp3vx5Xj4UJ/RmOW9XV7cdFm1dQSCU2UnNBjg+hg0QBD47qRH2IEJhoLFJA2HIA0DW0TKEIQ1DKZQMhSIvDY72e5caq0JaHwUxrA0b3ft2WKOs/Y7Xt7jgxP2CQMdSx+3UeN0tNnD6pAtuRhclsv4ZTTDKQJCiF7t2v2G1a9drVCA3k0YJfRLOuJhGNNpgtIDgrZQy6RPMwdYWK58zzxrWbfJ5AJRR94E9VrdmnfUe0zb/w/utds164TzlZahassJHCQvu/KhfKTPpGq+9yUo0xETQM9pgpMPzyIBGEqXlnrZmxRor0yiAOtasvNIVSOfObVIcV6gsR6y8YY7cTdLuUjS4zSgzv2MPf8tHNqRDOaBAGB2hgHAx9cg916ByZSGjwJuZAudTEBiiyI1du3baqpWr3ADF0Fy5aqU20x3UM0f/1Eou1fveg66uTn3LebFt3brVRwW4aRHwGzdtckGKXFukTWvILzbCkRerH8GIYlm16grbpQ1rCJUrrljtoxW+H/HC5hdctnH8BsqDUcz73/8Bj3v4hz9QOWr8fCUUxK233uow2aMwLCO2SgYv37E+rZEMRjMjGMINN9xgB7RZb9/evdqNvU717HK5SX5GD9SdzXzrtdv6NX1Wde/ePfalL/26jxCeeupJ5b/RvTYoRXZX8566s0fitde2uWx2mJLPrfIAoWzAidzGI8TGNzbcofhWaiqgSK6mRx951EdAHEGCwY9sxegnPzvRXUFQeAgMYVEACHUAkpArGoh7tAvEokCkQVOiJFAIBIZFpCGOUQgjE1xPFLRKuxBREMw59Mnar16+Wtb0UremRzRk6j9xxCoWLHYLHUu8atEyF8DDcuNUzFvoBvfIkNxSUgYIdOYRiivkNxPxezVqwK9ftWi5BPlBH3VgtZdUqRHZvShl5sMtai/DHZgoktI6HVolBhvu7fYRASOIgOcjFwlr0nbv2ynXj85Jmb/YBTsjEt7HCIJ5DdxN1UtXOszeQ/t8RIKJ4nMjKj8jGfBQTvLDkV4HjQ4o1KnnHrOmjbeo/nI7SXGo0IIxVy6wcuvVfEifytm0aq3SnhuoXxYyClxuFPA+l1OoiRQE79hZjHsEHz2H3rHbGflRW1sjAbZHBmiz7uv8OIuVK1f6Ao4OKRRwcYYTfn5cMOzERlYhv3Cb79mTjCBQCFj6c+ayIUxGrXBg7ZO2Vu4p5BqyjhEHsozzlBDoCFBcL5TlgNxNWN8nTpz0K+UAf7iHcDdhMGNs444vkYxCruA+q5OMZfSCEb5PCgFjGw8LfZgfMhVlwXlK3G/YsEHxyRxIu0ZUwINOJzVaSGRypRvoy7Vj/NSpFq/Htdde6+WhTPGjTChJlAtKAqXBO0YznDHFmU3Ib8pQqmM+BnRe02OPPZYoCAiBJuRKgQkUDgAMmSgQFUIT8kMDExD+pGO0kQ4hsEjLvRdSCXChIHARiMwlYOXrpQtDX6mk9D4prFEEBNVLn0j2iWfSEZCFIpjDlbAlwvGpLJ5ujNAIYocR+cg7FnDbeLT+uAsnXnDVVmlf4aRb3Em897IprcMkj/An5VBaWQzDGuJh6SPMKYPDpN7UX/ASXNBCeB1XAiPqiNuNeZZSKTSniafRH8epM180j8EqplptqY8QNI7n7JpR4HKlAP0/wkQKIuRJkpaOPtZbyK/+hFsFWQPvkzZ9Tx7wMBlMvwmrnXTcIyC5R74hswjIsZBzkR4YwEdh8D5w8Z5n3vMuAu8pB/HA50oYEQ7SFStPwA5cuXBQJhECH2m55106LmBFvXjHjzJEuZDjuYE0wCQNaaMMwOFdhPT9t+RK8xEEI4eoWCTMrpcPBWhYOhZWCyHdiLmlnOhdbtrsOaPATFJgIhkS7yZSEDNZlgzW9CkwY/sgpl+UDMJEFAgFwfA2HXKVQe5zOm12n1HgYlAgFEHgyn3GkicurO5Il10vPwpkCuLya5O8JUJB4BvNN4JIK4X0fV5AWWRGgYtAgbRSiPu4MoLATZIpiIvQENNEMW0FgeDiR4ABwk8nH4j75ln6yT4DOePdh5j48pMJm3xld98+PnsxkACOJ4l5gmCyEISJD3882Zkbx695grH5CVYFeV78gTHvMZY65hMcG3inE8Cr+ZPxHdOpOpwPLPnG64XvVcv8mI8h4DcMF1Ok4Zq+J108c5+FjAKXggLRR9PXuKc8MYJgLiDig5fDEEKO8Iv50HQ6YPDML3z+5GcOlcldJqTxr5M/4EZ68pKHQPoOnWzKCa747IknjrxM/pIn8nuGsT+kY9EOgT4JvtyQxpf77s30PK4gWE9MgCBULn1PXG6A+BAqNrXQ6MCggZgh10vfEzCk5ZnV7JrWpAiTuqw2qtRKpaISlIbwMNlL8HsJPAnCPq3YqWiepxVKTLSQJhG67JpmiSvPQ51tWi2knYDA9fIqHcUeL+qoNqudTOIU3aNVRWVahcR+Cza7jSstvWPSfLhHH9PQ8lPguTICnCa5XaEFTOgAjkDkZeaZeL3QhfQsqWWZLRPWxbiExunnmZO0ZFNwWo/VvefwPs/HKq+Sch0prFVcPkmu/HQcmBEXU7RHMG9cgRfvcu95zkJGgdmkQMiN9JX73OdQEIwgQogzOmYFUJnitujjQaw0atXzOq3nZ5EMApt+RDq+nYCApi8ELGTRK69oOauWfLK8dECrEVnpBHxOfCU/8omy8AU3Pv/JKiA+AMSeAcqCEcZHiEpkQAIDwQ98NgMzUUwa5Bt4n3vuWVu5cpUrE5abxson0nPPUv9QbrNJ89mGPa4gqAxLU0MDg5iddWwcYekTxCMNBEAILdJXm4jbtm2bE5M0EAYYd999t+9+doGnVUCx67liznxrf22L1azQJjg1YHmzGlI7mxGbbEzjaIsiCdUeLWGt0JEa7KRGQLKruUzLUdnPwH6BQe2eHtK+BDbPJbuvtcFM8Eq0jNRXDGltb7EEbNfeHRLyQNdPjFK1YEmypFZLZX0XNyuGVKe+Iwddr9RfucGTosTYzVyp9MDvbzmW7N7Wvoyyeu3aFnOy3La8aa7DYzc35WKvBPsb2GHNkR7t2uMx5+b3WL/2L7A6ySuqEQHKiaNFWOpaLprESqkTjz3gSqFGm//aXnnemja905fpQu+wrGIOgg4RiiGutFn6nucsZBS4mBTIVQY85/6QIQjuUBAYPqzh37tnr+9/YB8BX13jyAeW02/RR3tYQcnmLfLyKVKsfjaHqWu425WdzMgiFMyqK67wJap8/AbhT7pD2p91zz3/P3tn19vEEYXhUUiK62ClaYIDFTRulBCoA6rSkPYGIYEUVY0EqOIP9Nf0X/QX5A4JLir1hnDBh7jgM6SuIz6S1CU4QrYLrjHp+5z1bNaWWyIRRw3akezdnZ2vnd0975yz8575wRbfuXLlsvIkbRotoEJduNlQQzX1s78xDXTUTWlNhSVNb71x47q1lSmxH+ndZfr+3Xt3tTDauE0bhdVt750sHxD6MAOPjx+1hdN2su87UVcIENxEmNQgJ/Nv2TJfFnULohw3iNWPSMeMp0wmY/Ew/Tifz+ctDaOA2dlZAYRWiNOoHc1h7dovRkKDN/C6sGx8AhjCgASCFUEL76EmDQHTDMGY0wIGuAq9YjtDNOvWiACyXO+hEfdK5TDS7urZK+GbNN7AJyemxcaW1iBxjwCGucyIHsY1gh7/T9U1MSaVL5mR6wqN9P9eF6NSQAOHITU2YWWWcg+MqZ0+/b25zCjnH1k73mpeMFoNbUiNZY2oB48CjaTyJGcaAxpTQoQ/OA8AFDwPCHrV5wVxP5bdwNQpaVHPBH6DRq7blxk3kOJJhxgIrwPto3jrqgBC5BuRcQjexIQqzMMIQAAavDDNYEHqTdMTR3GIe2AnegDZQGgGBMxETKnkh8k0mCLKlgEnW7QBZA8L9iBz8BHEspeQbgEPRvAMjBD+DEyxWiCPFhcX5W5iUAsAdbsj4hHAQsZcPDo6ZqaiBRHNPocMpmblfsu58xcuWFvm568Zb4v3htXkyAuhDcJvVfXhimLy60k3MXFcZLmbtvAOpDEcZk6dnOIKjVMBTyMvXgbcCVxbsCIna0sjD0mTzWbpjl0dQoBA6MA4hPBGx+PPBLUKYgX7oD3aAeQK0Brg4MfNAzBYWJyOASBmZmYaALFknIDCr5fEjJ42YQeBbI+IbpiKyhL6kOESEqIVXF2I+Aa7+LUIc6R/ef+28Sb6spO2jzO9WqVsbGhcdbwRNyA1ckzzjWsmXAe+PeNeiGzGd4/k4Yzbp3P4YCr9/tBG6Qjlcu5hUKbKx70Gv74vJ83pX0qs7L/kn4k2sN0vP0xoOFWBEeatxOBBE+r4YeoTo5r24TwwKf9QaAtJARfOCOEzoAWUVS/gh+sNrq9aWHEHv7tobkaKt+bdgbPnAm1DmgdaBKQ5DYgMONsBhKnXelE8OBSL6w4XAcy3thEMj6LuI2VwHIbIbhgX78Q9sB09EGCClSRdAbkYAAQxksxwEjC3pOXKwWsMXoPwAAEIMNCEIJceSiudlgOWbMFMxNKedySXcCfByBxgwOREuQ8k3Bk44TaCZY4hpQFGaB2sGokfpJSWDV1dXZFrjTVzk/GxTE3X5W4C/0dD6cADBPkBHRjZYwIXykTWsSob3iAAHiwpgMDCowUT/Ph6op28ZwBcQemyE1m7dpYVBfgAnN0eQoDgQlDRAANAgpsGAxG7XdT0BGgwcgXJ6RhuMnFQ49knHx2DCQdneGgJJTmcS8mNBW4nYBLjTM+0B5lXvIkp8dmwq0joY56B/YxJCS2DhwxQScostVEXCUWqKQIawYwbCtxZADA6Yd8tmm6I8qJBUB8fphH8mHUADTQMBDllvvrjiXwpockMWBz1cT5xQA+argdWM98TytIsuvXAVaQZYH4CGDiPSar3iyMNT7Ua7ag9pKcuAzy56OiRE0IY3ZjZ6Be0i/6vYE3jKLBk6UlDe2Fe4yiwLyu3HtKOeAijGgQAUdNDDBivrBaawcA6IEaEpucgPtjBHoggRqPW/WIsD0nwY57xGgQmJuQFW0J0QEOaaPDnovGM5vE1hEbNABVAaZeOpUBxHwEYDGcyVifpfFl+v11e0hDvz9Gm1nzE+fP+HHGE1uMgdnf9z83NBUQ5VDhGqNw0kJ4AEHCRfNkH9T2Zjjh/Q3wnRDuJm86HXsxDCFe8se7hA7HKJiCU9R8wjht1qEBLh6CHiUy5VqbKYXaPfeS2GT18sKZderBIo/KNPe1Z01ZD5E83OAzcbA6IU14LxFG+6qRugh3rPIxmawNpSce1SIV9q37CXIbw14UG7WFfwp3rDtjhVlSQT+2lPuIBOAM+ncZJYTRwjvrMg63yAA6+DQAE94cXwmsQXEbk6qJFxftxD/xveoDXh7cNucAPucI2ChA01suSrTSc9ySYTLL5jaNdPt4bZBcyDZlFvXHYeg+EGoQX/lvPGqfsZA8YMDUqYN8DBNoaAMEPQOHD2bYFaX31P5/a9xiALwxyjlZNyU9LXZ5l3WZ8d5dGb4m0S/T0h0njnbgHWnvgjQZWmEE9QPAsI6zfByBa64iPO9MDMUB0pl/fu1QPEDZS+heA6JLW1CPA2K6wUSq69Z9/crXlJX0VD3znW9n6iPd4esAtVG66+samD5revZ+6b0Z+dMODpyyZb+u72hNqh5GE8cgu0hkf2C6O8+po6VIlAAYPEAx2iPOag9/+1+XzjPl00f12eThP8Onbpel03Lva6OtvTbedbW8t29e5lS0A8Q8AAAD//8ED5cAAAEAASURBVOy9V3CdSZbfmfDeewIgLwy9d+V9l7paquqe0UgTI21opYfd7X3QRmyEnrT7KIUepQiNNvSwD7uzMbuKlaZH1d3V3VVtq6rLsByr6D0BkCAI74ELD+j/O3nz4hIFkgAJy0KSF9+9+aU355/n5DmZSUNDQ3O5ubkuKSnJbbmN0QJzc3NWEJ58pqen3cTEhEtPT3czMzNudnbWJScnu/SMzBUr8Nxgj+v9D/+bm7x9w81NT86nu3+/a3q+3F0YPeWm56bi/rmZpe6lXf/cNZR/z/z6+wfcr3/zG3fw4EHX0dHhKisqXHFJsZWTANQjOSnZfs/Ozri2u3fd8PCwKy0pdfv27Y2nu/XlyWqBqalJN6PxC31JSUmx8cuTsYxfoDvhuVjtGe+Mez6pqak2lvALaSwWZ2RkxMJmZj54jjCvKA/pLseFOUq5E7+HNCjf5OSkS0tLs/SD/8In4cbHx11GRobNDerIb8qDH79t7mi+U87lOOJOTU3F0+H3wjajjNSBci50f/M3f+OSVgMgKAgOIkYBcRSCSicOBBoHRzi+8y7xPQ1DWjRMor9F0h/eJ6axWJgQdjM9w4DjyQeAYNDQudSXNklWm2SsJEAMdLuev/yXbur2dTenSR13Bw64my+Uu/Ojn94DEHmZZQKI/8U1VrxuQfv6+tz/95/+f5efn6/yTrnCoiLzHx2NCgRKXFd3l8vNyVV9Zl1WVpZrvXPHQISB+dabfy+e3daXJ6sFpkSAGA/MceZxmM/0O35hzvKEVkCwGO+8w+HHu9HRUTcw0G+LjJycHJek91lZmaIpaTYvonoPfcnU2GKO/PrX77mjR4+57Owsl6NxRzqAVVlZuS22SI/w58+fd42NjZZfdna2hZuYGFdZU628lHNsbEzpZMfnIaBz61aLq6ra5srLy92VK5etDKWlZRa2sLDQynzlyhWLV1paau9Fa11BQYEjPvlTx0kBVF9/n/wLrdzJyUlK+5blVVtT61JSU1x3d4/btm2b2mbCFRYWWVqhbUiH+kIboBG0MXUeGho22nHzxg0Xqauz999884179tlnrYyUgXj9/f369LkjR45au0SjUWsX+undd9/1AEHlcRCj0GGLfccPRyH4Hn6bZ8Kf5uZmNV6V+bS1tVnBK1hRFs+vKCkcg8FWkWrA7u5ue0/aOBqPQrIaLSsrs0KTXxg4xKfT8evq6nLV1dXxd5ZALI0QPvhthmdoV558qOe3OQgBxENWR8up69xjAgQD9dKly65XQMHKhw+DjQmWl5fn7rbfdRm2akx2UU24HI05+oxJ89TJE8sp6lbYTdQCELXpKQj+tzkI5magNzwhVrdFHO+2t2sxkePytNi4e7fN6ABj5VbLLdGSMVdf3+B6e3vduAg5i44S0Q/iTYievP7660ZvfvGLd0T4d9rcobkAndzcHPfyy6+4a9euuatXrxix7enpcSVawHjimmxPgIOyOJG7/eKgW++0GjHNzc3TPBy3tKBXhw4ddidOnHD/5T//Z5uL6Rrr0K/tO3a4Hfr87ne/dVOTfoFcUVlphLmgIN8dO3Zcc+WiLfAg4KVlparnXVck4o8053brbTcsAl8kepmenubSBIKUjzl27Phxt337dqN1LMq++uortUWP2717j+tQu40oDGXu6ek2kOgU/aypqXHZak9Azd4JcCgni8zBwQH7/tZbP3RtWrRdvXrVTQpIAciWlhYPEExiCDFIGdCPzEE+CkXjEgZChQPNIN4Qd+JA+HlCEEB3nvzmfbsKfVyVKtKKks6AsJMH+ZHmuXPn3AsvvOAuXLigSu62uBAXVqIMms7OTlepxiUuRJLvpAu4DA4O2mqURiVfBk1YBVBmgIXOD4PQCr8J/iQCBO1FXb4NEMkxgFgZ0eDjAgRlpqwz+oQShXZnWWF10hd1adzxHiKxGUE8XomtLw9sAQ8Q3+Yggqgj9D1jgXl96tSnNudJ9PjxE+7SxYuORebBQwfd+JgXxWRphcwiFA6hre2OvYfoXlTYV199RQuSfK1+f2XiS2jA9RvXrYxPP/2M0Y+f/vRtm09wshDwWXG10CtojkaoOyCuGWI6Fh0z2kH+LHLKystcbe1213TzhghxVHTredHCavfRR3+0sjHGK6sqRRtn3Z49e9zHH39kNPTq1WtuZGTYlRSXiOgXueeff8EADe6lobFBC9xuy39a9BVaevv2baOXR44ede+9967Fg3DD6dTU1qh8B20B1tLS7N5//30DEECAuABNjughdLNfNBy6e/TYMXfnTqu7ITCC9iLqNVqqRTy0nPq9+uqrBpqXLl6ysAcPHnItAl0TMdE5Z86csVV/U1OTY7VPJDqPDPhcvnzZGgtiHIlErMEg6iAb6E6GyP2MSAg8yBhwoSMh/KAeecBikR/v4DJ4HwCDOBB9CCLhgnyMcAANnVhbW2vgArqBhgACaE5nMxjgJgC3OrFVABBP0HIzuYcBBOAM+nv5agLFfYxKTkdHXefvf+4me7vcrNIPLrO63EUb013n2AUtqKaDt7iBQtdQ+YYrKThsfqzeevv6JW+esXZPSRGApYuLGIvGQYBy4wCMTC0CJjU5ETkxoVLFSrMAoa8QHUxp1cmYMlGaOA/iTur93OychQWIFNlliYtisrKo0LCy8UcapDmh1Svvp1UmykOA8XHt5WhclJWWWDpWoK0/q9YCywEI+huxDH0FXUGEc+7sWStbXX29LTLaRQBZjQ+JTuDH6plxxAKyW2LMN954wwDirOJBQwgPwWQlXhepc7ki9NCOZtG5MomHoCnQDhasFRXlGj9zRs+6RUcY04yrO62txqXA9bKqJyzEPDsn2+3du8/Sg9NJ1aob7hhCDg29dOmSaFGv5kO6cQYsYCOindAk6NzNmzfFDdXbyp94iMmKtaCFq4YGQn/hepJiBJ06E35IQMpeH2kAiuzpVQuo0lVW8mCuDAwMKJ4X69OAiHmhk0Yj1U6IwxD/Acr5aqdDhw65pqabAoc2AWPU7VA5T58+7QECgkSDQqAh2KzGQXgaAuRkwtEBIBRIBeEFCFrU0IBHQDyAAj8KSEMAArx77rnnjJh9/vnn1lCkDzFAfndHbA2/AQ8qT6dC5KkcAAEXAxcAGFGZvXv32pPGhTOhLIAH5aVspEe+hCM+flsA8fD5H52ccX/9db/rHNKmoiZJcI0ls+7vFn/qModOaW3lOUjepaQVuPSaf+iSC49ZUAZ4e2eXWPNB+52ZkW5EuO1uh/o+I75iY6yNaSVYUV7qBgaH1H+pmhCjmoiSSWsiJEkUwaQY1CSxTW2NA8bHoFhuACJP75CvMnFhpyvEntO/U5pQw8MjGj8ar8kprn9g0CZYQX6uG9VKkAk3LdDIFmAQt6a6yvK2wm79WbUWQMY+Pb00DiIsLpn7OOgIQIHIhw8Ek35kDPGduW/EUOKgDz78wAjvvn1+0Yg/NIbwfvGQFCeY0AXekw5jJ+RLeiHv0CCEY5Pd3inP4PAnLIs0xE4AS7J+Mw6hRZSX/PkQDj8AEP8g/ydfysCHMuEIhz/l5knYUG/AjLCA1y4tuvlO+wBWiJsJhx/xQr7kR9o8+eAIzwy3eaPv1I02onzUC4ff22+/7QECD9AOFguCSoKgE6tzWBUILoSaREgAMY+t7lQgKgTnQGagFyCCIywEHX/8aCRAhoKTFnkQl99wJYAClaMRjA2KdQbx+MDBwBkg8yM//EgHtKXilBX2KuTFb9KjgQm7mRzlxoXOZrDQ3rRXGDjJIoLUTZVbkar1jc+6f/XHYXdrQIN6noFwT5VH3f9Y9o4r7nvXJc9OxPNKyihxabt+7FzZa3E/ykv56HMGK87qQhn1LvSDDxdb1SvMtMZUquKE9+Fp8fWHGlo6sScTgD4PfonhiZPoCMP7+FMvV6bFEnPZ+n6/FgAgmONwBYwL6AdPxjL9EsbJg/rwfmkn+of+TfTb+v54LRDXYoLQ0IkBZWhsJiGdBmFi0sOG8TuxUxOzJzwuhCENPgwA/HABdcNv/EJ44vMhDgMo0eEPUhKf1SQuhOOJI51QhsRBl5iXBdwEf0KdeFKntQSIloFpAcQ8B/F0AIjeX7nkuQSASAcg/mfnyj1AMH7YXJzVKr20FPGNX/Eh6qH76RPqE/qGOvGdcPQ344wNbtj4sJLjfSAqdDMbnaQRxgxdGdoKrZY5xo/3tDCWscIzbhBVscLz4dkw9XsfiMVYuCCCQDUXdp70ySukTx/wIY0UqwfjzeeNqAtxGe/hYFi85OXlar5k+zBKhJT8OOSb+pTK8E1xQr0IRZrB+SAxcJMnZTdQVPzRqagbmRzRNz8+SDMlmdWhnkkpriiryKWlaDW8AaBwrQAitNvWc+VawACirbN/LkOD2Q/jlUt8K6VHb4FA9HhCTOYkY3Qzk64gF3m6Zz1Xi4N4VICAwF/RRhqEkgUH5UzXHsSY9iBYXIh2SUbKqlFyVYE8YILn7l27bDV5S6JIOMTIjohrkZgSlhnCXiwRJkoPiJcQRwFApIMYifeQWoAEgo4MGA7UyqB9DMoAkUQrIzOmEowIANAplY0Gi40vvjwt8cSH7odvvWnp8Y70oNXJAhHmxYQWJ8i52RwFwEiXviEcYq59e/dYP6FGODU1bWJZAAdNkDQBINwyHDXlAvxQt5xQepSVtgB4QAoDQ/U1T7j2bdp7GxAnr1e2b1KuTdIUtUH/uFQTR/rd2KTfRI1ORF1uZq5EgzOuKEd7hrnShklTumrr9XZbALHePfDo+RtA/N+/a5q7OyTZnmcAHj21rZir0gIQorTkOfdcfbp7enfxqgFE//ic+9cfDUnEJA4iYQ/iqbIx9z9IxFTU+94iHMT/JBHTq1ZviCbEDKLNJjAbfBBECDnEG8LJXgQEFz3tAe0RsKouKio0oonhHCtxxIu8g9gBOjnZOUZI0QcnbQMaiSfQPMEBAHADcCoACMSUsmQIRCDqRpRFrCGWpMk7Nq4h2BDrdu2zIU5l/wwgslW66o8KJe/5mAxXxJ4VPnr3lIMPAEL92Ddjs71Lm4CjI6MGPNRtZmbapSo+3/lHGNKn1GNS1wQsTfU3xq0ASnBicEOAHXmz0U6lAF0TKYrm940JIKL9BnyknaoyjE+NK9kkV5BV4Mrzylx2WvamBgjair60tlO9cGHhhN9Cxzv8eYbviWEWxglpEYbUWGjggn9ICz8WAg9yi8UhfGI5wvdQDn6HeCH9ECY8QxqLhUsME8LxDOn7Gvl2mvcjxNKdAcS/+L/Oz51rl8bHdGiipSewFXINWkDdkiu6+t89XeD+wTMVqwYQw1Nz7j+eHnVtg9MipPP1OlAy4f686Pcuf+AjAcT8JnVSWr5Lifxj54pOWmAGbBjI+iq3+HgKgzUMcH7zgeCG74lp4TefricC86W795sP6/NOjMd376u/Khy/g5+BjrzDbwtowRbPi3ChPIRNTAsw8u9I/14CEdINT9ooViz7YkTKN5wFCeWx9ChvLC9eSuAlMeCUtZm9kB/hiJOeog1SiZtCfMKvp1sOB0EdaEP6BNBGSQYNyNDGvMOF33wnDgQ2jB/AHMMvtIiiUk5Ay6m62iuqwJlZeyoe4TFIK5fmIxwunDp7mGwARyIRM/QMCjso08Q5S7Uxjvh8AHwWHTjjAOWHQxMIBZ2GxkZbYFAXNDDZeyEOCwHUTlEMYoFBGpQtpEcdfbhJd01qsrXSAiUc8fggymTBEPaFh7UXC0daqvqQzi2p6UYiXpMz7PdYwZbxxwDin/+f5+bOtElbQATiURzNlZLiBzApTMfk1yyKWDmiEaPyLupSYiunRK2ZxQJanyiNxZLx3eXfkV4Ae8pBvsTFHy2DhIXxYtnE/SgWcaZjZV+YBr+RCSc6OmWp6SfGW8r3/Mwk90+fLXB/8XzlqgHEpOZe27BW7VooJNYjP33alacNuLTJXtGiBORITncuq0JL6sKlVGErzAq3gEb3ohMCwrKR3HIAArEayjKI9OC8IHqoYEL4UHWH2MPloYCSn19g3xFhokLfervVNOCwSL4mUeffe/NNiwfRHxoaNE4UzR+IOuqwNB96/qikogWJkgRW2DdkMwHXWlBYICI8alwvatK4w4cPx2wlUOq5qL2rXlMbvX37lpWHMmKshkNd9QtpbQIK28SdAhZoc+XJ2K5S4dplOHr3brvZgKFsg5amiWMzs4x7hVNFaQhbhjap0GI7wW+0TSl8v/bOsMugrJ0CNbh2FHbQKs2UeJX2wACPttu3b5/2Bb2xsRVuiX/iAHHurnTM1QYQxkAcwneGG2MuEFuefoUJcsPeJrm8LDVuWrIryU91F29HLfusjGSXL/+uQamaxYg14cP4JZ3tpRluaGzGDUWFngmFDvkFop6htNMEQuNT2iikLApLfBz5p6Uluai0cOorMt2w0ivKTXU3O6QSpvcQ+rL8NDcwOi2Zrd8wtbh6GUvCykQ9+U36+VmpLj01yfWOeFRn0tWVZ7hb3RPWPhnKj3YqzUtzg2PTkvumutYeaWusEhe2FgChqm+5rRZY8RZYDkBgS/DLX/5SczDZrKjZn7kk7cV8qdpDcAEGQAMCywr67Nkzpt8Ph4C9DTr+UdnEMI9fefll40KuXrtqAAAhffHFF82i+Pe/+52J8aKy/dm1a7cZ6xbLgA1tylbZPDQ0NFhcxKKs1rHSZv/ptde+5+rqvF3VX/3VX9kxGWh0QsAPHjgoOpQqM4EW0+Y8+dRTsXjZpraN+j22Zfky4sPyG5EmmpsnThyXGn+prK5/Z6DB8TmAFko5cDDPPPOMgdbJk0/Z3tbf/u1PXLb2jOEmagQ+pHFVtiNwE6RZJY6kqanJbCrQQEWcu0e2Gk+pPCaiXEYPxwHiSvecqyrMcNki6n0iiqzoIardQ1JBzdRBViLOkyJ+GSKaNH5L14R+z7ptxemuXOFYafMBOEbHZwwwKEeWCPugCPZtEc9xEefSvFRXViCki864MRH7w7WyhxB4dCof4hWI0ELIC7JTDFSIB1HfUZbpju7Icd/cGlG50gUC0ktO1QZhLK9DSufDy4MuIsAZlN9OAcUXNwmb5rIUjj3AW0orMz3ZgGx0YjYWlzOgZLSlcpIvdQXUxlW3frVDRWG6BmuSQGzaHYvkuuaucavPoe057vMbQ66+TBadPeNud1WW++z6sBsU0K2G2wKI1WjVrTTXogWWAxAc+3D69NeuUMQPjpzV78joiK2KscfiXC+MyVhxYyfTJ7V6viMCgviyfzU0PGScBStuQARRCxwARmbHpSKPGvypU58aAJSXVwhUSkWYOxxWycZNaFUP98K+FgQVsRHEmtU7XAsgRD6ffPKJrdo5kBIr57q6euMAbly/YfHq6usFPGcNEHZKEaOrq1Pl7TOiDtC1SBGDY0MoJ3lcFAcBGI2KQ8KSG04JwzaMVmmDF14QuCne5cuXJEIbMFEVS1qOMaGtgro/NmOIHQFKXI7shigbbYTIajkuDhBNfc4d2ZFnxO6giG1b34RW97IfUAE6xQFAwJ9qyDMQgLjf6BxzfcNTbpcIY/vApCsUYYc7qCvLMI7hdu+EEdtnGvNEqIfdtfYxA5jGyky3rzrHwOKT60PuqAgtxJgVe5cMtHZWZrmeYW0waoUO13FV8WqLM7QhN61D4TiESzI6gRWgcXdgwtK6eEdGcdXZ7uKdqAEboAbBB2SKs6UxosbbpXS/ahp2EQFNtdL75OqQqy5KdwMi/GW5nHWS5AYFEDzTNDDaB3UWiepDnt36DmdQofA9SntG6eUJSD5XvQAXwPRoJEdtMu7a+xMOuVtOTzwk7FoCBDJcHIMpbJ49pHj3vGawJrqFIo/wfqF/Ypz7fSfuUuKFPCgJnGFiHONK1XFwqWgP8f5BLqRFmMR0HhTnYe9CmiuV3sPyW8/3ywEI5PDYTkGQ0TBDDRg1YsYkBNrk9PqdorGJqIh2JCyracIwXtmnQLkBIOA77xHtoMQAJ4J2HHkQPuwH8JtxwDv8yQd6xkkAKAwE5QWIMOmSH35YK4d9AbgHxhagRL8at6N0yYPvGNuNq1zkwxlTwdKZeqGMwNlPlBewgJMJexykx/sQDlsz6k2avGOekjZjGX/KTljABoe4jn0Jwi13vMUBokXnUh2J5LlbIuwN5Tq6QOIarE6rtIIe0oocYl1RIAIpUID4ww1AqOEI+mzFn+omxBHUiwB3iYh2iKjCWWRq9Q6h/t2FQcm2Z93J+lxbkRdkp7pTWoE3inADNBDrfPnBvcAZILYpk5jo3G2dA6W8yetATY4R534BFHkV56S4QgHAdYHVThHyK+06ByojxV0XqEC0GwVepSL+NBqcSXP3uNtRkuFyMlPdl8r7oMDpQquO+xDnBBLXChAvt+nIBoEEdQJkjoprIK/2PiwRZeg3IlXHdB2Sp/J83TJiQAWQvLA7311SXMBpNdxaAgRyWVZuNWJXw7lKDFpvH+CPsmCyscIKjomJzBStHrR4gp4/x2dkS65LfBwrOSYsv4nPIGbQhoFr0KL+4jdhEkGKuExeNKHCJPbl8pvGTChWfExSVpqkgaYTExeWnPwYC2M6aoOjCph0eSJClIdyBuKiiFZWZNLkjzYWx3Ng/4CYAbVVq4vyY/VGcMpBXUifdPTwyGRfgujS14kInP9DeCY55XuS3XIAYqO3A2MMIv4oxHaj122x8sUBAg6ClX23CPRtiUwyRKThCqITM7ZPwAr/jrgKgEHj393tnzIZfboIZYnk8HAcbF9mi6hOiqAXi7gHURUEFCLL5idEHTHOhDbEETEBp5N62h6DwuXoHWIjiDNEhv0LRFCkUaS4whi3TWDSLwIOIYiqPHq4HImOyHe/OIkzt0YNjGok/kJE1CuOpFOARfhSgRZ7FoQFwOBscJAEysB+CHsPiMsId3RHronLLt+NmviIcrMhnycg4kgKOAvA62R9njsrMKO9VsOtJUB8pfNXIPZFYqMvasMQYoyWBys6JgcrFI7KSJPqaKZWR6yKeL9jB1oWhe66WGxWM6yw2JDbubPe1EppF9jnzu5eUUyJKxU/WOnn64RLDmKjH6CtEFpkwhGdiImWBr/ZMOzSpmDNtkrXLPa8S8d6cMYOaSESYGV1/PgxI77nLlyUdkq5VFjbXW1NjduuA84434l0hpUOx4JA8HEcFsnGnm3yCThQtcXGpFCblGw6divPTuXFirKxoV6rszyLRzoAESCUqzN5bt5sspUrMl9k1xARVq60JecRpes8HspbJpFId7fu3tDm4549u2xVGwDSEn7C/jxJAPGEdc1DqxMHiAsdcAx+gxriyERl/mg+2eYwBJo9BxwEGWKLQz6PLY7ohk0+88TPvsT89JuJycwPm9Sxnz4DwipCXCuIpPWbMGYkpqeSsDRtZUl+9i5kEnsqDBvZcBzE47utIhXYtKQsDWk56Uk5KBN7JjiyJEN76quCWFxEXfwDpGgXK5QKQxqkSRkpG2Ipfls+pLXCbi0BoqmpWYR81NVFIkaU+T4yLOtgEUaIHOw7NgZjWnlz1DK/IYacn5QpDYw+yUcBFcQDrNIrKsrsSXtjpNYn7QtbOccIaJeIJcSbvkJuOiiNE069ZLWOkRxpW1wRXVZwGMmx6icseWNPQHrIajl8jTC9vf123gzGdbyr1CFsYaXOuUzEZ6UfzoiCE0CDxjpefUrevAckh4d1D4Fk43BQ1AUbChz5RAVqjCW4DWwgOKIZK3ISmhI4MEDYdARYAUzApEqbmiMjUQHVsH1H40RD6Il1WwCxebvWAOJ//+uLcxc7dViUVsNbbmO2gCRp7s9P5rkfnSi3FTwEh1UuMtMVWX2KkGGYJKoXF5WwKofAIWaC2JOPz4snr8J4gbx50Qrv4TBMxAR4ingikkkSAWUlQYwQL4h0wm9annqx+EAcxHvLEzQOWREo5nzYGMLLj7DEISgy2SAeww+gCo78KB+l9vXxZfKLHp9R8A9lBAyoNMZrQbRGOqHslibtJD/iJDrSCmF9ur69KB/AQviQX2K8J+X7agBEYt/TtrQfC4nFHO/pP9o59E2Is1h40uY97kF9Q5p8CM8+Q0h7sTQT/ULZg3g0vLMxph/4bxRnAPHJhY45bddIvr9RirVVDpgV7/RFg1XnTbqK3DlXXyVFAQiwBiUAwfG+K+KUx1xUN1ANcxJrPPMVSZpEksR5JBVoZS1xy5b7brWAv1GO403mz9WCCAbjrUBYA5AytoMLhDwQ7BAGzhH1ThYCvOP4b8ScIS1b7GgJQHj2erBBwFaCfAnPHGLRwPvET3iHxlG21GLZLF4IEoTHjzRZ/HBkDHYGiEITy064hY704a7RuIpEIgnlnTNuGGM6VGw3ijOA6O0fnMtSYyxWoY1S0O9UOcAEiLRhg1/tzs5IH1ty7OysjDhAsGJCfKKOe/zm0cA1F56Pn+K3UwjlDM9vh9jyeQJbYFz7PRBFiCoEmpXy/QAC0R+2EByRglor+0qcfYU/J/6yD4YmEeO+tfW2NHSkbal9Kg5H7JUKKdo7xMMIjfwgtpwHhuEcLKNdOCSuGwtm7j/AgI59M2wZKBfAMyw1Wc77ShNXgBptlvKC+HtxpL+/GbChnJwdduH8BffmW29ZfIzyAB80nbAEJx7AhYYSZQMgMKRrkeot9g3sq7H/hfiRMBjs/cmf/MmGGQUGEGrwOZByJQGCxqYx6CQQHMd3iFpiPoTjN+9AX74nvsePMAvjhRYkj4DapJEYN4TZjE/qhQv1Y9AxeFl1BQ4iAMRK1Zkc7XRRy3nj/zFYZOzo49sJWI0B3X2KTxzGCY6QYeyYxxL/3JMG4y/WV/eLrhGtPO8d1/cL+yT6oxG3VIBA3fTjjz4SGHBuV5apkEJYr8hYDmtkiCh6/rdEYFnhMycQ0+GHXcSIiDs3vKE4cfHiBfcXf/GPlE6m7jX4r9o/qrTTepubm228kB7A0yVjspdfecUI+YcffGCGdCgwdMhfAW28sCeFgRv7RhjxvfGDH7gvv/xCQJcqbuCOrjn9O3YiMNeHwplwvS4gw/4Se1uIJrEIR7V1u4zbmlQG5i/jgtvvGJPQYE4V/rM/+7MNMwziAAEiB2IUJhCTh+/484EQhWdg1RLfJdbq+vXrdq8EfrBiDBKs/OjIQNBIn4FDo4HgoCfGHCH/sNqAHeM9DUqckDffg2ohcbkDNqQdykpYPpvN0a44ntRztQGC3GDX1YCWJ3lDCP1ewr1El19hHNBXob+Is+YuNi7ZP2CFGcYj5QhlTBwTfNd/IyqozVIX2jcxntWBQFZtP+7DPPDxpa4aI/hsurN5Tf8k5hfCWd4qI+IVxu930S0XIKAXAAWGa/v27dcqPF1XfDbZ7ZFYRdfU1NpxHBirARCMU1bsAAFnK1VUVpg19OVLl92Pf/xj4wAACG5+g6P45OOPTcuuRtptAARGbm/pJF/um/7ZT39qdAS60nqnVVprjWYHMSPA4ggQ7oyGzhzSkRtfffWlOJpc40KOHTtuIi84HrThzspAbnvtdru97vLlS8q30biJ89KY47iPpps3bTxEIhHbKxsY6JdxYKEdmfGjH/1owwyTOEAweDExpzMx/AAFQTMIOgjIBMAvrARoXCYEiI6xBgScTqXDYKmIQyPDDiJX4+Y30oLYMyHDd8JyZR7sFhcCNcrEHHaL8tDpOIg/+fGkfLB3sG+E4zdp8AGBKQ9sHeUkHwCHQ7tsom6YZn94QWhbHM81AQjlYwRTG9Wob0IQsQ2gH2H3TfdfM5HrRNlcpX1RB0X7CEvW9XKBuBsnqj0Z1Fdh8zmiAZVaxgLjCDk4Y4QxjHyaVSeAAnFHNAEaoLIKIccfTSVUVRn31JE54bW2ciwNsVoeP6ziSe5mU5MBCqq/LEiwBCYuq18DC4Um7++iWw5AMK44koIziaApnFVEG8I50wfQGGgI5xupI20s0qa0LTSDePTb11+fNvHT93X9KGIpxgSiJ2gEC1LON+LqUSyVoQ9YRzPmERmFBSXA09TcpPwLLD/CogkHKJDmgGgN6tz0cwAr6B/xeUL3UHn2N27qXCTNE8YjdIz41IvvLJyZZ9DRAvlVi9ZtFBcHCAqEPjjEF6Skc+gICBQNSOU4657K08igKB1GHICAMExWGp8nHzqRit8UWu7cudOBllwrCjjQgDQs+cDy0WBsOtFYEHni48eAoVHpQAALxEc3nQ4n3pEjR0weSWdAADgZkUYHycmTTiff0OkbpeEfVo71AQiJsQQGHLVtR10LILjaE6MyylMgNVdYZSYF99ZWVVWaDn9NTfXDqrNq7xknlC0ABOMFQz/GV2vrHY21Ylt5IjpjHHFHA9xGagwIAIimpmZdTzpgqryo6nKBEE/SABQwGNypi+UhdBACG0sLAOLS5StuUO1G+hyQhq0D4RnrOPFlWwChuUjb0Vc8F9ukDrQjjH9ru6R7xXOEwTG3Ex1ATDzGQFgoQoQBDhsfek+cxDwIz/uQVkg7LCi5mhNNPGxZCBvKRfkJG34vjJ8YNrGM9l3paNVgnI9fBvoQxCEdyrNRXBwgKBynBELoMV6CXaORaGjETzQIRJcJwqocPxodQg1QwH2AlHyIT+MBEKAiYZ5++mkbEFyCTdrEoSMBHgg6oAPYEMfQWROWxgJ8SJNVIMAFR8Jd03AQsKIABOUEPCAAhKOccBe7du2yPAANyr+ZXBh4PGlLwBSCtVp7EORjK2o1EqtwVmEYsjGQsS9AphssoinPoO6SxrgNu4hgX7Ae7QuxVxFtLOqbPRlXcD1cysOigTZjLPEhLA4OAvEQpJvwjDPGM+2sprBJCqcxrPFbojHF2GKc+TSY3H6Skz+OviE+jtVsyI8nCRJ3PdvJCrZOf5bDQaxTEbeyvU8LxAGCAXxFJwJCjFnVM1Fg5yDmsHx8R8zDRIFAsDJiUjEBmBAQZNKAgAe2GiRkcECcgx+Aw0QCIMgjoDsTOXAOTDbYQdKGcIUnoig4lJMnTxonQX4AFlwKeVBW2EDyIg6/iR9WKvdpgw3pTblxPNcCIMgLYhfy5fdmccHoEYBLkPssXnwBBBuQjA9EZbTtQ+MsSEnDzi849AWR28PajHGK6Io8v4tuCyA2b6//5Cc/cUloMUGgw0APq20mD4ObJ5/gj18g2lSd38QN8fkdHH78Dn4hzfCeZ3jPu5DOwsmEP8BCmERZ7sJy8B6XGD/kbS82yZ/Qljyp02pzEDSLsuIvfzalW0rxE4am1dHXeXnVXW4aC8MvL7f1CM18Xbl8twBi5dpyrVOKcxCIeDYjIV3rBlur/NYLILyB0VrVciufjdgCYcG2UmVbLkCwIEIqwKIICQG/A21iXoRFYfgeyhnmTOLvxHhIJticxr4BsSKicha9iemFuod4Ia3v6nMLIDZoz4fBznOtOIgN2hQbrlihb0LBlktMFsYP6WyU53Lr87ByLwcgkBIgpkZdFYDAQhnNIoCCdHiPCJnvvGcPk/ZkrxOiz0IXcTjGdSgYUBfEe3a6rwr65VdfWRzSY78V0Ajib/Y12f/E6I5N6S3n3BZAbNBREIgIzy2A2FidRJ+w34FmVKIGzFJLaX2qNDaiQ7IEUV1JkFgOQLAP+cEH75sxGgCANl2xDm5EKQYtSjTndu7cZVd5Ykz3T/7Jf297ob/4xTtuW9U26xf2mNB6PC1V10ikzqyhAQHOLUOZhXdYQdfpHQo07Fvu3LXTuuOOlG3+5E//1PLciP2z1mVaEYBgwIPsPBlYQU0LwsYHNi4+4JgYJt9cRMgZJo3SwDEBkYknSb/9u+ZoS5wRE7UDk4XVzmpqMaHeek0GjkwgjH3oU+53sImqU0s5/hrbAlRD0fPnlFfC0KF+z2fOtJt4R7+jJYR/qRQaBrQ6oz85XZXxEOqCZg/2FxhDcaS2aUpJvZZzpsiXVSFjByLD6pAjwGkTtKy4CIXyeU2mJCkloMaqO0t0PLcC2aUy2HLgNyh13VGtMlkdEpc0M+SPSiontvryW5M/9A8aUheuXNN1k5MiShWK7y9noV6MfWxGRmInzWKPkao6Bn+6lbZhDqALtREdYkbaIz5nH7OQywEICDgWypzme0cWysTFyIwnavc7ZSdFe54/d94UZV7StaKMwTNnvjGFgY7ODrs3muM1PvvsM13necJhcFemo985QgMuge9YP++WwRr3mnAXNKra9F+z7FkACO5v3nIJHETYpKaxaShc+M6E5MOACc8AAoRhIgcWjxUA6qWEw2YBf9hAwnMkwvTIkJ3smawOnNMKwIi//JnQMzJy4dTPZB2PjCHSLESxp8NlVtZqKkEwYxOK8HzngbfCEl+jmtknf0095cdNUPE4+raZHO2H4wlBWQuAiOoY7N+//4H0/rcZgeBYbojdpNRF0QhDOQAizQXpHBfAGTvNEgXAlkNsIf5chJOjuxE44prjBohz6OAB2bh02zHfaL5xq1e2wnBtIh1IHUn3yrXruj8ixzTiWDHa/QkKx3HgdpxCaYne66atWY1RAQj2GYgTOBIcA7Wx6Lirq9uhO4yv2NWOHKsNgHB3BXYOtCH5YDTHuMTm5sCBfa4iJou2Bl/CHy4c+uSzL22clQqwKspKrL1uNDVbX1XJkhfC06k658hQCgDca/c+5NowpT+D5lXIbjnEeDlhQ/rLeTKn1wsgoBnXrl0zGyfAgP2CGzeuu/379htxN7sSze8O3fPBJU5oNFJeVPQZW5FIxK7krJUVM+MTuy60MOEU9u3fZ8exc7YS46ZU44nFDgfzQf9Qt0d9+5VXXjEty+W02ZMaNs5BQMBbdAkLSI0KKqsuWC86BBVWGp/JzooOAMFeAaIBqoP6xOd3mIRMQCY+nYdqLB2XJeTv/eqPLiVDN4zphq9p3bOaWVljoJEiwBhpue7ScqVbX1TiZlgdym+09abLbdjrZnXmf7LSmdWBdYBKsvTv04vL3NSg1GbHddWo3qcXlrjJvi6lneuyq3e4lJy8GEhsvu5ba4AILRTsCsLv+z3DYoH+5TgOs7S+X2D5h/ALg0xoFc75NoAMltkQVsYbK33iQEy5WAeuJGivLZYW7RW4EogbvwmH4zvjmvG5kFMIYRaW60G/mQs3mmSMp7lQpXsmAAH8EDvxAeRIF8BF/g2nwCVDzBsVxepE0SgvIAeXwXzD4cd8CY7yGseBhyL5Gnk120cpe0j3Qc/1BAjKFcb+wjIm1jeEWcyPeHF/NbhfavnUgn/i+OANAMLhfxW6oxpL5jDWfKzv7t84QNAEGKrV1dXZE2tlkJfByXc2dL744gsDAlZhWFJjM9EiUAEsME5jkhAHUOE9mginTp0yIzmzoRC7P3T1nHEO/Wc+dxlFpS6nfo+bGuh1afmFbkbyxtScXJdRWilAGNdAmbXwWVW1bqytxWVV17mJ3k6XrA2kZE2o7Jp6F5X/yM3LLi1PoFZSIbAZNA6kYN9RAU2p51A2Yf+GCcCTPlhtDuJxmmjhZFtOWoH4MXH5kBafQMhD/fkdJvf90n9QOXiHe1ga90s70R8QtcuA5OltKvwR0nBDuJBHLEv99n6+fvMAYUBz46ZdsITo46mTx437ASRyNA94FsgYEe7Lc0hjIlypNh/37d0TBxXLdAX/rDdArGBVlpwU84uPSTo01sL4W3ICT2jAOEAwgWDTkD8jJmJFgx8aBbBfNBjaBHAXiIyMVRcghPdwFqAuSAxw8D5wHgDFsWPHXJbkzNE7zcY5jHfcERBUiAsod9HbN1xqfpE4Cxm2SXwwp46aFVik6PCsyd5ul7Wt1jiHie4Ol1FW5aaGdZyHxB4ZRWVusr/bTUs0lSFwACQm+3tMTJUpUMHPi5k2X+8FgsZzrQAi5Ln5WmvjlzgRNOhPREw8EX1x3hCc1M7Gerve1AiVuI0+zUPmFJwHc4gjH/I1J7jZD/HZaq1yv4sAsfFH0PqUMA4QDGBkf6z+AQkGKYMSoOAYDVY4kUgkzv6iJsZAYhWEOIkjLkiD3wxo/JAjg8iEYzAjp0YcBHHXmspNDUknWZfIMPDZwExK0dWSoLjETBB29ihmtBGq2aSwAyaWmpvW0eHKBxET+xkp2RJFsKEZHTHxFOmzkEsrLDZOw5Zv69O2j5VrINZrDRBh1ftYhd+K/K0W0JC1+UH7BoAIoPGtwDEP+j6ESfx+v/Ar5b+RAOJh9U58n/j9QW2x1HCkQVhc6Af7sUp/Hjevx42/WLXiAAGXEFxgr0JDMmD47mWoftAmhvEDfl4EEApKejRsSMd/Z0M5lpNAQTvXRvCDHxNJFN8HiHWOSRFjZ954IawCxd4pA4UNCcb89WDzyb+L5bXJHqENedK+ADYiBwCb7/gBvoDwWgzeTdZ8G7a4DNulAsR6VWKjAASLTcoSzsFa2B7MDfaWmBPQIyQW7DMxLxZztDsfpB2kCT0LjrT4BLoW/Nk0x488luPIB7cwvQelQV2Yy9RhuS7Ui/xYjAe6u1idlpN2HCAQCW0RmuU03eqGpWNxPOn8LYBY3fZeq9TpVk88ZC08OeIGRntdfmaRS5rVpFYhUkTcmOAtnd2uUBpcKdqH47hxNADZ+8D4Cy0xGxfa0IcgQBBZP7V09LvS/Cxp/03axjnElTmNWqg9xaGzaf4wt54AwTiH0PNB04gP2mYshNA+w6HZNIEIWvU5q9OhDxw4YHs07e0dJt5GGpEXM6bjHgcuFoLoXr9+zb5zyGejNKQ47w2woA3ZQyVvToDmiQSENuOuCDShaGMW0bQNZWMviIuDsK0IwETZiEc4RO2ohXN5EXUIInjCQmtxfKde5EeZORgS4KJc5MM4CUpDLA4Jh4QH4ES6wxP7DkCM9tCK2A7W5Bri0PdoZnEHBnlRB+rEB6UQXF+fbsyTwlAAlqgkNmjdsQBH2+udd97xZzFtAYS114b5swUQG6YrVrQgASBm56bd9Y5L7ldnfuJe3fuWK8/Yrjslml1dZIdLE0H7j7/4g3v98B63vTBHxmKcTjupSc+qdC6u6ouaZ4Y0/Sory11qepb7N//vh+7vP6cj7icGDEQsjiZ7jrSqAJjamm1GkB5WofUECAgsN8pB5LBb4MpP7psuKSk162oIIkepc5kPN7F16pj/cinQ7N2zx2whOJ6+pLTELt+5eOmiEUIuCqqvr3e//c1vXJFE4VxmBhHGD0LbLmIOoHD675tvvmXqrl988bmOty+QPcuoKej09vZYHyBahyB3dnjVWO65wY4Co726ujoTx/M+TSJwjPqee+559+GHH1ocCDMADbBFlS631AFcbTo6n71dgCVTH57YYxQoL8CFOyWwuYHjOab8SOfX771nYLIjEhG49Vi4oqJiS+ec9pJzpQXIhUUA3FHt/17SQafkgSo67ceFR6T9yScfG5hga8LR+Jy2jYr6UGxL4bzqZof1bQHEw6bN2r7fAoi1be+1yi0AhPgI1zfa467cPed2Vux3ydMZWsUl2YUxU2IHPjp/xe2prXJFIg5sVrPCYw+PVSTiDlaXECJWoNxdkZSc6v54ptkdaqhw2ele3MIqF66DsBgRQngwgHyYW0+A4KoAuAKIGnufI1KBztYKl5OmMbxEq4t7qHkPkf/p22+bVtczzz7rPnj/fds/rdWK/7KuBpgV98UtcSjVHDx40Azn0MjErqJS149iiAfRvXb1mqvXKhtNS8KdOvWpa2m55fMSYSafVnEdHG9fqBvlIiLKEF6MOuH20P4skj0MgMM1qS3NTUbo9+/fLw3P7e4Pf/iDcUGndcxHgbgKuAKA7sSJk7rP+rzuI2lyxSLOadLOBBRYxY8MezMB+ipVedD3aM4dP37C+vPLL790x9UGv/3tb3Un93YZ/e1xP//5z+xoEriGgwcPKY1hu2OHBQJ3laCOPilO5Ie6sY5xc/XqFdMyJW0AgkuvADXMGwAJHGk9NkBAzBhUPEG3IANkYOIfWBvYFtugVhg2ljGKQ2vJthA0OWzfwIr17T9sXiuAxYm/JT01GpvbODa1k8VGxfcw4gFjXxQeVi4Y6JnGlMqXok4l7Qc6y0uGfSrztzSjSFd5h/onqaOtvKoY35fjKJ/4RBsE1jYIHpQGhGE19yBmREgGolOua4ib+CSvULasOuNO5UqekIyUeoq1nspEJEmz8QexCX2vokLkstNcWV66XcsZj7/1xVpAQ8X6lraancOGxMuqU5Lm2X8FsYubWG2mChjgHAgfd/wgITnaH/Bg8o9PCjykSs51qGGBQRiCoghCf1p/4fkAt54AAfG8KjBAlIaFO8SRS5hY6Yfb5RCz3JX9Far3EDNWxtwOx6VhEF7ed3d3+dW8jCQbd+40q2lW5YAqYjziAEaslKlvpYADjUzurcGu67wIN9wC7QVA3JI6f6G0M7FnYaXeLiNQDDnhdLgQjfQqVR4u0+qWISmiJziSQ4cOG7ih+EP5+CAyG5fdFkalxSorIi9EPnzIi3JhJsDBgoBknYCHaw5Y8XP/DaK2D3R3dtW2KhNhcbMdnA4Go3Ag/f19Arta43jgLmgTAK+oqFD0b864B4ANbdXTp7+ydsRynPu09+7bp/rcMJEU4rFPP/3UAwSri0SCHog+xB1/PgzEMPDCRgiEK8jEYGnRdkK+Rzg6g0rROIRH+jne2eYmZfeQG+HsEwbyrPPqq5WMdjUwBF7+SjdJgx3wgGhODWEQJ2Onim0GLkY8VdkJGcah9YRtBDYROdsbmA33DH/TiFI+ANDUsG5LUxkwpBu9fdPSz9t1QOH9hCMdD2JKQ+Ww2cVbARFlgOCnSSUXIz7iUE5ACkO+8R7ZaKieuZFdbqT5qsssp6zavFccazcRfgMz0o05r5WlMIAlIKu0JjH+G9NVn4N9Lru2waUVe62y1QSIyelZ19w15i60jbj+YR2Ili3ilEL/+GZIUt9WXPnMlZz9yPXvPu4u73tdEzfFZWeo7KpLe9+UKymQnFar1x0lmW5XleS+aff2Q6jzk/SkX6dmtTBRnxrxVXsxT/Rr0WrSnn4usSk6qT6PCnAztACQtp/GOY40mchYgduwVNpwF+laVLmxCY01gXi25Myp9BHH2Hi9fQBlJdx6AgRtE2gK7Uj9aErahEVIKFtoJ/9+HhCJgyOdD0VEAcZDhw6JiyizuNy7DkDQO7Q3tCssaImHyIf8+ZBnUMzhNxwZbR16Foph5SUN6Jv1uzzVX5QTx54CF27Z3e76DY1knJAnABL6jvDkRRrkC72kbISnTDzxB0TgDAAlOJZs/SYcoAE4BJfYDqRNfPKE++RJGYgHICcqAfAOuk19yfenuqPbOAhekCkvQRwigc6or7LBQQTCkBEVAeFIAIRjg4d3gAzvEVeB+L5T/f0NbJSYHcStGxr8Uo8VEQQcUrJyTJU1raBI9hHDRuw5cmNOjZdRVinDuC7rkCSh9djdW2YMlyXr6/HOu5YO6q7J6WpA2UOMd8pI7+QrbrxbbBGNrXfkBdGfFtuWlqczd7QaGWkSeyggGRURz9q2w6UXFFuc2Umx7DK+43gP4jFJU8XeAgDTAhY6HiKekp3n8ncfMGIPyEwqPyzCo3dvixvJdsXHnzfjPVRwx2T3kV5SbnYcM1FdwFS1ndFuthypSmdS9dOocKkKO6sOg5uZnRIR0HfyxVo8szpi7b+aADE6Mes+ujTo3j8/4EYnZBEsWpWRKr377BRtpM643KlR9/3f/ju3s+OM6y6qdf/Pn/5bbQymuooire7GZl1rr+xgBCileanu6V157pUDhS43U5P7CXdT4qg6Rzq1atc91FmFbmBs0JVmF4uwQYRihEsUJQCGut6ISlKSFlZjzW586CPn0k+61k5k7iMGBGwScoMfK0Jk24AEc6tOK9TpL6+46DfX3NTrR91wLvcwp5kFekV5qc3HlWjuQIQN8FYgQYgQdAGiBe0IxBBiRR6BmK1UfitQ5K0kYi0QvzCI38jSWP1//fXXJtfDKprORDaH7A52AyAAAIIlNcfyRiIRAxMGAYCBzA90Y8Ppj3/8o3vxxRctfoYQOCqAwGIa47iSp1913Z/8RvYLBS5VRm7R202yghbC6XfhgRNuTMZ0A+e/tKM5cut1sJZsHAARCHS67ByGLp9xOVqtj3fpkno9OZYjOS1Dx210W/Wyt9d7AzqstLUi5wgOM8YTMMElTGrFP3jpG9liFFsczm/KEmcx3n5Hxnc6BkQcAOlifJclIg2HAqAhxoITANSGLp+VtfdZAdNLArNuew9A9H7xocsUwA1e/Nrl7txn6WPLkVu32/Ie72gz7gL7DfLFqA+jwIJDJxSvysB1+MYlA8y1AIjxyVn32fUh19QVFeusw/Em5lzv4LTbs11aGgKPjDndO35TdfnmY3ej4pCbful1rcQQf3CyKathNbkIIRzEbnEPu6p0HtMTwEFMazMZ4p6SdC/YqcYuOj3mBieHbCExNjPuMlMz3Pi0rKDTtEjIkGaSmqRnos/GYnFGoctM4YbDBA5iVhvP0zqbLDlHbej3Cyyw/iB6AnRwiFvYqEzT6nUuqqtNR3RmWaEWFOKwPYFl89OvPi3CY/7ZAojHbMAnKHpczZXVPpbUEHfEQrA4DBSIPJwCKI/MCu4CS2lkbgAC7wkLqwV4IGNDdhfYItgYOBDYvMBBwCGMtFzTKvyQOAlNIA1uO2tJnAAiFlbvEGdW7GNalUOIAQ3OYZoeHTKCPi1iC8GFoJvxHWyRwIPfcBOsyOE6sLbG8npam11p0krIrq3XhNR9xDqSY1RnPxngkK8mJJyG+Hov5hEosHpHZAVQwZEAKhwDwqRkzwFQG7xw2rihvN0H9ZQxn9qKeg1c+Mriw42Qd4a4CDgbf4xI1EAta1tElEBiJ+XL2VTUjzLkNu5TG+je5ytnVY88l1mz+hwEIqb+4XHXM8RZV5A2qcyJmKUk+b0FdbBLCZwNwkKxtrDH5mgPvWcMIQrJy0rV5qpWtxJ5QOhshah3nFOEKIbfYbVIHP+h6f0Kk+Mr1tPNaG+AD5g3PoNuuvTgk7Xa9ZW1vxJ4uNFpqTsmefFhRoo2ESVqIt6UQAVBRFqyzi6b1XhWHYsEEKkCGX21uUI7eUcu4TtD3n8nTnB8D/7mF48i6JqPGoI/9nMLIB67CZ+YBOIAwaTFkpr9AjZ5GCQQdog/XAKbJIiJIPw4gAJQAAAQJ4UNHURRpAVbSVhWNgE80uTPURsQSkAC2T9nMDH4ObnVREwQdgENVtLsLcwhahHhtIP3FM4IuVbvdiqsygbHgJuW+IbZB5DALTBzED2lwMZC+Bc4k/UP9JkYJ1NHfgA2lIHjOvjOWU/JEvek6mDBKZWFsiGKSlKe5pjAqs+0VPEQTSG+YlXJngNiJkDL9k4kSgPgABdAEG4FkKOs1J39BkCBPY0ZcROADocZzij8wLkvTXSVIfEV7bqaIib6u1O69xPKF/1u5BpZqn+PNsrQfAl9CJGfUH9wwByEy+SXInCUDbGIHRMu0JvVxqppQoiAQcNStNrlpEz6Gr1+QAC5LGkQloPvcA11EY0b36fmsQ5/IPJwDtBhSfet/DMCOhXd/CgSdYKzSNXmsm8vfL0jPm/ZhOYdnyBiIgRtjbuH6JvPxviDrJ/9jJUq36OImBgX4RMWFPy+n6Osie8Zr4nx+E0Y/AgX6jb/nfzm+yQxLfJMTD98D2FIExd+h7SDX/gd3t/PP4QL6RNu4Xf8cCGtxPcL/UN6FuER/8QBArWn4EIjUggyoXH5HhoCv5A5/onvQhr44UI4+64/thELIfUvFcAPRAtPnFjaEFe+m0vw9x4LGohpS3axcLFIiq6O8xmFaPNPhQVsiOc3sUnDE3jzV0gf36+O/TtPFixN8pNbWG7zpNyWvk9TFMLymU+fyLQtg1VlkPPffXvrh/lbW2myzmkArjpAqL17dbz36IjAVQ4ggAOwjVMV11QMpWHRLyUE+hQijnZNgbQ6IACAA8252csoAABAAElEQVQPQPAdgkgYRCOcaooqJo6jt7kbgnhRxePmr2HlaSCkBHZsrzGZugVexz9q9SXlnkj4lxRBgRgzpimmPGizjeLCdGOeJ87bxy3fcgDCtw0b1VO2oEDNcu/evVYEypUIrpSRMntA8/eH4IdkA02kbdu22QKXxQvpEB8NIuYSC1/yIj0kH7Nw8pqPYY8kAEp4T7rE4z3x+GAMx94QUpfgR5iwiCYuv0k/lIt80VJiYeWN1eZsgc17DPp4sjfDwpvyEpc0SJ+8cYl5BZVnwvOe/WDSJX3yCnEs4iP8iQPElh3EI7TeKkZhEOB4MlgZJKvJQfh80N5gJe81Yzy6zhMxxCJMRv6xKkZ8lLh48GqxgGhwfiJ5ggPR8eIVLuwhDZxNOKXJxEC0xT/ywZhoXgzj0wttQthEF/zxW/guMdxG+U55qf29tdgopfPlWMl2XA5AILJGxRR9fTSDkE5A8EijWgS/u6c77ldQUKjvI7oHZMxhMIakgzGIMdy1a1fdW2/90ObNGdlVDEr8W6jwLHzQRkKFs6mpycYk+66trXdM3ZO900uyoUDMniqul6tKWTx7Yp1itgpdUmPldF2M4YLkpEtEP0d7s1gmV+lmO/Ztb91qkQhee58i9FxM1SFLbxy0ljtVeAIAPaoTEhkObGQ+IMXhkqPDh4/Yvdmcos3lWNhqoB7Loamc9ss9FrQBi0zIBX3GkeXcnQEgYmDI3TyAyKO6LYB41JZb5XiB6PFcC4CQPEz5SDd7rEUiroiIvz/PBTGQraJEsHkiKmLAM5ABrdY7dzVoJ1x93XZ7z6RhAlJmNle5FKi8HDVdTUzFZUJExUW06QRTDHRKZGAEp4E/YqaWFnTCs2XtWWJ54I9jVRi4GQ84fkLgRxuh7sh3e6fw8wTYk2HAjDA+7vqSZspJ+6xvKaxZF/0DoVnJdloOQHAV6C9/+UtbgGDdDBG9GLMCRqsLe4dh2StgA4DdAteQQlDhFlhAlevyp2FZUyMVeOmll2xPlDtrGLM8sTNIlyIMXC32FnTCD37wA3f6q9NmH4ChHJbPlSKuX8uqGK1ORKr7RHQhtlhhE480AK66OpRxho34c7EWdS0tKXUvKu9vvvlaHEuNGe2Rb5XK+MXnn7tIXZ3DruLFl140GwhuT+Q+FZSDsK7esSNiqqzfe/11A6e//Mt/b+DW0Nhg/dXTLatu5UX9ibtr506BR73VAa6hQYD3kZSDjp84rmNIDlo5F+3oJXhuAcQSGmk9gqw1QMxJo2Yiqms0Rz53M2kvu7ZOqVfKYYCTow30DBFxVkMQ7MqKMleuFREiprtSSiBMqVZtgAHnz0DcAY1LslCFKHNDHVeVFkmxAavO3t4+7WkNCgDgKpJN/FQqS1LC3GlrN/Ya4MAQqbS02MrR1HzLbpaDcAEonqXmsELddMcejvwpB0QXcABQADFEABAOjmBAfFWhC35Md95SXfs/lA1wiNtNrH0RHpojC4H1AgjsqCD6EF+IOgSaq20BCpRjWNGzN8o+KUZu/QP9pjBTVVllIh8slQEIxsLzzz9vHAaEd0YLFEQ/Qalmm0RN7TJ24zgNwAXwYJxA2NHmxAiP+6npL/oKTgabA9pmTPunRbKo5r5sLKvhFBobdxrXAdEmvVLNgc9OfWZtzTjkOBC4DOrDyp4VPuUjD8AMjmVQ+7x2Ba4M8XpkYoC1OAQfS+wCgSUAc/3aNVe7Xbc5an4hTgomCXAsHLExJg5j+3YZ2UmhiPS4khVwelT3WAABEWMVySewpDQGlYLnYdOXzWCuEKURvB+WzxJhCPkWc2gwafnqw6tjjAdUQOTx5vDDKX0caS3qyF+aRogsYMFMQ0gbwWyAQ5Qe5kwrR/FNsynkSSTYOZWFumFnYV5MKOqcGM7ePOCPymd15Ul6yovN6VCftQYI4yDmxlUvWZbO5YkVp7/8XkTYsLRVr9qO/QKsWykjZ7vQ/+j9G6ch7oH+5zuTAVsSCDq9xYSH8LCfwSRHjROOBAIP10E6DHyuFOV2OVtZyR/Hio949H7QsqK5AyHDn/LprT3DxGZcUk64E25+C7r3CrguTkUx0RzlDX0cVuyJv0Ph8Ev0D/XhfZhzIexKPdcTIBgDEGMAHnCn7vQrexLI6CkbfvQ7/nwnLAAS5Pb444f4h+8Qbd6RHr/5DgARRgmYPyDEPdakw7jFkRccAcCCsRtjPSw4yJ/FEmJQ7ihHDGVll4gsXwshygXnw7lHHJ/h7ynX+UsqA46wEG4rg36HJ/VEfEQ5yZd8AA/Cs1/H/p6VR+/xpx6EYc5RVus7jXnmCmOd/IweW67L/xMHCBIicQpCglQwfF/YKWTDJgjvMRPH0aikwQqAy4HUoqai6q2fqz0oiIiMNF2JWTuLjZUGEidP4iDEaPpAmKN3WqTmWuVVVRkIYvEgvqiMpkvjCM0m1GO5Qc4IhuKag2Lg9AAYMFwDmFJ19ejIzUsWPrumzoOWBoPJ7lQHs25Wff3GuOIqDppMaBVlSN0W2wl5mhaSDUhZb493tbu8nQdMrXVUth2ozzLYIPB2/IfSsONEKL+IP++wug53cQMKZteh1Qj+E7LlKDr2vAcaVYF8cDwZLLT1au5BWGZr+MfXT70U67I1zHpds6Jb6U/1rJ3eyaSGu+EYBAg+75j0yNX5Tjv5z6xNeER+xOEcIBY6nE0EoVpJsDAiw/hdoc6hvBBACBkLSNLnGcAaf9xK5WeJrfMf6kj/UU/qtVnrFgcIBhlqrhAhUBRiz2YMltR0MASKytLRAAhH4FJpNpSQ+6E1QBo833zzTbOEhtCjYjpw/guzA8iujjiMvzKKyzToJROWSipEHw4jXcdXjMkSmlX0pNRPIcppumOalTkGbalSI4Wgon7KJUIzOhfIbpdTWGwMUEXlTmostFUw2SCUmgqq+EOWAmaRzdWlZpCncln6Uj+d7O81rmJO9UrV6ZAAAwCDqirlxyCv6MgzBiID57/SvNbk1so3Kgvq0udeN7VYwCdZYhisrTPLtgmYtFlGnaTSCjiN3rquZ75UWrlatcjNCfAwFqS8TH4AiSNDio8+ZwDC2PYE9MkFiHWev+uWfQAIxn93d4+7Jpk2ezVwWnBGnD/ECa1dEjEw7+CwSjQHIThwQYj5wFRECxxlfejgAZujzM2VclsAsVItufnTuceSGmLPeeicFIgcDUtq2DHAgN8ff/yxgQMAgiU16l3I7vzJgFdNFsgO+70Aker6Tn/s8vccMsKOlTNEmiMmIMYQX7iCIVk02xEbiJg02IsOPW0WylMCgIrXfuQ6fvu2GZ4BEkVHnrWzjiDMmaXbjKAj7il9/nWzj2CypSCikB4/4io4E6yt+8+cchzTgfEdIJK366B9n9YZS7niBrJrtDmk+63z9xy286KwcQDAKGOyAKP3sz8IxNrEATXq/Kh2Awju0KZ+GPZx7AZGcsPXL9hNd9hxAHx9X39iwAdRgIMAnAAIrK+xzEYMN3Dx9LoDRHy1uvnH9YaqAdyshpstqAJA8JsVZlhphgKzmubj/QUaCscBcNY3Cg9I2MpbaSLe8GKOlVvtU44tgAi9sfWMcxAMQCyp4RjgIhikcA2sYhAn8ZuND+RmWFGzYcR7AASAQMUM4EDex4mInKUUbW1GSOy6P/6Ny5dRHOcVcVAeox6CblbM4hgADOTxiHRSkDNiRCdrYs5MMotlGc8BDN7KWZyMuBvOVsJRrhQR4hlpEhQcPKHzla6ZqCi9qMTEVExIOyBQwMQhgZzvZCClFT1sPuIdfmfvkBGgiPzQ1Qta7efa6h5REWdBURY4h8EL2uwSYUf8BaeSv/+oEf4hWTynF5Va+naWkiYx1tvZVdvdpMCHc6OyKqtN1IRxHG2DdTXHhGCtTd0Gznzuik+8sK4cxBZA2JBa8T+s+IOYIQCEqfBqHojmyyb7Xkd4GF+c1jdxbpLf+mkcBE/S0mknceDxfhrTBJQLwERaIT3/5sF/NzpAIMWgPR8mW4c+EW4p3FUAa+ZAENnhF/qN5/0ccWizpeZ1v3Q2on8cICC0N27cMHERxJ/GARxorKamJrOk3r17t4EFDQEY0AFGoGOiJ77TWAAGxDXa2iQQGDH5esG+o0YMIfgzAiD2KDjMbkZnHiHf5zymyYEeA45kgQYAQhqER3SDNTLhcNMivhZG4iY4DMQ4dlyFNnWYFgsdHAQcC2c4IbLi/COOtqAMM2LvEQelaGUPmAFa7En401qVktoBsRbOxFGKb9bb8geoNCrcrEADrgXCn6Sw/tgQbYgrnWkd6YH4iTYD+BCV8Z66ASp+v6Nf3M1nrvSZ1+L50o44nvQFbf0k7UFY5b6Df+hW+hOAEH/gxqb8WVYAAQ46xAhO10GJuCmdczU57Yk+R6njCDoxpTGhd8W5UgrQtNBPbUxqrOjlmM7V4iTeNKUBgHDoIp+luvUECNqG/HHMGdrDGxX63/hzqQ0SDVRRCcMc4cN3nP/uZJCmOS/ahKQj1D7WzHHQID8cB5MCOGgXYRcBLeP0CNKEHkIHw1xMzAsDOxQrcBwz1NBQf095ST9weRZok/2JAwREPTgaB0dDhCffgz9+oTMswII/9i7Waay8lZAisGl7b7qEC3kgf7VNYnWlxaezSYPpoFEf4pKVxdFrVkiIbewb4fks5kiHgaA8fBw/mCxtK5v3Jyppf6tuli5p+PaIv7fs9Ic0bNrG/lLdWFkoH98tiEL577F04u2hskll1DSY4vF8GMrDINsCCHpn8zvGAf0JQIi+uyGdhHuuJarLg9AEE2et/q/WCbn1ldL8U3VbeybdtfYxC49HusKMjrN57Vxhboo72ShuV35jQojPro24cT31094DFId3SFe/UpcF6QBG0luKW0+AQA21ubnJNumxb8BmBCO3EtkWIL5mYfr73//OPfvscya9QJqBFAPJBRv9KMlgi8M847dpv+k985+wPVINBTQAAQh3S3OzGc+hEQSQTKIQo5bi0h5UY7nvAZVaAIk5yGGkLNQoGxbR5HP9+jW7bwItKKQtgA1xkLjQ1+SFZGYzujhA0PBUdsttjBYIwLlWAGGES3+EU7YyZbFq90HQHCJG+m/+DBFGCStbLqbhiG9WqltuaS2QCBBaithqH5CY0mGJvEvTkh/NXo5Kp1WjIvJjOk2XtYm1vTynxSkAMHAZeVlSE9b+9IT8+oZ1N4nC0S/B5WTKzkSfNPktdXqvJ0D0SskFQzX2OCHALbIxYEMe4zHsFl599TX3q1/90vZFIchciAMh51Y1bGsyZMB2+9ZtAwOuHu3q6o6Lw7EtiEQi7q64hKeeOqn2TXKXL1+2k6YBDmx4PvvsMwuDNTThubb0qZNPucNHjhhHcerUKcW5JBuGF0xSgup2s6yeGxt3StJy08CnUjYZABXW3BwTQl0o/2akr1sAEWbSBnuuNUAgroDAdAxMuba+SVck0UWZ7nbgqG8uBWI1OjyOnNU3VK/CcrR3o1a628vW93C9DdZ1DyxOIkDQmAAtoiGA2RBBBJ6+tz2KWErECY6vdIFsDA0g4DhIg/4jCUNyBSCMxdMXOIoMAQ9xQv8R9H5uPQECovzer99zR48cNSUZQALr5lShJiKc733vdfeLX7xjx1lQl1u6KQ17B8TfrVKqQeMLUTkLXqySe3p6XUQEmlV/i6yXkRpw/eb33/i+2e4YQMgqu0N3THMjHNeNVsvorL6+wcLTD3AXb7zxAzNM49gO7nd+TkZuABdAQNq1tbXGScDNcH0n2pxtd1plnX1EYJVvFtWJEpj7tf1G898CiI3WI7HyrDVAAARfXB92V+6Mm5iCVSsr1f07pIDQNe5ytVLNz051t7snDEgQgeTpMqEjkWy3p8Yb/2zQptxQxUoECNF0Xc4059r7J92wuAj2C9Tk1v7poubsG0yLJeA6WIABbg0w4JknDmNbMde6OgdY941ob08IAdhIgmL3Ug+N+ePVcwXwNaU6ODFdG7YK/zC3ngDBNZunZfnMaj4SqTPRULuAgUP2mBOIbsJ+AVqWqNizd5Cl/UdssfhuRpgSHyFKCjetIerhGtJLly4LfJPdM888Y1wGR3sQDxEWaWCkxyGS7D+w8icN2iPYbHA3NbYoNTXVArA2SwOxEvEIw4fzkKp11hNgwflMlAnjts3IQcTVXFdaxIS8jg6lgdE68KsiWeGqARMbisbHhY7gXSLS0rGkdb+NHtJNTCMx7YdNhI38nnrheIY2WM1NaghPhzgHHKIlfneKm2gQEPAdwsJq9WbnuIk89goUCMelQHAYT6KzsaXxxzlOLM3TUvz5VIvVlbCxHlM7+fbAz26Es1V8uE5yfg9idk77CeLM2nRdKwSe8CbWU0KIiXLUrmpy168b/aZF/YtydB3kJJyCrvNVvBMNugBLWXHj3w31CyCPOCkdpFEaiJvGJmfECaa5HeV+H2KjAwRzHeUY6AQ0gfkcAAu6wIf5ED4hjBpvsW65xw9LaAg5aaCNyQkBHBeDIx81tblwvlc87Zg//UO+PHnH/iLZkh5+OL5TBzgPGwekG/vEktlUjzgHgWEciEfl6BwqzO9gMc3v0Dl8D5bXoaMg4HwnPoiJhTWsH53Ld9JB6wAgwtHAAAefoDmAqixnipAO6YU0ec9KAcc7ykc+lCN0eDgDhTITD0fe5Ev4zeaoG45naNfVBAgmCmb8yHMxziLPyakZrap0L4ZmDu8x39coUKkk/9amJ2caoWES+ouy8s9PEE8kqYM/qE9aILF39H18Uqma+JMWNWZSMSa4PIj0uNidc6CQ9Ya0mMmmNSYPjkCAijIhrcn0B3EEiVFe/Dm2g7FAenagn8KbZoye6Qo7KqtlHMchcFCglVPaKaMTOvJBmmmjUkPOlh1MflaeAFEq3yoAYTxw+DJPzciWJTrkMnUHSbY+HBcCyRmUX3Qi6mqKq1VHNGHmAYJ2nBT4oqXEFa/BBUJFlfkeo2HhtYmTABKAWQ/dYkff+D0iAACCRPnIS1/FmXgtJjgPfj/MBYJMOivhIPjWp6oQfU/6PJmX5MFYwK1UfitR5q00fAvEAYIOu3LlinUkpv5oNWFJjYoXHUyn0oEQYDoW9ouO5Ux02LH6+nqTuzEJScvYPD2R3yFH5PgNdv7JgzBoBaA+C8t49epVd/ToUbPkxigPlo/8ODALhzEelxVxZzaAgLwRjQY+lAWwomyUm/d8J3+AijSC1bev8ub4SxvheK4FQHAE9522u7oTos/ak36G1d5eU21PSBXtTVtzFhMGW9z1gNUvclgOwevRIXy0Ob8htAADRBoizwVDubmyTo+dqRTYcp7cEVEkkQKH9VVVVuhIZ1mci1j3aVwxxjhDiTEFm86lQ4QvKSkyq2LKiAMECMORyT6NHvsNEDTU7XB3dHosIGRnPbHyY3mttq2t2eauXL9pdSqUrHjXzkY3plvkeqN90gzSYWwZ+cY50BujU1FXpvumGV/TAoCJmQk3Ni3xW1qO6472uixdKcrFQnbuzsSIy8vIE/el+aLb6IqyCiQy4niXeYAgnY3otgBiI/bK+pQpDhBkzymGwZKaO6jZFIJYQ2D5/cknn9iKnM0ZVvpwCGza4PCDOKDaBXFh8NfV1RnB5ggP0gVUMMaDaENECA9otGjziO8AEps9AA6DFOJB/oAUeZE2q2jiAEwABkZ5gBnySAgIQAUnwkmH+/fvt9VsJBIxYmEF3SR/1hogACHalvPyOXyM9sfRlxBfjjeGuEKEKRsrc8JB+Dk5M0+cIU9W79MCG4CbMMQJK0QIJ/JbfnOLHMtjiDbgBK1kzJA2N87BsUTV98QJXC3kFMAxjkXxGDOUDz/KC2BBgEmLJw71xmyBFecdhfzgkro1Pjh1ljEGiBCHwwEBIwNlEXo4hCAmIMGe8T43oVNvuTo0LVkANt7vSrJ0N/rUiKvN3mZhWbn3jAlIUzNd93iPq87ZJoCQ7Qxq3lY/DxDkZwWyJ983gIu1GfWGY6O8K+G2OIiVaMX1SSMOEEwKiDfEmMnG4IAtDGINJjWEGxERH1b+vMcPcGCVj54x6TBpmcSACkAAYedOaojGhQsXLG2IPGmTH5tOpMFFHfiTN/HJE+KAvJD3nMXOKhbVMQCAdPft22fpwDmwuiUeZQBYACTKgngKwraZHHXA8aROtEPoC77jhygNcFypiQzxNpGRnrHsjdKSPh+In2i+6Cw6/IECK4jKGegdP/iNDB0/S1Nh+eXTkKcc70gL5xfzpC5/5cNeh0+Ft5TJ+9svyqYvIZyVSn5IaPCzlwSUI6SVAm8rA2H4DpEmFf22cnoRldXN8rZX9/whLbgGUvU1E1jpWtIUEX7SAwR8/Xx/+VKqHQQmVq6E1PwYlQfV3GhOdaEJsDtaqeItFyDCmGdO26JF4x0bBVtYaDCgIYRdAQuE4Eec8B36RTzeI0mAftAH4RPCWn8pHjQC+wsWmMQJtIJ+Cgui8H1hX2607lvp8sQBgoZgRc7qHkJPg9DI+KM2BmFmRc6Ki46AMBEGx+9AtHgCBKEh+U0awY8O4x0dETqKNCB2YTDQweQTOpAnfnArDDa4BvImPqBAB4c0SZ+0+FAu/Mmf52Zy1A3Hk7rSjrQP7RjaeuUBQpuasuz1FrmsqufbjG9qRpchOTa0Fb17ikj5KOk9YRUYeTd6+mxwI2OPE2TIjv5DjLOkVUMavCdccAAEeWEARuITehfk8PLx+emp7nWZyoNRaHJ8heO9CmOBApH2Xt5mA80g0pqQ3B7tIBzyfNLBnsPim+/Wn5VqgeUABPMcYEA0zZMFKOAATYKI8/z0008ksj5ui0vmALQJGsBik0Ujm8+XL1123PnAYhbRM8Z2eTqMk0UtY5Z0oEHMJYzfiIfYm3fEoRxT2n8K3xFtsodKHOjKd8XFAYJGDC5MdhqL70YEYt8Jg1/wD3Ee9kxMc2HYB71LDBvKcb8OWqxMIe3EdDbDd+qK47kWAEFuEFk0Zq7eHZcG06QryBGVlqYN7yD2Edk7lOZL5CMCe7N9PK55QzwMsngSGPuIfbXZplGD3xfXddyKnlYXvSetOmnV1Er1Eg7jjqyFr9zVXgIZiUJj/LVD7yoLdQS8vDr7p0xLB+LNxixaO3nKr64i05UVoByhfareSdfcxbHwHnzwAyew38iRSmi6qrJrW5bZd4ALF1ujph46KtuO/Srr9tJ0hzoocVbbAZb+BIDVzunR0mfO3G+OPUqKywEIiP3HH33kKiV9ACS4dwRjN9qrokJKLqJTH338kaurq3OvvfY9U2P9VMZr586ddSdOnLRyTwsskFxEFIZLhbqk3sqFQqTX3Nzs9kgCgciafU0uJ+K+kjaprOKQNgwITCgzwNSnfTU00QArrvI8fvy47CvmT514lPbYTHHiAAFSblZiupkafKllXWuAoFysqEekl98vlcsJcRKsqBEVQcR5Zovwo0bJYr93SGdkKfyMfuhhYeEKiJclQlsocMmUppMUoVz34JSBB2mwqodDKZTKZrGOiiDuqNQzh6ISC+iYCFQ0SQe7C/LCjehoiegEqp6s9r22Dvsb2ALkZWk/Q2kMKj5pUGZ+ExOuBIJPvqRJngAM9eyR7QCqouAwQFio/NDMUrBVdeQH4FOujTrfKF/gvleiMZYDEFhSc5o013ti+AbHzE1sUzq77MCBg7bix5gN8fULsmZGSeGixNYoukDwSyWiZu7AMbB3CuFvk63D4cOHzcIamwquGGUPkyMwvpHNRa3CYTAHmBxSuOamJltonJQFNWBFe8A9cNc1UhTK9F1xWwCxQXt6PQBCtMsIJkSM74kuEE4ILQ6QeJAjHEHjaSYEpm6884ARyzPhPV95H/KC4OMSs+Q9zrh9vSBM4nv/9t6/9ytTyGstuIcAEAAc7WBtoYwTwQK/lVzBJ7YCaUPwaCtrQ/Lmn/9hT8Qr6wUQiFE5H4k9zUhdnUQ6qaa1RvE40mKfVvEDEgexr4ARGuJj04xUnWqk4ELcvHzd/ywAuXnjpnEiEHT2NyORiBsXoDRKYQYOg31NRNJff33auJMKcQ+EQwGH+pMeHAfxUdU/efKkiavI87vitgBig/Y0ExkHa41Iwu9B6JIhqZWu1h6Ez8+LFS3zJf6JE5slhv8uB6NbIdDAGSq/wyPDupDey8NplyAjR+SbCBor1WYQ/34dNQEB5PKhfBFTbqdjhY4lMf7rCRArVc+tdFamBVbNkvphxbNjv3X8NfcncFQ3S1eOwDbtCRkU3c+htsjdERZOaonBmT/xY2kR5lv3SYfAepI/eUKIucJUy1kZZ0kTRZteD3OJeVGORGfvtLllSzGWZUo/fg+2X6YlBr/vd9KhPfxH1xcqnwmpg2ZoEq8GQExJfjMwEnVnm25JJl8lK94MqaxKpVXgBMGIr5pUJVRTUSKgHB2d3fp0uYb6HWZLENoDNVaM3VinciSyV/PUJrfKj3Fby21/GVVpiW7dU5tDDCFOqJnyHZXZ4eFRyYrzTSXWDOdUFgzXMDhDFZZ4XGLfrvxTJXuqkHiBzUr8kV3zJJ32ji4RvwwjxKRD+dlshFCjqkt+qPeySsURBlC2MsmTcHzXH/WnAuhBe5i/fvCd/C2MpXD/PxoOFo+EuiVOaWm5berdyMGx4cjNldqwCPeJ48e0qi23Nrl/ast/g0rxjaZmAwPsTTjxtKZa8vmhEbU1QOXvFqcvllKfpZRgOSKmpaS3FWbtWiDOQaDixeTiw3c/eSbteyBITASIBQ7tIRzhYQuJwzvCEo7BxZMVESwa6fGOlRGDjzsRBi985XLqdtsdCBAWbnrjop9w1wNyg9kp6dHrfog5GRxxjzMTdKT5qi7b2WnXgnIXQxKTXc/J/h67Y4E7IrhNLlX3TXCEdpKAhDshCMc9viTCPdfRtlsus6LabpHjTghuirO7H2JEfVZ1SxaRAWxmVQ/CACxcMjTe0aYLkGQdq8uKACIuEuJmOPIavnHR7oLI0SVEU5KF+rssRFVETMKx5txLAQgYtVF+Vj7lRbvNqGzJssYdu9uiOun6VV2i5FSXufxil8nVpsqf9oQArpSa65Ta9tzNVvfBucvuz549ateiIt8lDxx68WZhLcLPiZm1NdVWjpvNt6Sm3KMD0WrN0C2sQCHiEGGcJ8ZebFEpogcos4pta2uXbLdcBLzTNh9ZyVZUeDVngKdL6WLIhpU8dhGMMTYQ7SJ4rXzhpliBd3XpRE+Vn43HMS06sJaukjYedhEBIAAFxiHh8vJzXaHEC4zbnt5+Xfk5ZkCIJTllzVT9CGvjVGlFZZgH4aTcE7Lr4B1pD0izhTAV5WWuQOVZCkFVEjGA0H4NY1bjqpeNUPUphoK2F6g2q9IBcrQH6a+k8/NaCyI59oMoM30F9vE99B/PpdRnKWXbAoiltNLGDBMHCIg58jcIPsQfQo7hGpMOmwIGMAOG96wesTGAOLE5xCCHkAQAQK5HONTGsFfgHenjv2fPHpP9zer4gqFLZ3R5jy7oEVE14itCzHWcRjT13VbjmlHcwgZ4cD0n909zxWdW9Q6Xp2tCh3WbW5LOf8+uqdMFRTftWlOaOrOq1m6S4zIhborjnmjuiOYmN0Ajt2GPG2u/YzfMdf/xPbtmNENXn461tbhp3XedJeAgrN16p3xnxkatHNN6Ut6JLlnm5uZZGQCZoatn7Za5nB2NblBl4lKhgr1HdCNdp8pc4YZ1lSngk5wqIqW652xv0D3U3ZaWKmqXJc3CIZToDHwROW7ZA6C4cCi9tFIbwlrFFpa7TMldVwMg2Ige0wq2q3/IVRTptj0Io/qLYy6QUZvRmIgGHAXEEmINwYSoQgDQLmEc+JW4XxwAKKisYlFtxEcr8wy1Ad8hVBBYiKAtOkSgeMc4wZEuxBhOgVUveakYeiocBDwGPuGeZgCMMqFxkqL+gYMgLd4jysH5caizihSX7wAJeXBGD+WEYOJPfdkjUEEtHmXFj7Qpuz/2Q0aAKiMOq3HS5N3DHOUnPdJfGJ46LuZnqyJKsCB9axNluND/QWUgjs///gBAf2xEgAj1Tazfg+pu/aY2e1CYxLT4HvJYLM7Cdwt/h7Tu5x/eh+fDwj3sfUjnYU/S4UOdQr0Wpr3wd0gzDhAESLyTml17AILJj3Uz9hGclQ44ABoQf4xV0CFGNQx1McKwwcN57oTBH/1iVkU4NoY4cgMdZDc5bgDBXdF5uo507E6LVv068VCTelrqaFNDrJy10tM1oqzYubaUlXh2Tb1xCna3s4gLVIPrPdN09/OIVu4FB04YgZ3SVZ9R3RGdqpvquDIUMU96YYkRXbWSgKHCVv6IcLgSdPjaBeNkxjtalZaMcARKnstoMW4luzqiO6dvGJDAKURV3vTiUgvDPdR935yyG/Ty6ve68Z524wDw51Y9wGzo8hkDwTRxHOO65zqvYZ8A6rYRnhlxSeMCK8Asg+tMxQFl1URcdm29qifOquOOGWmtJkDQP4wBO6uI1WPsN/60l1FmfP3/ewYa8e438Cx+wp8QDq8wgRNe35OOaKmVg/fKgr/6MMgpkv7goxd8cMHPfsR+J75PDENYn+R8fIsnf59ySGX+afkkvE/Md2He87Hu/UZRFwIE6YS2IJ2QFvtP0xob0zryIzU9W+A1b18EYAO8MxqLaQJWuIDgQnqAXhD58Q7RHvN5aIgN2gJT11yMQ9mIAEH7sOhkcRQ4QeoJPVqsDrxDZZbFLgvZpTjiYGtBHBYKiY53qLqSX+CMWUARjvIE96A0QhiehKMvKDsLm4WO+lJXuFzKvxTAThxDIT36knwoK+mEvS0Wc6TNZj+O34SlLGH84X8PQGBJDfFm5UUFAudAg1BAjFbIgAaE+JMpIEID0VC8Q3eYozWIg1U0HATpABjEr6urM2CZ1Up88MJpv8LWCpkrQOEi/HWcWjFqtcZvpiuEeEziIH7DDUD8uc4T8Q7+TALuu54Q4Z1lVafVGdd5jrWL2GslTvwkHY0ASLA6JzxEO4ieIN6IeEjPOAy9ZwXPFagzalzuoIYL4NpSC8e90pqYKSLocxIHZW3b4fq+/sTKnFW13cqH2ClLoDLR3e7SxfVE4UzEkZAWV5fCrVDeOXVMmsRqgAKipDRdSWr1E1eU27DXuKhRAR0S8qRicRA5q8NBMBi23Oq3gKZVHCAAOyZpb0+3u6E5k5uXK5XLHaZOOSOR6u1b59zVS6dc1myay9ZibHvDEVe5rVEiyHHXKxGn7V+Icz3w6t91tfW7pSKcaiK4GzpxgKNnWLA1NDZq7nFlZoq7fOGsuyqx7o0bN12x7mb/Oz/4odseqY8R2HlYXE+AAAQC3THCrwYzDk9zGn+sqClfSXEJKwKjPSYWFGEbligyVXQHOkSYd9/9ldlGwE0CiIEosrglLewioGUQYt5BHDlO6IguB4JwBrCgHCxur1y5LDXXA0YjSf/ChfN2URBlJjw0kzTx50IhwIRTIvxRNRKH6h15kJ69E+1MFq2FcI8KmPJFeyHyjAnSRL2Xdxj8QWupJ3SW79Bc0qCMGAhCsy/qngq+UxbqBy0mrc9kJ8LlSUVFxZ7TV9qUA9oNI0D9aVfy5oQMFv4B9OIAQQZNTU2mHhYqS6OBJhB80JjjMkIFeVIIzmsKhaLiNBKVs87VfCNzKkaD8qHzeDejK/36vv5YnZxsq/JUEUeIvsn4YeW1WmIFpT/+fmoRYgaE3RUtP5xt5Jq8XqIb4rJnIfGQMvDcgVZfpMnGNXsPiVd6WgKWhsqlO6opB2GViH+lPFhxsVcAkJC3WlCvtQ8S0lJIW6FZfaL6of/kR9jwCWVVO9jGuNLiFX/gjELatvEey5+9liTJ10kLQBoUgKUUlLg5fTI1YGhTOpPBwgBKRHxf+Ef7S9/FivtoCWzFum8L+OGAaus8QNCHHe0d7puvPne/ffs/uZ0Nda7h8LPu6RdfETHpcr/6xf/hBntuuRxXJe5y2m0XCJx4/s/deF+bu33+G3fhm8uu6+IZ98qP/1e34/BzrkQE5sqlC+6XulCnp6PdgKFxz173/Msv217P2//lr13m9IDr6+5w/dEp9+Ibf98df+olzWk0pub3OpinzNGVGlesYKElpAmdIX2eECHyCLSC79AZ7BBa77TqfK88W1i23vEKDYi1b9++5SYlCo1EIkbgxrWPg4SitLRMgHpL+0VR99ZbPzTa9M477+hstjqjR4gpUZYoKCh0r732miQeX7tuGeBVCSw4oQEaxhE+b7/9ttqqwr300stmsQ2biX9Tc7OA9boZyu3evcfUaTHAq6urMzVbiPW2bdWuU/QQOvpP/9k/s3q9/fZ/FUBkuhNSkQVgaIvy8grVq0ALg14j5hB2xLGHDh7Sfly7FtKDdqYcKrvQ2Z27dkrdtsWIOBIarkUlHSzD0TxDpReV3J//7Gcm2WnW2XaU5/XXX7e2/vnPfur2CdggO9S1XPuAnFnX1NRsihsAMAuIHu350ScvvPiiLS4YzHGAgHCHAcETYpHo+B3e478wTOK7hXETw8bDKb0QTtmRov33fD+/ExwBQnl8YP8y+PEr+Ac/0gxVCO98rG//DXG+/cb7hPIlhluY5j3viGaR5lNMfD/ve99voegGgiIkgAIybzp+dQEi5Hzfom29eIQWYNz7eeABguHDAgsi8Id3/tYNt5x19Q07XVpJjTv4wvfd55//2l04/75GUYo72viUa+0WN5yd7k6eeN5Fh++49o919aUUCvoHR9wLP/qHbsdLP3JJU6OuTbYCty6ec4VOezgyeR/RSbPbGne5l1991X38wXtuvL/DTeoI8hHtUz/z6g/cnn3HXHGJDhpkcRJz6wkQrLI5SoPVLfTh+LHjtjfarutGWb2zIuaeaPaumpqbRLBPmJi7Q4R137792hO9IgD4nu1zvvvuu7aKLtWq+Oq1qyaG45ieCq2aCccRQqyqL/239s49tqsju+PH+IXBNoRHINiAf2AMBAMJEN4km2xIQ7ZJ2iS72+5qq0jblaqqVfNX1apqpVatKvXv/pXu/lFtqyYbQrJJSoAqgU2gCa9sMOZlsHkZm4fBGNv4gY37/cz1wPUvDmAw+FJmrJ/vvXPnzsw9M/d8Z86cc0bbiq5evdox688++0xMUh4DNOLGYC9fIFVSUiJvw6PdNbOPlJhrldZem5vZB3uMY9zUlW1Pi4sn25bNm+2VV14R088SQ/6tuz9l8hRnnIcj0dnyH1etspctW+Y02XjXQo36MfJjs6GTJ07a9373e3ZMu+Uxs5ggwOK7xzYEZY255eXunQFZlDAwEOS3c+cORzMG7Wx7ytLAKCljbNmyxfmsw6u2pxkzD1wrAbosAzDL4pk2zU6wYk+lUq43DJmaq++M4dg/BTx4cmSkCSi4j0MIf7cAov+ahNjBpADjBNoTgGDx/LgA4vOP3raGKrmK0D7Jk0rnWN7kR23zb35tu3ZuV+I8WzJvoSzFmy1//Gi3J/P29//LDm3eIDcQDdbWk2lFM2faI6tWS7trjMSgjdZaf8ryO1tkSd5tLcOkPps/xn7vtdds17ZPrf7YYa1bSOkkI9eekogppTWzseMna0SfDIBgpgHj9gZyqPqyvkn9YFoimx3XLII9o1kTwFq6UZp+zBDOnj3jgGX16uccsz9wYL8bZWPs9rA0zVingWliYHdae8wAGuSDaAr1aRx/nhBzZjSNSJyRPaIpRHXMCpjpIFqvlxV2vhg6Pp8Qo2OFzeyB2TxrsmjMLVy0UDXNsDox9ZbWFgc0zIwYobOlKeJ2wAZAPHWq1m2JgCsPZiV4QF68eLHzSt0taQqgw37X2RI7A1SIjthDGyBnxjKjrMzNIo5p5tChQQflMcMAPJHesDc278naE7OEKQIFeAkirOECWpYBMBJ8aMxDiu90tEPURLg2g3DqdfTaEBJBgQAQiWiGQa9EHCBghrViKJU7ttru9W/bs9990h559Amtp5XZMa0/bNrw31ax57hN1wfNQnTJjOn2gz/4gb35j39v+7Z+ao2SG6MZVzRNI8XUZFvz/Z9aR3OTHav8WkoPJ+WqJNvatA9FYcks+501a2z7ts12pGKHGGKTTZK4ClHW1NRsyb7Hi/lF2mO88FDOIABPyveSBq5RBwYgEKmi/QUYEGDYxJGGNYLt2790AFBaOsOtLRCPuJsBFSNwAvnyDAyS++TBfZ+XS6R/iKN4FqbMtxidR7YzPBfVBXsZbGmi9QtfXmSDE2m1IaZmTs47kQ6AoCzyjDT8urTF6m4BRYsTXyHepz6kI5AnTJ7yOffacuTJNWm5T31IQ0A0D41YX6Esyo4HaMCzfvAJ10dUTloCMxN/HgDCkSR5/4YCIGBedDxftv9IHXV08yo3FRhHkJYO7oZ0iuvzDDe5R1p+0am7ftD/QRo+TqdGK2I0Nl60wxIJbfqPf7UlC+ZY0aOLbdKcpfpIuyVT/pV98P5GLbyOsOJJE2xaL0CcqDpsG//z5/bJx5tcg80pL7MFa16x1/7ojyWHr7Zf/uJNqz2430bm5VjZ40/YK3/4Exs/cZJ9tfNz+2zj+3ZUsvTFTz9nT313jU0VeMS1o2ifoQSIB71/JO39A0AkrUV66+MZLkc/UvAiJj5gfowaBmuRGsd25y9dsTrtj3yiocPGaB/jhwuyrEneTvPlpO+yHOm1ymle7yDDzjbJ6FGO7/CCirfUY/Kk2tzWbbOK8uy0PMHm50aL8Y88lG1jCzXCwXV3CA5YPUAAwLTjWcnXd3/+P9pUq9QeLplphdLAg/Mj+jgoWffp+jPuXvHkYrcg2y45ce3RGtu6aYOTH696drXNKJ9no8eOc0aFhw4esg0fb5Rl+Tj7zjPf0drGdLeR02mVc/hghe3bs9tSUsFesGiJRCYT3ag63jSDDRCstdB3GZXebJE6Xo9wPvQUCAAx9G3Qbw1uBhAwGQCCaWSfkX6/ud08Ek+qXx9ttePnOp2XUzydMmMoE8M/ca7DeVbFS2ud3GpfbO2yorFaKNT1BAFApzy4HpH771EjIgv60xc6bfaUPDt6WrLUGSNtltxpsz9ECNHMKw4QyNEP7N9v/7tNxp+SYa9YuVJb6s5yg4ImiR3OX2i0OnkkZW+CUmk5FRUVW82RKtv0wTrLaJKluTRiUP+etWSlFc8qt4rffm2bP/3STpyUiqRAev6CcntuzTOyb+m2tWvfUTlSx5YIoqRkmr362qu2dOmybzRLAIhvkOSBjQgAkdCmv9cAwb4NtZo5dElLAmbOdf1FuVieMsK559Z6nBMpHTjVpplEtz2ektab5MHss4C4pEl7NJAGUOnEbXf2MDfLmDYxV+CS6e7djNQAnX9vn7a/OH/vhkfllURIShcxoVmCtg1rgDBmZM/Pa70AH1MntRiKbH3vrp3WKYv6PBl6vvrDH9o//d3fWIPczaxZsshKtPh68UKDNXRl2MynX7KdMlKdWjRJC7FjnQuRai2Szn6s3C61Ntmbb77pFjOxdXpGqp54J2WRNz0MNUCk9wFfP9pT3etaH+lvYAT4Epit+L5DfhEoR3Hp70c67vtnXQb6x2yHOF8frn3weXPtnlfb4Y2A4MvmnGf9L36PZwjUhfvk7eOI92XGyyE+PVA/0vhn/XPUwZ+nPxPP05/H39/Xn7h16zQQka+bnrBInU7Gob32jcuRHwtQcRETjTeYMwgV4TprsxhTFKJOlzecxTIYd++iltKhM5+tfRtYCKNeAAR10Q1t4KL9oTVaZeGM/aT5DtyzQg7qTFo+I7/nMYtsQhqJoK7r3WPNTSLf8ckD9T7P8XH8x4dFIgyNCCwA4mIDR3tAA+XQ0fklKUBnTweOqCRu3brV2QdFuu0FtmTpUquXf6mz8tHU2nLJPt203lovnrMn5j9u85Y9aX/7F39qi1PF9vismdYmdyXQ52Sr/DqNK7FuuXZZ/Nh8zSwLNdOT/YG0YLplY1QtY8t6ae7AiGpqauyNN97Q7GGpm4HGGR+0Smegd0o/REy0D+1JWeTP0S/YEk/wzIo+Qb/iPn3f0UtpaGvOK/futTJpbl3rd2pv0tPnamtPOvsPZtaUQZ7QFfVSNJDwnHtcrruLpEGEGir3eQ5/XxgXdkoURl5o+qDJg2YQKrWomBfJYM3Xk2d4J/o9P8SBqJCy2I/WE/yUumPXcUXp2DcdjaUZM6IFdMqlb6JuukvqtMuWL3cL6dSZ56gzZXAN/Tj3tODIsxyxa8B9Ee8LbaAt6qvlUoX19SOd/1F/6Mo98iB/+ArXX2lvDAYP0Am7EPoJcQEgXLMn6x8NSvANy0dDR6Fx6QR0hsEFiMhi9VDVEffRjJHKG07rcKoHc4ah85HQoehYzveSxB7duHtQXVD5Azj4uNT3naoeHwHpsSTlA2HbRry38jzpeAe3GZHSdOs+VrBogNBZUQEdqzogYkGXG31vPJ4CSrw3aagTTKNAHlDPyLlfxBS0XqKPCzfWhbJMRi2Q8m43QH/cWhDI53bmJb4toQfNynvD3DjClNjPgPfhPkwJw6xT0uuvl7pqi5jKNunVVx86aE/On2tLl6+0f/iXf7bFpVNtwbRpdvlSs7WrHS7IFce4mY9bYbfWf6Bjdp58a8mJpiyO65ov2wG5oYFJwrhQ+1wuhvT66687RgDd4jS6WwBBGfQHDxAwPUdTOowC7w+j3r17t+sH+fIagAPDiDYm5lrmVFrZmwG1zZaWZrcGM1k2BtgL0BcOH65y9hJsPIRfsClTJssO4byAuN6J06DvBx984DYQApwxNHtCKqWUgUYZzBLGOEr9BtuwCnmXmCkGzAZD5XPmaPOhOvdNlpZOl5roWbcGOFZqp7xLRUWFe7dUqsRtVIR9AxsQoRbLTHGE8kPdFhCh7WfIyr1O60KI/ebNf0y73k208WLOvJ8HCECFAMPG0M4bxxE3Ru+CDQN9BDVdVHJJh/oqNhXQmb5HHqjGYrfBd1WkGSbGeHyzfEv4I+MbRh129qzZLv1i2YtgV3HqVF0ACIidtOCZCkd+AER/MwgsLfmw7jRQBowV0QY+fnCI57yhtrS6zgzzb5fXU7g/HxV66u3tnS5dBApieMqDeJgoHzr5waCJa1Y+dM7x48b2go1GVW7UJ0eOWThybHOggoUp2lE42UOlr02gCMC4zq6XJM656BaD5a15d2iANSgqhTAgvK/CgCl7pOT6fAi3G7quyg+YZP35w/P1u25MOpD8mtvl30feebPk7kUkugYQ0BxmgI8zPlSYJfr3ixYt0jtctkMH9tpp6eJ/8unn1ijaLywush/9+Ef2y40fW1bLBRul2UGu8rwikeDZ3JH245/+mZ2uOWot8vElh+bOPXyPwLVgwiTNRuqdTjtlAEjYA7z44ovuhy4/8T4MNkD4ESptFQcIBjvE+f7LEZcPO3bskHfgqc6auk39AtuAkqklDqgZ4eIgtEh2BzBBdoRDTMbsKEd9lrqnSlJuVobrEtJhaHZO+v/YOWBX8cknn7jvaaryxDL7+efXOEeRPAujZBe5ItEa8OY3f958N9NjgyE8/14SKE90thHVskGY6UbwDXKpcey47BAEMBjaMYDavmO7M4ajb1+82OhmCGVKzwgfAFuodj6l/PfJUI861Ch+vgDlK9l9zJ1b7r4HDO0AxjNnTtsxzWZK9G4ACZsnQcvp00udBTnAxXaojZqxVFcfEU2mulkWMxQACuM37EQAJwCD8pkpZGtABsCyDgbIUD7gMUX9o2JvhYCxPgCE/zCSdIR5EDjyiwOEG3mrI9NBBgsg/LtTFusI6cGptCqSW75u/aXRNx4xwd76p6fx16SDwYs79L6jv3P9KB5PAhfh5bvX7/Y9ixiNp1faPV36+33v3PyqXUZltU11NnbEGCvMlWt31Ze8bjUw+9h35qCVPDTFCnIRO1wHCPLBCAyDLD+a5rhKrg7Qhz8mtxl73nnbNladsAlFxfbsqmW28oU1YkJtVvXlZ1b5xVbr0D4OhbKUnr38KSuXCOrwwSrbrxH4RPkV68mW51ox1MllZQ7I33rrLVu/fr1jUIDQyy+/bC+88IJjXPF3uhsA4QcRABH503f7AwgGFocEYDA0fEoxa6ZuAFqdQKBUo+5Dmk3hi+lcg3xYyahuRqnENhoIkC8jb/wLYfwFQ2d2BGOESfPOzCC2bdvqXG5cuHBezZhhT8kVCd8RgW8Lp6WMuAEdDN0QLVHWCInqAAwGTzgdrZebFEbwiHMOHjjgwJ3nC1QultKV+yrtpZdednliIT1abj4QjTEoAAjpSwwMyBOXH+zNkSefdDBw6IXtBgZ1BAY7zEjwyzROg6yaGg0ElK587lyX1wW9LxbaABVl4XqEb4aBEu/G9eGqKmdEVyp6UW9mGoAEs3uM+/BWzOwVLTjicOHBbC6ImFwTJOtfnAlz7kVMdBo+BOI8QAxWzRHzX5b2UocWqNlrmsC2oKiostdzjpYZ2HOaBewu3fegQTrS5Lg0cqqmNNxn72d+gAAslR+5wvgzlT4vO2K2aFBRpl7JBSV3achvuJgcKriXOyRfVf0Y6F5L15ufq5/yy1X92mUr5PbKVrnUgZClAtHAYo9sJbtp6OqRkdRVycCHZdvZy+ckx5evmkyJQ1Sxbt0ryNZsQi4sVGOXl387QasbgTrRl0Uj8uYr8vOlZCNky5CdNoOA8TGC/VwLywf2fqWF5Tx7TK40li5bIVHQSLnUkFz8aJWdOY+TzHxLTSu1cdJagnlgWbthw8d2oeGsLVvxpKywF2t2Nl6uEjTCFVO5rJEjM7NCMZZ8MSzq3tBQJ6ZW7frPsJ4r8t8zy8Y+PEX3VFeI3hsGGyAQ3/ADHDxAcOwPICgba2DERfR53pVAWgIASl6Ih/ZI/o5IhpkB74cLDhg0AUO3zEzWB6LZKd8KKuEc0RzjiGYYI2pESVz7wCyA74u8qAOBesFUASxENLnSHOMcBs8PRjpJDJV6k9cuKRZQ3ooVKx3A8R7MZDG8Iy/3niqH9/Flwcg5p1+Qt6cP53z3/puHdgAps4CpJVNVu2iQRV7Ulx91gE4+D67JhzwoByAljrx4Xw+QiHgx2tsrcdkCzUg++uijABCuByTwH41J4Eij05B0FDouPxqY68EIlATjP9/cbYfPqOOLqbbIrmHE8GE2Ki/TJo/LdQwW5r+/9rIDCuwgYN6ASKY6dVnRcDFpPSd7CewiYNReowkQgFFmaXEbXjQ2X24PZEMBWyJ9tcpslnbUCNlckB9h+oThVpg3TAzarKquTekk+hJgEPAzBGjpW7MxI6O8uAbAqurarU0PtQns3EKm8ls4faSNVN7Z1/mAy6e/f+3dHdbSJdfOmTnWIZl+QdZIAzQ6rmptpEueNAUcI7I0YlUcNR2WES2G0k6dSs9Hl5epTa40e+CZkZly1S1wINCkEROLXEv/4uf/Zht+/Y6VT8h3z53rHm7ff/1ntnLFCjH6s26Bs6dL9ijNjZYltdXUtFny5HrWdkokcFgO+3pUh6takF60aLE9s2K5Y35upCiAoD4smKZSJSq4w47s+cQ6Wxst9ehjWjyt1ztlW8nsZ6UOKw+jNEpvgHnxDvFZhb93O0cYFf2X/MjXMzAYGtc+DKQ8vgWYHIyNfPgW7maAljB56gsgpAfuRe0atS805H0Gy04pvTwPMrz7QOiWnk9/17QP74KSydp33w0A0R+RkhBHpyRw9ADBB0HjEUdn9R3Ep72TeovniklfdQZvgAU/8kWffmxBpuToWgDWSL7hkkYpYv4w8mgmEZU6cbR2Y9Movbld22k2XRGz7HGzCpjPFQ3/WevN0X3eCiAYVyi5u+61Ks+zSu/ESLpJHPljZFco2wrsLBqaVabyI16vrzQa1UGfngwrEIiMGilxm8CDvCgb0AGsKCtXZU58SGsqOt7qcoQg2AFAVka0ppJO164ejdIEDASAIgoApdwv6EUBFFguaXw60rgqoWlwmgAACU9JREFU6z4MpbKy0v76r/7SRl+9ZD9ZPt8xnvWVki0Xz7Q//5OfidOwEK/yu/OsoVFg0XNZ/nLG21ebNluO/PNktGq/AzH3mktav5HPpVefX201EiOwpoBohXBMcuspMrDr7jxju9b/u+WIcaUWPm05E1N2/OJliRSW2rRxowRg1xk1cnja4E4Zj3+ed00HCN93PUD4tK7S4V9iKBDsIBLTFN+siGf6HP2U1E81iYvf96OXeFw8Rx8fj0s/h5nCwGDALv/eBDBjRuLiGb33r69TwAQJ3HNpdE4+iKjEy108913ghtLxDFINZh1cUJ4TRUWprv0HgBzf0nOIl+J1upZIJ+n1Iy/yJPQWoRGm8qLgAQRESJH46OYPpaflmvBtz9NeyJdZmBye2WOTtIsf79ckGVmHQGlKcZGrM1vddmukrx6gHzMiqUY2Nmk7XYm4ujpdKZ0CyR4RdLQ0txAt0UfoLzDliBFrIbujRXutSCVWf90SkXVkoOmUrbWOUbJ6j8RnN3/Lb6aIM3Z/Hj96AOBJzrl3vV7XR7/+mW+WEGKGkgIBIIaS+rdQtmfsfFRM1dMBws8m/JEsHSOF08eCzycWFU6HmAK0GYwcSPUjeEAVcMGmI0JXF9Gnpg58aN5ewHNNLcbrmGxvu8fbG5DkOppPSdvM5RalRzttoMDpK5PO1P01R//zoOCPxPvZhJ/9kp9/1ud9oyPPE/oT9fCenq7cjwNUep6khf7xuqWnSb+mbJ7h2bhoK71OPk1/daR+fo1kIO+dXpd7cR0A4l5Q+Q7KoCMS6HB+MYm49B+djuDj3UXsn88nFhVOAwXuiAL9MTfifLw/jzNg4uKyfJ/GV8Qzd/qrv+fPfZqvpfmFxo5TqWYqquDTsNsazJpFXLSZYNDkw/fj86MM1ix4BvsGtJ1YqKae/juKAwvpCOTFAjdeY4uKip3NAXYHBLSdciX+RcNIFLBaXaOyTL5APgEwJn/ck3NkfYhF8iSHABBJbp3eutFB6eDMIFiD4Nr/SOLPOfprdxL+BQrcYwrAhAn+6BmtZ84cAQiO/Y3w0dtHvZW+jkoquvnYvaCG+bAYKvcvSpsIVdIGqZ6SzxipvOKSBCPAL7/8wh6T0RlM/7zUWCkfZn5Aaqjcx2YCQzj2YoC5sw7EngvsNIdqK1plnKPhxGZAhHOyw0BrqUzqwtXVR9y2pKtWPemsrp02kICjQHkzs8OOCA20muoaZ/hJeQzs2rWgjiorm/6ck7oqu7rNVz29dpYrKIH/AkAksFH6qxKjIj4aFh89IJAu/dw/68HCX4djoMC9oAAMmxA/pp/Tj4mLi5h83XBN8YX2UC6Wvj+2DGx+A/OHeWMpzMgfLS023UFDaN++SjkxLHU7szmFB21lPHt2ZA/AbAJQwVUGQMCGOOXlc+03W7bYnPI5lkpFO8Nh4UwZ1Ono0Ro38kcllK1BW1W+t5j+fe0SV1d3Siqsu21aKuWM1/x+EbyLJg7axOmC29MZUKBsAIetTUeMlKW73oEZCO8BiCxYsDAAhG/4cLwzCsQBgpw8AKQffSk+3l+HY6DAvaCABwPK8ufpxxsBRJMW7jFUwxdSZeVeWe3jB6ndudZg5M8oni1C2R6zqUl7aVQddpbMGJBhIMZsY5aM0TBEw70FBnaFMhY8LitnXHdM1ogeGwqM5JYvX+H2vwZsGNlXVOyRId4MGdW1OvEUFs8RSLQ6pj9PRmmNqh871WF4hnUzsxBcVSAywgYCtzDMVhBvlaRKHDAh7sLAD3A7eOCgA45RowodWDlguRcNc5tlhBnEbRLuXj8WFzHFy44DQfycNOnX8efCeaDAYFLAg4DPM34dP+d+XMTU3z3ESPjdQlyDcRqiKHyD4YcL0RHaX87L7d4KJ/qZJaeFbsSuET9H8sTFCmmwCMYSmjxh0DBkVH9h4KwRMMtAbItxHr7G8Nk0fnzkrI7nEUsBNNQBy2IWl1vkNoZ8cMKXJTcyV1Hh1nvhT+y8ZkC4A8E9zPC84S7/Tm3jCbAAVgAXdSQv8vYiOE+3pB0DQCStRb6lPh4gvIipv2QBEPqjSogbKgqkM3/qQZyfQcB009PQh30/9uccYaSk5cc1ecBoyYMfKtYs+PpnETdhz0H6OBPmPt8SYEE81z5PZgH8uOfjqLPPk/j4tbuI/evh+Vhd/S1ABfkT5VE2gXOfn4tI6L8AEAltmPRqxQHC3/Md11+HY6BAkikA0yXcCCCSXP8HsW4BIO6TVu8PIOJVD2ARp0Y4TwIFPCCk1yUARDpFknsdACK5bdOnZjcDiD6Jw0WgQIIpEAAiwY2TVrUAEGkESeplAIiktkyo10ApEABioBQbuvQBIIaO9gMqOQDEgMgVEieYAgEgEtw4aVULAJFGkKReBoBIasuEeg2UAgEgBkqxoUu/du3a4O576Mh/6yUHgLh1WoWUyaZAAIhkt0+8dmEGEadGgs8DQCS4cULVBkSBABADIteQJg4ziCEl/60XHgDi1mkVUiabAgEgkt0+8doFgIhTI8HnASAS3DihagOiQACIAZFrSBMHgBhS8t964QEgbp1WIWWyKRAAItntE6/du2FP6jg5knseACK5bRNqNjAKBIAYGL2GMnUAiKGk/gDKDgAxAGKFpImmQACIRDdPn8qtW7fOMmpra3vy5Jp2WO/2fX1ShIshpQC7VAEOBQWFztMk3lxDCBS4nynQ3Nxs7MTmtgxll52Ehiy59GZTorg32IRW9a5V67333rMMbfHXM/qh0dooPdrf9a6VFjIeMAVwwodb41HyXY/L4AAQAyZheCBhFGCPh0716dzcnITVrG919Om5zYbuB7fcfWt+51fwHVyff/jhh5axa+fOnlSqJPHb3935a99/OdBIbGRSqBkEm5IEgLj/2jDUuC8F2PCHzXbYFOjbPL72feLeX8Egu7QREBsUPYgAgdQCIN+5c6dlCCV6nnhikduF6d43RSjxRhSgo7Zpt6sAEDeiUrh3P1HgfgIItgZlI6IHLSC1YOvUuro6y5Cuaw+bhI8bP85yc3Ki3ZSgCHMsDu5fdH7tmhMfogT+SkfkikT6o7/l5Y3X87qepr+0Sc/j7tcPgGBRj43OKY3tEUMIFLifKXDpUpMTm+bAa67xiIF8//fgu4PAKqZAM4j/T2sQ/c3YfBxH+E27BqRst1pZWekkFv8Hec4VhyV0on0AAAAASUVORK5CYII=",k3=({cursor:i,onPaneMouseMove:u,onPaneMouseUp:c,onPaneDoubleClick:f})=>(ue.useEffect(()=>{const r=document.createElement("div");return r.style.position="fixed",r.style.top="0",r.style.right="0",r.style.bottom="0",r.style.left="0",r.style.zIndex="9999",r.style.cursor=i,document.body.appendChild(r),u&&r.addEventListener("mousemove",u),c&&r.addEventListener("mouseup",c),f&&document.body.addEventListener("dblclick",f),()=>{u&&r.removeEventListener("mousemove",u),c&&r.removeEventListener("mouseup",c),f&&document.body.removeEventListener("dblclick",f),document.body.removeChild(r)}},[i,u,c,f]),m.jsx(m.Fragment,{})),J3={position:"absolute",top:0,right:0,bottom:0,left:0},F3=({orientation:i,offsets:u,setOffsets:c,resizerColor:f,resizerWidth:r,minColumnWidth:o})=>{const h=o||0,[v,y]=ue.useState(null),[A,x]=Hh(),T={position:"absolute",right:i==="horizontal"?void 0:0,bottom:i==="horizontal"?0:void 0,width:i==="horizontal"?7:void 0,height:i==="horizontal"?void 0:7,borderTopWidth:i==="horizontal"?void 0:(7-r)/2,borderRightWidth:i==="horizontal"?(7-r)/2:void 0,borderBottomWidth:i==="horizontal"?void 0:(7-r)/2,borderLeftWidth:i==="horizontal"?(7-r)/2:void 0,borderColor:"transparent",borderStyle:"solid",cursor:i==="horizontal"?"ew-resize":"ns-resize"};return m.jsxs("div",{style:{position:"absolute",top:0,right:0,bottom:0,left:-(7-r)/2,zIndex:100,pointerEvents:"none"},ref:x,children:[!!v&&m.jsx(k3,{cursor:i==="horizontal"?"ew-resize":"ns-resize",onPaneMouseUp:()=>y(null),onPaneMouseMove:D=>{if(!D.buttons)y(null);else if(v){const X=i==="horizontal"?D.clientX-v.clientX:D.clientY-v.clientY,q=v.offset+X,p=v.index>0?u[v.index-1]:0,E=i==="horizontal"?A.width:A.height,b=Math.min(Math.max(p+h,q),E-h)-u[v.index];for(let R=v.index;R<u.length;++R)u[R]=u[R]+b;c([...u])}}}),u.map((D,X)=>m.jsx("div",{style:{...T,top:i==="horizontal"?0:D,left:i==="horizontal"?D:0,pointerEvents:"initial"},onMouseDown:q=>y({clientX:q.clientX,clientY:q.clientY,offset:D,index:X}),children:m.jsx("div",{style:{...J3,background:f}})},X))]})};async function Zf(i){const u=new Image;return i&&(u.src=i,await new Promise((c,f)=>{u.onload=c,u.onerror=c})),u}const nr={backgroundImage:`linear-gradient(45deg, #80808020 25%, transparent 25%),
                    linear-gradient(-45deg, #80808020 25%, transparent 25%),
                    linear-gradient(45deg, transparent 75%, #80808020 75%),
                    linear-gradient(-45deg, transparent 75%, #80808020 75%)`,backgroundSize:"20px 20px",backgroundPosition:"0 0, 0 10px, 10px -10px, -10px 0px",boxShadow:`rgb(0 0 0 / 10%) 0px 1.8px 1.9px,
              rgb(0 0 0 / 15%) 0px 6.1px 6.3px,
              rgb(0 0 0 / 10%) 0px -2px 4px,
              rgb(0 0 0 / 15%) 0px -6.1px 12px,
              rgb(0 0 0 / 25%) 0px 6px 12px`},Vh=({diff:i,noTargetBlank:u,hideDetails:c})=>{const[f,r]=it.useState(i.diff?"diff":"actual"),[o,h]=it.useState(!1),[v,y]=it.useState(null),[A,x]=it.useState("Expected"),[T,D]=it.useState(null),[X,q]=it.useState(null),[p,E]=Hh();it.useEffect(()=>{(async()=>{var z,I,k,nt;y(await Zf((z=i.expected)==null?void 0:z.attachment.path)),x(((I=i.expected)==null?void 0:I.title)||"Expected"),D(await Zf((k=i.actual)==null?void 0:k.attachment.path)),q(await Zf((nt=i.diff)==null?void 0:nt.attachment.path))})()},[i]);const b=v&&T&&X,R=b?Math.max(v.naturalWidth,T.naturalWidth,200):500,N=b?Math.max(v.naturalHeight,T.naturalHeight,200):500,V=Math.min(1,(p.width-30)/R),F=Math.min(1,(p.width-50)/R/2),H=R*V,j=N*V,Y={flex:"none",margin:"0 10px",cursor:"pointer",userSelect:"none"};return m.jsx("div",{"data-testid":"test-result-image-mismatch",style:{display:"flex",flexDirection:"column",alignItems:"center",flex:"auto"},ref:E,children:b&&m.jsxs(m.Fragment,{children:[m.jsxs("div",{"data-testid":"test-result-image-mismatch-tabs",style:{display:"flex",margin:"10px 0 20px"},children:[i.diff&&m.jsx("div",{style:{...Y,fontWeight:f==="diff"?600:"initial"},onClick:()=>r("diff"),children:"Diff"}),m.jsx("div",{style:{...Y,fontWeight:f==="actual"?600:"initial"},onClick:()=>r("actual"),children:"Actual"}),m.jsx("div",{style:{...Y,fontWeight:f==="expected"?600:"initial"},onClick:()=>r("expected"),children:A}),m.jsx("div",{style:{...Y,fontWeight:f==="sxs"?600:"initial"},onClick:()=>r("sxs"),children:"Side by side"}),m.jsx("div",{style:{...Y,fontWeight:f==="slider"?600:"initial"},onClick:()=>r("slider"),children:"Slider"})]}),m.jsxs("div",{style:{display:"flex",justifyContent:"center",flex:"auto",minHeight:j+60},children:[i.diff&&f==="diff"&&m.jsx(yn,{image:X,alt:"Diff",hideSize:c,canvasWidth:H,canvasHeight:j,scale:V}),i.diff&&f==="actual"&&m.jsx(yn,{image:T,alt:"Actual",hideSize:c,canvasWidth:H,canvasHeight:j,scale:V}),i.diff&&f==="expected"&&m.jsx(yn,{image:v,alt:A,hideSize:c,canvasWidth:H,canvasHeight:j,scale:V}),i.diff&&f==="slider"&&m.jsx(W3,{expectedImage:v,actualImage:T,hideSize:c,canvasWidth:H,canvasHeight:j,scale:V,expectedTitle:A}),i.diff&&f==="sxs"&&m.jsxs("div",{style:{display:"flex"},children:[m.jsx(yn,{image:v,title:A,hideSize:c,canvasWidth:F*R,canvasHeight:F*N,scale:F}),m.jsx(yn,{image:o?X:T,title:o?"Diff":"Actual",onClick:()=>h(!o),hideSize:c,canvasWidth:F*R,canvasHeight:F*N,scale:F})]}),!i.diff&&f==="actual"&&m.jsx(yn,{image:T,title:"Actual",hideSize:c,canvasWidth:H,canvasHeight:j,scale:V}),!i.diff&&f==="expected"&&m.jsx(yn,{image:v,title:A,hideSize:c,canvasWidth:H,canvasHeight:j,scale:V}),!i.diff&&f==="sxs"&&m.jsxs("div",{style:{display:"flex"},children:[m.jsx(yn,{image:v,title:A,canvasWidth:F*R,canvasHeight:F*N,scale:F}),m.jsx(yn,{image:T,title:"Actual",canvasWidth:F*R,canvasHeight:F*N,scale:F})]})]}),!c&&m.jsxs("div",{style:{alignSelf:"start",lineHeight:"18px",marginLeft:"15px"},children:[m.jsx("div",{children:i.diff&&m.jsx("a",{target:"_blank",href:i.diff.attachment.path,rel:"noreferrer",children:i.diff.attachment.name})}),m.jsx("div",{children:m.jsx("a",{target:u?"":"_blank",href:i.actual.attachment.path,rel:"noreferrer",children:i.actual.attachment.name})}),m.jsx("div",{children:m.jsx("a",{target:u?"":"_blank",href:i.expected.attachment.path,rel:"noreferrer",children:i.expected.attachment.name})})]})]})})},W3=({expectedImage:i,actualImage:u,canvasWidth:c,canvasHeight:f,scale:r,expectedTitle:o,hideSize:h})=>{const v={position:"absolute",top:0,left:0},[y,A]=it.useState(c/2),x=i.naturalWidth===u.naturalWidth&&i.naturalHeight===u.naturalHeight;return m.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center",flexDirection:"column",userSelect:"none"},children:[!h&&m.jsxs("div",{style:{margin:5},children:[!x&&m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"Actual "}),!x&&m.jsx("span",{children:u.naturalWidth}),!x&&m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),!x&&m.jsx("span",{children:u.naturalHeight}),!x&&m.jsxs("span",{style:{flex:"none",margin:"0 5px 0 15px"},children:[o," "]}),m.jsx("span",{children:i.naturalWidth}),m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),m.jsx("span",{children:i.naturalHeight})]}),m.jsxs("div",{style:{position:"relative",width:c,height:f,margin:15,...nr},children:[m.jsx(F3,{orientation:"horizontal",offsets:[y],setOffsets:T=>A(T[0]),resizerColor:"#57606a80",resizerWidth:6}),m.jsx("img",{alt:o,style:{width:i.naturalWidth*r,height:i.naturalHeight*r},draggable:"false",src:i.src}),m.jsx("div",{style:{...v,bottom:0,overflow:"hidden",width:y,...nr},children:m.jsx("img",{alt:"Actual",style:{width:u.naturalWidth*r,height:u.naturalHeight*r},draggable:"false",src:u.src})})]})]})},yn=({image:i,title:u,alt:c,hideSize:f,canvasWidth:r,canvasHeight:o,scale:h,onClick:v})=>m.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center",flexDirection:"column"},children:[!f&&m.jsxs("div",{style:{margin:5},children:[u&&m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:u}),m.jsx("span",{children:i.naturalWidth}),m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),m.jsx("span",{children:i.naturalHeight})]}),m.jsx("div",{style:{display:"flex",flex:"none",width:r,height:o,margin:15,...nr},children:m.jsx("img",{width:i.naturalWidth*h,height:i.naturalHeight*h,alt:u||c,style:{cursor:v?"pointer":"initial"},draggable:"false",src:i.src,onClick:v})})]});function _3(i,u){const c=/(\x1b\[(\d+(;\d+)*)m)|([^\x1b]+)/g,f=[];let r,o={},h=!1,v=u==null?void 0:u.fg,y=u==null?void 0:u.bg;for(;(r=c.exec(i))!==null;){const[,,A,,x]=r;if(A)for(const T of A.split(";")){const D=+T;switch(D){case 0:o={};break;case 1:o["font-weight"]="bold";break;case 2:o.opacity="0.8";break;case 3:o["font-style"]="italic";break;case 4:o["text-decoration"]="underline";break;case 7:h=!0;break;case 8:o.display="none";break;case 9:o["text-decoration"]="line-through";break;case 22:delete o["font-weight"],delete o["font-style"],delete o.opacity,delete o["text-decoration"];break;case 23:delete o["font-weight"],delete o["font-style"],delete o.opacity;break;case 24:delete o["text-decoration"];break;case 27:h=!1;break;case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:v=b2[D-30];break;case 39:v=u==null?void 0:u.fg;break;case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:y=b2[D-40];break;case 49:y=u==null?void 0:u.bg;break;case 53:o["text-decoration"]="overline";break;case 90:case 91:case 92:case 93:case 94:case 95:case 96:case 97:v=S2[D-90];break;case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:y=S2[D-100];break}}else if(x){const T={...o},D=h?y:v;D!==void 0&&(T.color=D),h&&v&&(T["background-color"]=v),f.push(`<span style="${$3(T)}">${P3(x)}</span>`)}}return f.join("")}const b2={0:"var(--vscode-terminal-ansiBlack)",1:"var(--vscode-terminal-ansiRed)",2:"var(--vscode-terminal-ansiGreen)",3:"var(--vscode-terminal-ansiYellow)",4:"var(--vscode-terminal-ansiBlue)",5:"var(--vscode-terminal-ansiMagenta)",6:"var(--vscode-terminal-ansiCyan)",7:"var(--vscode-terminal-ansiWhite)"},S2={0:"var(--vscode-terminal-ansiBrightBlack)",1:"var(--vscode-terminal-ansiBrightRed)",2:"var(--vscode-terminal-ansiBrightGreen)",3:"var(--vscode-terminal-ansiBrightYellow)",4:"var(--vscode-terminal-ansiBrightBlue)",5:"var(--vscode-terminal-ansiBrightMagenta)",6:"var(--vscode-terminal-ansiBrightCyan)",7:"var(--vscode-terminal-ansiBrightWhite)"};function P3(i){return i.replace(/[&"<>]/g,u=>({"&":"&amp;",'"':"&quot;","<":"&lt;",">":"&gt;"})[u])}function $3(i){return Object.entries(i).map(([u,c])=>`${u}: ${c}`).join("; ")}const Ar=({code:i,children:u,testId:c})=>{const f=it.useMemo(()=>nv(i),[i]);return m.jsxs("div",{className:"test-error-container test-error-text","data-testid":c,children:[u,m.jsx("div",{className:"test-error-view",dangerouslySetInnerHTML:{__html:f||""}})]})},tv=({prompt:i})=>{const[u,c]=it.useState(!1);return m.jsx("button",{className:"button",style:{minWidth:100},onClick:async()=>{await navigator.clipboard.writeText(i),c(!0),setTimeout(()=>{c(!1)},3e3)},children:u?"Copied":"Copy prompt"})},ev=({diff:i})=>m.jsx("div",{"data-testid":"test-screenshot-error-view",className:"test-error-view",children:m.jsx(Vh,{diff:i,hideDetails:!0},"image-diff")});function nv(i){return _3(i||"",{bg:"var(--color-canvas-subtle)",fg:"var(--color-fg-default)"})}const Zh=({file:i,projectNames:u,isFileExpanded:c,setFileExpanded:f,footer:r})=>m.jsx(gr,{expanded:c?c(i.fileId):void 0,noInsets:!0,setExpanded:f?(o=>f(i.fileId,o)):void 0,header:m.jsx("span",{className:"chip-header-allow-selection",children:i.fileName}),footer:r,children:m.jsx(Ih,{tests:i.tests,projectNames:u})}),Ih=({tests:i,projectNames:u,runs:c,selectedTestId:f})=>{const r=se();return m.jsx("div",{role:"list",children:i.map((o,h)=>{const v=c==null?void 0:c[h],y=v!==void 0?o.results[v]:void 0,A=il({test:o,result:y},r),x=f===o.testId;return m.jsxs("div",{className:Ze("test-file-test","test-file-test-outcome-"+o.outcome,x&&"test-file-test-selected"),role:"listitem","aria-current":x,children:[m.jsxs("div",{className:"hbox",style:{alignItems:"flex-start"},children:[m.jsxs("div",{className:"hbox",children:[m.jsx("span",{className:"test-file-test-status-icon",children:fc(o.outcome)}),m.jsxs("span",{children:[m.jsx(bn,{href:A,title:[...o.path,o.title].join(" â€º "),children:m.jsx("span",{className:"test-file-title",children:[...o.path,o.title].join(" â€º ")})}),m.jsx(Qh,{style:{marginLeft:"6px"},projectNames:u,activeProjectName:o.projectName,otherLabels:o.tags})]})]}),m.jsx("span",{"data-testid":"test-duration",style:{minWidth:"50px",textAlign:"right"},children:Ta(o.duration)})]}),m.jsx("div",{className:"test-file-details-row",children:m.jsxs("div",{className:"test-file-details-row-items",children:[m.jsx(bn,{href:A,title:[...o.path,o.title].join(" â€º "),className:"test-file-path-link",children:m.jsxs("span",{className:"test-file-path",children:[o.location.file,":",o.location.line]})}),m.jsx(lv,{test:o}),m.jsx(av,{test:o}),m.jsx(zh,{test:o,dim:!0})]})})]},`test-${o.testId}`)})})};function lv({test:i}){const u=se();for(const c of i.results)for(const f of c.attachments)if(f.contentType.startsWith("image/")&&f.name.match(/-(expected|actual|diff)/))return m.jsx(dr,{href:il({test:i,result:c,anchor:`attachment-${c.attachments.indexOf(f)}`},u),title:"View images",dim:!0,children:m3()})}function av({test:i}){const u=se(),c=i.results.find(f=>f.attachments.some(r=>r.name==="video"));return c?m.jsx(dr,{href:il({test:i,result:c,anchor:"attachment-video"},u),title:"View video",dim:!0,children:g3()}):void 0}const iv=new RegExp("([\\u001B\\u009B][[\\]()#?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)|(?:(?:\\d{0,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~])))","g");function T2(i){return i.replace(iv,"")}function uv(i,u){var f;const c=new Map;for(const r of i){const o=r.name.match(/^(.*)-(expected|actual|diff|previous)(\.[^.]+)?$/);if(!o)continue;const[,h,v,y=""]=o,A=h+y;let x=c.get(A);x||(x={name:A,anchors:[`attachment-${h}`]},c.set(A,x)),x.anchors.push(`attachment-${u.attachments.indexOf(r)}`),v==="actual"&&(x.actual={attachment:r}),v==="expected"&&(x.expected={attachment:r,title:"Expected"}),v==="previous"&&(x.expected={attachment:r,title:"Previous"}),v==="diff"&&(x.diff={attachment:r})}for(const[r,o]of c)!o.actual||!o.expected?c.delete(r):(i.delete(o.actual.attachment),i.delete(o.expected.attachment),i.delete((f=o.diff)==null?void 0:f.attachment));return[...c.values()]}const cv=({report:i,test:u,result:c})=>{const{screenshots:f,videos:r,traces:o,otherAttachments:h,diffs:v,errors:y,otherAttachmentAnchors:A,screenshotAnchors:x,errorContext:T}=it.useMemo(()=>{const p=c.attachments.filter(z=>!z.name.startsWith("_")),E=new Set(p.filter(z=>z.contentType.startsWith("image/"))),b=[...E].map(z=>`attachment-${p.indexOf(z)}`),R=p.filter(z=>z.contentType.startsWith("video/")),N=p.filter(z=>z.name==="trace"),V=p.find(z=>z.name==="error-context"),F=new Set(p);[...E,...R,...N].forEach(z=>F.delete(z));const H=[...F].map(z=>`attachment-${p.indexOf(z)}`),j=uv(E,c),Y=c.errors.map(z=>z.message);return{screenshots:[...E],videos:R,traces:N,otherAttachments:F,diffs:j,errors:Y,otherAttachmentAnchors:H,screenshotAnchors:b,errorContext:V}},[c]),[D,X]=it.useState("");it.useEffect(()=>X(""),[c]);const q=E3(async()=>{var F;if((F=i.json().options)!=null&&F.noCopyPrompt||!T)return;let p=T.path?await fetch(T.path).then(H=>H.text()):T.body;if(!p)return;const E=c.attachments.find(H=>H.name==="stdout"),b=c.attachments.find(H=>H.name==="stderr"),R=E!=null&&E.body&&E.contentType==="text/plain"?E.body:void 0,N=b!=null&&b.body&&b.contentType==="text/plain"?b.body:void 0;R&&(p+=`
# Stdout
\`\`\`
`+T2(R)+"\n```"),N&&(p+=`
# Stderr
\`\`\`
`+T2(N)+"\n```");const V=i.json().metadata;return V!=null&&V.gitDiff&&(p+=`
# Local changes
\`\`\`diff
`+V.gitDiff+"\n```"),p},[T,i,c],void 0);return m.jsxs("div",{className:"test-result",children:[!!y.length&&m.jsxs(ke,{header:"Errors",children:[q&&m.jsx("div",{style:{position:"absolute",right:"16px",padding:"10px",zIndex:1},children:m.jsx(tv,{prompt:q})}),y.map((p,E)=>{const b=sv(p,v);return m.jsxs(m.Fragment,{children:[m.jsx(Ar,{code:p},"test-result-error-message-"+E),b&&m.jsx(ev,{diff:b})]})})]}),!!c.steps.length&&m.jsxs(ke,{header:"Test Steps",children:[m.jsxs("form",{className:"subnav-search step-filter",onSubmit:p=>p.preventDefault(),children:[Oh(),m.jsx("input",{className:"form-control subnav-search-input input-contrast width-full",type:"search",spellCheck:!1,placeholder:"Filter steps","aria-label":"Filter steps",value:D,onChange:p=>X(p.target.value)})]}),c.steps.map((p,E)=>m.jsx(Jh,{step:p,result:c,test:u,depth:0,filterText:D},`step-${E}`))]}),v.map((p,E)=>m.jsx(xi,{id:p.anchors,children:m.jsx(ke,{dataTestId:"test-results-image-diff",header:`Image mismatch: ${p.name}`,revealOnAnchorId:p.anchors,children:m.jsx(Vh,{diff:p})})},`diff-${E}`)),!!f.length&&m.jsx(ke,{header:"Screenshots",revealOnAnchorId:x,children:f.map((p,E)=>m.jsxs(xi,{id:`attachment-${c.attachments.indexOf(p)}`,children:[m.jsx("a",{href:Ve(p.path),children:m.jsx("img",{className:"screenshot",src:Ve(p.path)})}),m.jsx($u,{attachment:p,result:c})]},`screenshot-${E}`))}),!!o.length&&m.jsx(xi,{id:"attachment-trace",children:m.jsx(ke,{header:"Traces",revealOnAnchorId:"attachment-trace",children:m.jsxs("div",{children:[m.jsx("a",{href:Ve(Lh(o)),children:m.jsx("img",{className:"screenshot",src:K3,style:{width:192,height:117,marginLeft:20}})}),o.map((p,E)=>m.jsx($u,{attachment:p,result:c,linkName:o.length===1?"trace":`trace-${E+1}`},`trace-${E}`))]})})}),!!r.length&&m.jsx(xi,{id:"attachment-video",children:m.jsx(ke,{header:"Videos",revealOnAnchorId:"attachment-video",children:r.map(p=>m.jsxs("div",{children:[m.jsx("video",{controls:!0,children:m.jsx("source",{src:Ve(p.path),type:p.contentType})}),m.jsx($u,{attachment:p,result:c})]},p.path))})}),!!h.size&&m.jsx(ke,{header:"Attachments",revealOnAnchorId:A,dataTestId:"attachments",children:[...h].map((p,E)=>m.jsx(xi,{id:`attachment-${c.attachments.indexOf(p)}`,children:m.jsx($u,{attachment:p,result:c,openInNewTab:p.contentType.startsWith("text/html")})},`attachment-link-${E}`))}),m.jsx(ke,{header:`Executed in Worker #${c.workerIndex}`,dataTestId:"worker-test-list",initialExpanded:!1,noInsets:!0,body:()=>{const p=fv(i).get(c.workerIndex)||{tests:[],runs:[]};return m.jsx(Ih,{tests:p.tests,runs:p.runs,projectNames:i.json().projectNames,selectedTestId:u.testId})}})]})};function sv(i,u){const c=i.split(`
`)[0];if(!(!c.includes("toHaveScreenshot")&&!c.includes("toMatchSnapshot")))return u.find(f=>i.includes(f.name))}function qh(i,u){return i.title.toLowerCase().includes(u.toLowerCase())}function Kh(i,u){return i.steps.some(c=>qh(c,u)||Kh(c,u))}function kh(i){return i.steps.some(u=>u.attachments.length>0||kh(u))}const Jh=({test:i,step:u,result:c,depth:f,filterText:r})=>{const o=se();let h=!1,v=m.jsx("span",{children:u.title});if(r){const y=!!r&&qh(u,r),A=!!r&&Kh(u,r);if(!y&&!A)return null;if(h=A,y){const x=u.title.toLowerCase().split(r.toLowerCase()),T=[];let D=0;for(let X=0;X<x.length;X++)X&&(T.push(m.jsx("span",{className:"step-title-highlight",children:u.title.substring(D,D+r.length)},X)),D+=r.length),T.push(x[X]),D+=x[X].length;v=T}}return m.jsx(q3,{title:m.jsxs("div",{"aria-label":u.title,className:"step-title-container",children:[fc(u.error||u.duration===-1?"failed":u.skipped?"skipped":"passed"),m.jsxs("span",{className:"step-title-text",children:[v,u.count>1&&m.jsxs(m.Fragment,{children:[" âœ• ",m.jsx("span",{className:"test-result-counter",children:u.count})]}),u.location&&m.jsxs("span",{className:"test-result-path",children:["— ",u.location.file,":",u.location.line]})]}),m.jsx("span",{className:"step-spacer"}),u.attachments.length>0&&m.jsx("a",{className:"step-attachment-link",title:"reveal attachment",href:Ve(il({test:i,result:c,anchor:`attachment-${u.attachments[0]}`},o)),onClick:y=>{y.stopPropagation()},children:Rh()}),u.attachments.length===0&&kh(u)&&m.jsx("span",{className:"step-indirect-attachment-indicator",title:"contains attachment","aria-label":"contains attachment",children:d3()}),m.jsx("span",{className:"step-duration",children:Ta(u.duration)})]}),loadChildren:u.steps.length||u.snippet?()=>{const y=u.snippet?[m.jsx(Ar,{testId:"test-snippet",code:u.snippet},"line")]:[],A=u.steps.map((x,T)=>m.jsx(Jh,{step:x,depth:f+1,result:c,test:i,filterText:r},T));return y.concat(A)}:void 0,depth:f,expandByDefault:h})},C2=Symbol("workerLists");function fv(i){let u=i[C2];if(!u){const c=new Map;for(const f of i.json().files)for(const r of f.tests)for(let o=0;o<r.results.length;o++){let h=c.get(r.results[o].workerIndex);h||(h=[],c.set(r.results[o].workerIndex,h)),h.push({test:r,time:new Date(r.results[o].startTime).valueOf(),run:o})}u=new Map;for(const[f,r]of c)r.sort((o,h)=>o.time-h.time),u.set(f,{tests:r.map(o=>o.test),runs:r.map(o=>o.run)});i[C2]=u}return u}const rv=({report:i,test:u,run:c,next:f,prev:r})=>{const[o,h]=it.useState(c),v=se(),y=u.annotations.filter(A=>!A.type.startsWith("_"))??[];return D2(y,u.repeatEachIndex),m.jsxs(m.Fragment,{children:[m.jsx(mr,{title:u.title,leftSuperHeader:m.jsx("div",{className:"test-case-path",children:u.path.join(" â€º ")}),rightSuperHeader:m.jsxs(m.Fragment,{children:[m.jsx("div",{className:Ze(!r&&"hidden"),children:m.jsx(bn,{href:il({test:r},v),children:"« previous"})}),m.jsx("div",{style:{width:10}}),m.jsx("div",{className:Ze(!f&&"hidden"),children:m.jsx(bn,{href:il({test:f},v),children:"next Â»"})})]})}),m.jsxs("div",{className:"hbox",style:{lineHeight:"24px"},children:[m.jsx("div",{className:"test-case-location",children:m.jsxs(or,{value:`${u.location.file}:${u.location.line}`,children:[u.location.file,":",u.location.line]})}),m.jsx("div",{style:{flex:"auto"}}),m.jsx(zh,{test:u,trailingSeparator:!0}),m.jsx("div",{className:"test-case-duration",children:Ta(u.duration)})]}),m.jsx(Qh,{style:{marginLeft:"6px"},projectNames:i.json().projectNames,activeProjectName:u.projectName,otherLabels:u.tags}),u.results.length===0&&y.length!==0&&m.jsx(ke,{header:"Annotations",dataTestId:"test-case-annotations",children:y.map((A,x)=>m.jsx(O2,{annotation:A},x))}),m.jsx(I3,{tabs:u.results.map((A,x)=>({id:String(x),title:m.jsxs("div",{style:{display:"flex",alignItems:"center"},children:[fc(A.status)," ",ov(x),u.results.length>1&&m.jsx("span",{className:"test-case-run-duration",children:Ta(A.duration)})]}),render:()=>{const T=A.annotations.filter(D=>!D.type.startsWith("_"));return D2(T,u.repeatEachIndex),m.jsxs(m.Fragment,{children:[!!T.length&&m.jsx(ke,{header:"Annotations",dataTestId:"test-case-annotations",children:T.map((D,X)=>m.jsx(O2,{annotation:D},X))}),m.jsx(cv,{test:u,result:A,report:i})]})}}))||[],selectedTab:String(o),setSelectedTab:A=>h(+A)})]})};function O2({annotation:{type:i,description:u}}){return m.jsxs("div",{className:"test-case-annotation",children:[m.jsx("span",{style:{fontWeight:"bold"},children:i}),u&&m.jsxs(or,{value:u,children:[": ",Di(u)]})]})}function D2(i,u){u&&i.push({type:"repeatEachIndex",description:String(u)})}function ov(i){return i?`Retry #${i}`:"Run"}class dv extends it.Component{constructor(){super(...arguments),this.state={error:null,errorInfo:null}}componentDidCatch(u,c){this.setState({error:u,errorInfo:c})}render(){var u,c,f;return this.state.error||this.state.errorInfo?m.jsxs("div",{className:"metadata-view p-3",children:[m.jsx("p",{children:"An error was encountered when trying to render metadata."}),m.jsx("p",{children:m.jsxs("pre",{style:{overflow:"scroll"},children:[(u=this.state.error)==null?void 0:u.message,m.jsx("br",{}),(c=this.state.error)==null?void 0:c.stack,m.jsx("br",{}),(f=this.state.errorInfo)==null?void 0:f.componentStack]})})]}):this.props.children}}const hv=i=>m.jsx(dv,{children:m.jsx(mv,{metadata:i.metadata})}),mv=i=>{const u=i.metadata,c=se().has("show-metadata-other")?Object.entries(i.metadata).filter(([r])=>!Fh.has(r)):[];if(u.ci||u.gitCommit||c.length>0)return m.jsxs("div",{className:"metadata-view",children:[u.ci&&!u.gitCommit&&m.jsx(gv,{info:u.ci}),u.gitCommit&&m.jsx(Av,{ci:u.ci,commit:u.gitCommit}),c.length>0&&m.jsxs(m.Fragment,{children:[(u.gitCommit||u.ci)&&m.jsx("div",{className:"metadata-separator"}),m.jsx("div",{className:"metadata-section metadata-properties",role:"list",children:c.map(([r,o])=>{const h=typeof o!="object"||o===null||o===void 0?String(o):JSON.stringify(o),v=h.length>1e3?h.slice(0,1e3)+"…":h;return m.jsx("div",{className:"copyable-property",role:"listitem",children:m.jsxs(or,{value:h,children:[m.jsx("span",{style:{fontWeight:"bold"},title:r,children:r}),": ",m.jsx("span",{title:v,children:Di(v)})]})},r)})})]})]})},gv=({info:i})=>{const u=i.prTitle||`Commit ${i.commitHash}`,c=i.prHref||i.commitHref;return m.jsx("div",{className:"metadata-section",role:"list",children:m.jsx("div",{role:"listitem",children:m.jsx("a",{href:Ve(c),target:"_blank",rel:"noopener noreferrer",title:u,children:u})})})},Av=({ci:i,commit:u})=>{const c=(i==null?void 0:i.prTitle)||u.subject,f=(i==null?void 0:i.prHref)||(i==null?void 0:i.commitHref),r=` <${u.author.email}>`,o=`${u.author.name}${r}`,h=Intl.DateTimeFormat(void 0,{dateStyle:"medium"}).format(u.committer.time),v=Intl.DateTimeFormat(void 0,{dateStyle:"full",timeStyle:"long"}).format(u.committer.time);return m.jsxs("div",{className:"metadata-section",role:"list",children:[m.jsxs("div",{role:"listitem",children:[f&&m.jsx("a",{href:Ve(f),target:"_blank",rel:"noopener noreferrer",title:c,children:c}),!f&&m.jsx("span",{title:c,children:c})]}),m.jsxs("div",{role:"listitem",className:"hbox",children:[m.jsx("span",{className:"mr-1",children:o}),m.jsxs("span",{title:v,children:[" on ",h]})]})]})},Fh=new Set(["ci","gitCommit","gitDiff","actualWorkers"]),vv=i=>{const u=Object.entries(i).filter(([c])=>!Fh.has(c));return!i.ci&&!i.gitCommit&&!u.length},yv=({files:i,expandedFiles:u,setExpandedFiles:c,projectNames:f})=>{const r=it.useMemo(()=>{const o=[];let h=0;for(const v of i)h+=v.tests.length,o.push({file:v,defaultExpanded:h<200});return o},[i]);return m.jsx(m.Fragment,{children:r.length>0?r.map(({file:o,defaultExpanded:h})=>m.jsx(Zh,{file:o,projectNames:f,isFileExpanded:v=>{const y=u.get(v);return y===void 0?h:!!y},setFileExpanded:(v,y)=>{const A=new Map(u);A.set(v,y),c(A)}},`file-${o.fileId}`)):m.jsx("div",{className:"chip-header test-file-no-files",children:"No tests found"})})},R2=({report:i,filteredStats:u,metadataVisible:c,toggleMetadataVisible:f,errorsVisible:r,setErrorsVisible:o})=>{if(!i)return null;const h=i.projectNames.length===1&&!!i.projectNames[0],v=!h&&!u,y=!vv(i.metadata)&&m.jsxs("div",{className:Ze("metadata-toggle",!v&&"metadata-toggle-second-line"),role:"button",onClick:f,title:c?"Hide metadata":"Show metadata",children:[c?Mi():Sa(),"Metadata"]}),A=m.jsxs("div",{className:"test-file-header-info",children:[h&&m.jsxs("div",{"data-testid":"project-name",children:["Project: ",i.projectNames[0]]}),u&&m.jsxs("div",{"data-testid":"filtered-tests-count",children:["Filtered: ",u.total," ",!!u.total&&"("+Ta(u.duration)+")"]}),v&&y]}),x=m.jsxs(m.Fragment,{children:[m.jsx("div",{"data-testid":"overall-time",style:{marginRight:"10px"},children:i?new Date(i.startTime).toLocaleString():""}),m.jsxs("div",{"data-testid":"overall-duration",children:["Total time: ",Ta(i.duration??0)]})]});return m.jsxs(m.Fragment,{children:[m.jsx(mr,{title:i.options.title,leftSuperHeader:A,rightSuperHeader:x}),!v&&y,c&&m.jsx(hv,{metadata:i.metadata}),!!i.errors.length&&m.jsx(gr,{header:"Errors",dataTestId:"report-errors",expanded:r,setExpanded:o,children:i.errors.map((T,D)=>m.jsx(Ar,{code:T},"test-report-error-message-"+D))})]})},Wh=i=>{const u=Math.round(i/1e3),c=Math.floor(u/60),f=u%60;return c===0?`${f}s`:`${c}m ${f}s`},Ev=({entries:i})=>{const f=Math.max(...i.map(j=>j.label.length))*10,o={top:20,right:20,bottom:40,left:Math.min(800*.5,Math.max(50,f))},h=800-o.left-o.right,v=Math.min(...i.map(j=>j.startTime)),y=Math.max(...i.map(j=>j.startTime+j.duration));let A,x;const T=y-v;T<60*1e3?(A=10*1e3,x=!0):T<300*1e3?(A=30*1e3,x=!0):T<1800*1e3?(A=300*1e3,x=!1):(A=600*1e3,x=!1);const D=Math.ceil(v/A)*A,X=(j,Y)=>{const z=new Date(j).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:x?"2-digit":void 0});if(Y)return z;if(z.endsWith(" AM")||z.endsWith(" PM"))return z.slice(0,-3)},p=(y-v)*1.1,E=Math.ceil(p/A)*A,b=h/E,R=20,N=8,V=i.length*(R+N),F=[];for(let j=D;j<=v+E;j+=A){const Y=j-v;F.push({x:Y*b,label:X(j,j===D)})}const H=V+o.top+o.bottom;return m.jsx("svg",{viewBox:`0 0 800 ${H}`,preserveAspectRatio:"xMidYMid meet",style:{width:"100%",height:"auto"},role:"img",children:m.jsxs("g",{transform:`translate(${o.left}, ${o.top})`,role:"presentation",children:[F.map(({x:j,label:Y},z)=>m.jsxs("g",{"aria-hidden":"true",children:[m.jsx("line",{x1:j,y1:0,x2:j,y2:V,stroke:"var(--color-border-muted)",strokeWidth:"1"}),m.jsx("text",{x:j,y:V+20,textAnchor:"middle",dominantBaseline:"middle",fontSize:"12",fill:"var(--color-fg-muted)",children:Y})]},z)),i.map((j,Y)=>{const z=j.startTime-v,I=j.duration*b,k=z*b,nt=Y*(R+N),P=["var(--color-scale-blue-2)","var(--color-scale-blue-3)","var(--color-scale-blue-4)"],st=P[Y%P.length];return m.jsxs("g",{role:"listitem","aria-label":j.tooltip,children:[m.jsx("rect",{className:"gantt-bar",x:k,y:nt,width:I,height:R,fill:st,rx:"2",children:m.jsx("title",{children:j.tooltip})}),m.jsx("text",{x:k+I+6,y:nt+R/2,dominantBaseline:"middle",fontSize:"12",fill:"var(--color-fg-muted)","aria-hidden":"true",children:Wh(j.duration)}),m.jsx("text",{x:-10,y:nt+R/2,textAnchor:"end",dominantBaseline:"middle",fontSize:"12",fill:"var(--color-fg-muted)","aria-hidden":"true",children:j.label})]},Y)}),m.jsx("line",{x1:0,y1:0,x2:0,y2:V,stroke:"var(--color-fg-muted)",strokeWidth:"1","aria-hidden":"true"}),m.jsx("line",{x1:0,y1:V,x2:h,y2:V,stroke:"var(--color-fg-muted)",strokeWidth:"1","aria-hidden":"true"})]})})};function pv({report:i,tests:u}){return m.jsxs(m.Fragment,{children:[m.jsx(bv,{report:i}),m.jsx(xv,{report:i,tests:u})]})}function xv({report:i,tests:u}){const[c,f]=ue.useState(50);return m.jsx(Zh,{file:{fileId:"slowest",fileName:"Slowest Tests",tests:u.slice(0,c),stats:null},projectNames:i.json().projectNames,footer:c<u.length?m.jsxs("button",{className:"link-badge fullwidth-link",style:{padding:"8px 5px"},onClick:()=>f(r=>r+50),children:[Mi(),"Show 50 more"]}):void 0})}function bv({report:i}){const u=i.json().machines;if(u.length===0)return null;const c=u.map(f=>{const r=f.tag.join(" "),o=new Date(f.startTime).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:"short"});let h=`${r} started at ${o}, runs ${Wh(f.duration)}`;return f.shardIndex&&(h+=` (shard ${f.shardIndex})`),{label:r,tooltip:h,startTime:f.startTime,duration:f.duration,shardIndex:f.shardIndex??1}}).sort((f,r)=>f.label.localeCompare(r.label)||f.shardIndex-r.shardIndex);return m.jsx(ke,{header:"Timeline",children:m.jsx(Ev,{entries:c})})}const Sv=i=>!i.has("testId")&&!i.has("speedboard"),Tv=i=>i.has("testId"),Cv=i=>i.has("speedboard")&&!i.has("testId"),Ov=({report:i})=>{var H,j;const u=se(),[c,f]=it.useState(new Map),[r,o]=it.useState(u.get("q")||""),[h,v]=it.useState(!1),[y,A]=it.useState(!0),x=u.has("speedboard"),[T]=Bh("mergeFiles",!1),D=u.get("testId"),X=((H=u.get("q"))==null?void 0:H.toString())||"",q=X?"&q="+X:"",p=(j=i==null?void 0:i.json())==null?void 0:j.options.title,E=it.useMemo(()=>{const Y=new Map;for(const z of(i==null?void 0:i.json().files)||[])for(const I of z.tests)Y.set(I.testId,z.fileId);return Y},[i]),b=it.useMemo(()=>uc.parse(r),[r]),R=it.useMemo(()=>b.empty()?void 0:Rv((i==null?void 0:i.json().files)||[],b),[i,b]),N=it.useMemo(()=>x?jv(i,b):T?Mv(i,b):wv(i,b),[i,b,T,x]),{prev:V,next:F}=it.useMemo(()=>{const Y=N.tests.findIndex(k=>k.testId===D),z=Y>0?N.tests[Y-1]:void 0,I=Y<N.tests.length-1?N.tests[Y+1]:void 0;return{prev:z,next:I}},[D,N]);return it.useEffect(()=>{const Y=z=>{if(z.target instanceof HTMLInputElement||z.target instanceof HTMLTextAreaElement||z.shiftKey||z.ctrlKey||z.metaKey||z.altKey)return;const I=new URLSearchParams(u);switch(z.key){case"a":z.preventDefault(),ll("#?");break;case"p":z.preventDefault(),I.delete("testId"),I.delete("speedboard"),ll(Ml(I,"s:passed",!1));break;case"f":z.preventDefault(),I.delete("testId"),I.delete("speedboard"),ll(Ml(I,"s:failed",!1));break;case"ArrowLeft":V&&(z.preventDefault(),I.delete("testId"),ll(il({test:V},I)+q));break;case"ArrowRight":F&&(z.preventDefault(),I.delete("testId"),ll(il({test:F},I)+q));break}};return document.addEventListener("keydown",Y),()=>document.removeEventListener("keydown",Y)},[V,F,q,X,u]),it.useEffect(()=>{p?document.title=p:document.title="Playwright Test Report"},[p]),m.jsx("div",{className:"htmlreport vbox px-4 pb-4",children:m.jsxs("main",{children:[i&&m.jsx(G3,{stats:i.json().stats,filterText:r,setFilterText:o}),m.jsxs(Vf,{predicate:Sv,children:[m.jsx(R2,{report:i==null?void 0:i.json(),filteredStats:R,metadataVisible:h,toggleMetadataVisible:()=>v(Y=>!Y),errorsVisible:y,setErrorsVisible:A}),m.jsx(yv,{files:N.files,expandedFiles:c,setExpandedFiles:f,projectNames:(i==null?void 0:i.json().projectNames)||[]})]}),m.jsxs(Vf,{predicate:Cv,children:[m.jsx(R2,{report:i==null?void 0:i.json(),filteredStats:R,metadataVisible:h,toggleMetadataVisible:()=>v(Y=>!Y),errorsVisible:y,setErrorsVisible:A}),i&&m.jsx(pv,{report:i,tests:N.tests})]}),m.jsx(Vf,{predicate:Tv,children:i&&m.jsx(Dv,{report:i,next:F,prev:V,testId:D,testIdToFileIdMap:E})})]})})},Dv=({report:i,testIdToFileIdMap:u,next:c,prev:f,testId:r})=>{const[o,h]=it.useState("loading"),v=+(se().get("run")||"0");return it.useEffect(()=>{(async()=>{if(!r||typeof o=="object"&&r===o.testId)return;const y=u.get(r);if(!y){h("not-found");return}const A=await i.entry(`${y}.json`);h((A==null?void 0:A.tests.find(x=>x.testId===r))||"not-found")})()},[o,i,r,u]),o==="loading"?m.jsx("div",{className:"test-case-column"}):o==="not-found"?m.jsxs("div",{className:"test-case-column",children:[m.jsx(mr,{title:"Test not found"}),m.jsxs("div",{className:"test-case-location",children:["Test ID: ",r]})]}):m.jsx("div",{className:"test-case-column",children:m.jsx(rv,{report:i,next:c,prev:f,test:o,run:v})})};function Rv(i,u){const c={total:0,duration:0};for(const f of i){const r=f.tests.filter(o=>u.matches(o));c.total+=r.length;for(const o of r)c.duration+=o.duration}return c}function wv(i,u){const c={files:[],tests:[]};for(const f of(i==null?void 0:i.json().files)||[]){const r=f.tests.filter(o=>u.matches(o));r.length&&c.files.push({...f,tests:r}),c.tests.push(...r)}return c}function Mv(i,u){const c=[],f=new Map;for(const o of(i==null?void 0:i.json().files)||[]){const h=o.tests.filter(v=>u.matches(v));for(const v of h){const y=v.path[0]??"<anonymous>";let A=f.get(y);A||(A={fileId:y,fileName:y,tests:[],stats:{total:0,expected:0,unexpected:0,flaky:0,skipped:0,ok:!0}},f.set(y,A),c.push(A));const x={...v,path:v.path.slice(1)};A.tests.push(x)}}c.sort((o,h)=>o.fileName.localeCompare(h.fileName));const r={files:c,tests:[]};for(const o of c)r.tests.push(...o.tests);return r}function jv(i,u){const f=((i==null?void 0:i.json().files)||[]).flatMap(r=>r.tests).filter(r=>u.matches(r));return f.sort((r,o)=>o.duration-r.duration),{files:[],tests:f}}const Nv="data:image/svg+xml,%3csvg%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M136.444%20221.556C123.558%20225.213%20115.104%20231.625%20109.535%20238.032C114.869%20233.364%20122.014%20229.08%20131.652%20226.348C141.51%20223.554%20149.92%20223.574%20156.869%20224.915V219.481C150.941%20218.939%20144.145%20219.371%20136.444%20221.556ZM108.946%20175.876L61.0895%20188.484C61.0895%20188.484%2061.9617%20189.716%2063.5767%20191.36L104.153%20180.668C104.153%20180.668%20103.578%20188.077%2098.5847%20194.705C108.03%20187.559%20108.946%20175.876%20108.946%20175.876ZM149.005%20288.347C81.6582%20306.486%2046.0272%20228.438%2035.2396%20187.928C30.2556%20169.229%2028.0799%20155.067%2027.5%20145.928C27.4377%20144.979%2027.4665%20144.179%2027.5336%20143.446C24.04%20143.657%2022.3674%20145.473%2022.7077%20150.721C23.2876%20159.855%2025.4633%20174.016%2030.4473%20192.721C41.2301%20233.225%2076.8659%20311.273%20144.213%20293.134C158.872%20289.185%20169.885%20281.992%20178.152%20272.81C170.532%20279.692%20160.995%20285.112%20149.005%20288.347ZM161.661%20128.11V132.903H188.077C187.535%20131.206%20186.989%20129.677%20186.447%20128.11H161.661Z'%20fill='%232D4552'/%3e%3cpath%20d='M193.981%20167.584C205.861%20170.958%20212.144%20179.287%20215.465%20186.658L228.711%20190.42C228.711%20190.42%20226.904%20164.623%20203.57%20157.995C181.741%20151.793%20168.308%20170.124%20166.674%20172.496C173.024%20167.972%20182.297%20164.268%20193.981%20167.584ZM299.422%20186.777C277.573%20180.547%20264.145%20198.916%20262.535%20201.255C268.89%20196.736%20278.158%20193.031%20289.837%20196.362C301.698%20199.741%20307.976%20208.06%20311.307%20215.436L324.572%20219.212C324.572%20219.212%20322.736%20193.41%20299.422%20186.777ZM286.262%20254.795L176.072%20223.99C176.072%20223.99%20177.265%20230.038%20181.842%20237.869L274.617%20263.805C282.255%20259.386%20286.262%20254.795%20286.262%20254.795ZM209.867%20321.102C122.618%20297.71%20133.166%20186.543%20147.284%20133.865C153.097%20112.156%20159.073%2096.0203%20164.029%2085.204C161.072%2084.5953%20158.623%2086.1529%20156.203%2091.0746C150.941%20101.747%20144.212%20119.124%20137.7%20143.45C123.586%20196.127%20113.038%20307.29%20200.283%20330.682C241.406%20341.699%20273.442%20324.955%20297.323%20298.659C274.655%20319.19%20245.714%20330.701%20209.867%20321.102Z'%20fill='%232D4552'/%3e%3cpath%20d='M161.661%20262.296V239.863L99.3324%20257.537C99.3324%20257.537%20103.938%20230.777%20136.444%20221.556C146.302%20218.762%20154.713%20218.781%20161.661%20220.123V128.11H192.869C189.471%20117.61%20186.184%20109.526%20183.423%20103.909C178.856%2094.612%20174.174%20100.775%20163.545%20109.665C156.059%20115.919%20137.139%20129.261%20108.668%20136.933C80.1966%20144.61%2057.179%20142.574%2047.5752%20140.911C33.9601%20138.562%2026.8387%20135.572%2027.5049%20145.928C28.0847%20155.062%2030.2605%20169.224%2035.2445%20187.928C46.0272%20228.433%2081.663%20306.481%20149.01%20288.342C166.602%20283.602%20179.019%20274.233%20187.626%20262.291H161.661V262.296ZM61.0848%20188.484L108.946%20175.876C108.946%20175.876%20107.551%20194.288%2089.6087%20199.018C71.6614%20203.743%2061.0848%20188.484%2061.0848%20188.484Z'%20fill='%23E2574C'/%3e%3cpath%20d='M341.786%20129.174C329.345%20131.355%20299.498%20134.072%20262.612%20124.185C225.716%20114.304%20201.236%2097.0224%20191.537%2088.8994C177.788%2077.3834%20171.74%2069.3802%20165.788%2081.4857C160.526%2092.163%20153.797%20109.54%20147.284%20133.866C133.171%20186.543%20122.623%20297.706%20209.867%20321.098C297.093%20344.47%20343.53%20242.92%20357.644%20190.238C364.157%20165.917%20367.013%20147.5%20367.799%20135.625C368.695%20122.173%20359.455%20126.078%20341.786%20129.174ZM166.497%20172.756C166.497%20172.756%20180.246%20151.372%20203.565%20158C226.899%20164.628%20228.706%20190.425%20228.706%20190.425L166.497%20172.756ZM223.42%20268.713C182.403%20256.698%20176.077%20223.99%20176.077%20223.99L286.262%20254.796C286.262%20254.791%20264.021%20280.578%20223.42%20268.713ZM262.377%20201.495C262.377%20201.495%20276.107%20180.126%20299.422%20186.773C322.736%20193.411%20324.572%20219.208%20324.572%20219.208L262.377%20201.495Z'%20fill='%232EAD33'/%3e%3cpath%20d='M139.88%20246.04L99.3324%20257.532C99.3324%20257.532%20103.737%20232.44%20133.607%20222.496L110.647%20136.33L108.663%20136.933C80.1918%20144.611%2057.1742%20142.574%2047.5704%20140.911C33.9554%20138.563%2026.834%20135.572%2027.5001%20145.929C28.08%20155.063%2030.2557%20169.224%2035.2397%20187.929C46.0225%20228.433%2081.6583%20306.481%20149.005%20288.342L150.989%20287.719L139.88%20246.04ZM61.0848%20188.485L108.946%20175.876C108.946%20175.876%20107.551%20194.288%2089.6087%20199.018C71.6615%20203.743%2061.0848%20188.485%2061.0848%20188.485Z'%20fill='%23D65348'/%3e%3cpath%20d='M225.27%20269.163L223.415%20268.712C182.398%20256.698%20176.072%20223.99%20176.072%20223.99L232.89%20239.872L262.971%20124.281L262.607%20124.185C225.711%20114.304%20201.232%2097.0224%20191.532%2088.8994C177.783%2077.3834%20171.735%2069.3802%20165.783%2081.4857C160.526%2092.163%20153.797%20109.54%20147.284%20133.866C133.171%20186.543%20122.623%20297.706%20209.867%20321.097L211.655%20321.5L225.27%20269.163ZM166.497%20172.756C166.497%20172.756%20180.246%20151.372%20203.565%20158C226.899%20164.628%20228.706%20190.425%20228.706%20190.425L166.497%20172.756Z'%20fill='%231D8D22'/%3e%3cpath%20d='M141.946%20245.451L131.072%20248.537C133.641%20263.019%20138.169%20276.917%20145.276%20289.195C146.513%20288.922%20147.74%20288.687%20149%20288.342C152.302%20287.451%20155.364%20286.348%20158.312%20285.145C150.371%20273.361%20145.118%20259.789%20141.946%20245.451ZM137.7%20143.451C132.112%20164.307%20127.113%20194.326%20128.489%20224.436C130.952%20223.367%20133.554%20222.371%20136.444%20221.551L138.457%20221.101C136.003%20188.939%20141.308%20156.165%20147.284%20133.866C148.799%20128.225%20150.318%20122.978%20151.832%20118.085C149.393%20119.637%20146.767%20121.228%20143.776%20122.867C141.759%20129.093%20139.722%20135.898%20137.7%20143.451Z'%20fill='%23C04B41'/%3e%3c/svg%3e",If=t3,vr=document.createElement("link");vr.rel="shortcut icon";vr.href=Nv;document.head.appendChild(vr);const Hv=()=>{const[i,u]=it.useState();return it.useEffect(()=>{const c=new Bv;c.load().then(()=>{var f;(f=document.getElementById("playwrightReportBase64"))==null||f.remove(),u(c)})},[]),m.jsx(R3,{children:m.jsx(Ov,{report:i})})};window.onload=()=>{Q3(),s3.createRoot(document.querySelector("#root")).render(m.jsx(Hv,{}))};class Bv{constructor(){this._entries=new Map}async load(){const u=document.getElementById("playwrightReportBase64").content.textContent,c=new If.ZipReader(new If.Data64URIReader(u),{useWebWorkers:!1});for(const f of await c.getEntries())this._entries.set(f.filename,f);this._json=await this.entry("report.json")}json(){return this._json}async entry(u){const c=this._entries.get(u),f=new If.TextWriter;return await c.getData(f),JSON.parse(await f.getData())}}
scripts/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-DYBRYzYX.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid black;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor .CodeMirror-line::selection,.cm-fat-cursor .CodeMirror-line>span::selection,.cm-fat-cursor .CodeMirror-line>span>span::selection{background:transparent}.cm-fat-cursor .CodeMirror-line::-moz-selection,.cm-fat-cursor .CodeMirror-line>span::-moz-selection,.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:transparent}.cm-fat-cursor{caret-color:transparent}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3,.cm-s-default .cm-type{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-s-default .cm-error,.cm-invalidchar{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:#ff96004d}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative;z-index:0}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;outline:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-scroll,.CodeMirror-sizer,.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}div.CodeMirror-dragcursors,.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:#ff06}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:none}.CodeMirror-dialog{position:absolute;left:0;right:0;background:inherit;z-index:15;padding:.1em .8em;overflow:hidden;color:inherit}.CodeMirror-dialog-top{border-bottom:1px solid #eee;top:0}.CodeMirror-dialog-bottom{border-top:1px solid #eee;bottom:0}.CodeMirror-dialog input{border:none;outline:none;background:transparent;width:20em;color:inherit;font-family:monospace}.CodeMirror-dialog button{font-size:70%}
scripts/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-DeBYQozu.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,32 @@
import{g as Ju}from"./index-Bq-mQf8S.js";var vi={exports:{}},Zu=vi.exports,pa;function mt(){return pa||(pa=1,(function(ct,xt){(function(b,pe){ct.exports=pe()})(Zu,(function(){var b=navigator.userAgent,pe=navigator.platform,_=/gecko\/\d/i.test(b),te=/MSIE \d/.test(b),oe=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(b),Q=/Edge\/(\d+)/.exec(b),k=te||oe||Q,I=k&&(te?document.documentMode||6:+(Q||oe)[1]),Y=!Q&&/WebKit\//.test(b),ne=Y&&/Qt\/\d+\.\d+/.test(b),S=!Q&&/Chrome\/(\d+)/.exec(b),R=S&&+S[1],A=/Opera\//.test(b),$=/Apple Computer/.test(navigator.vendor),ue=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(b),O=/PhantomJS/.test(b),w=$&&(/Mobile\/\w+/.test(b)||navigator.maxTouchPoints>2),M=/Android/.test(b),N=w||M||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(b),z=w||/Mac/.test(pe),X=/\bCrOS\b/.test(b),q=/win/i.test(pe),p=A&&b.match(/Version\/(\d*\.\d*)/);p&&(p=Number(p[1])),p&&p>=15&&(A=!1,Y=!0);var W=z&&(ne||A&&(p==null||p<12.11)),J=_||k&&I>=9;function P(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var V=function(e,t){var n=e.className,r=P(t).exec(n);if(r){var i=n.slice(r.index+r[0].length);e.className=n.slice(0,r.index)+(i?r[1]+i:"")}};function F(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function G(e,t){return F(e).appendChild(t)}function c(e,t,n,r){var i=document.createElement(e);if(n&&(i.className=n),r&&(i.style.cssText=r),typeof t=="string")i.appendChild(document.createTextNode(t));else if(t)for(var o=0;o<t.length;++o)i.appendChild(t[o]);return i}function T(e,t,n,r){var i=c(e,t,n,r);return i.setAttribute("role","presentation"),i}var C;document.createRange?C=function(e,t,n,r){var i=document.createRange();return i.setEnd(r||e,n),i.setStart(e,t),i}:C=function(e,t,n){var r=document.body.createTextRange();try{r.moveToElementText(e.parentNode)}catch{return r}return r.collapse(!0),r.moveEnd("character",n),r.moveStart("character",t),r};function g(e,t){if(t.nodeType==3&&(t=t.parentNode),e.contains)return e.contains(t);do if(t.nodeType==11&&(t=t.host),t==e)return!0;while(t=t.parentNode)}function y(e){var t=e.ownerDocument||e,n;try{n=e.activeElement}catch{n=t.body||null}for(;n&&n.shadowRoot&&n.shadowRoot.activeElement;)n=n.shadowRoot.activeElement;return n}function j(e,t){var n=e.className;P(t).test(n)||(e.className+=(n?" ":"")+t)}function de(e,t){for(var n=e.split(" "),r=0;r<n.length;r++)n[r]&&!P(n[r]).test(t)&&(t+=" "+n[r]);return t}var v=function(e){e.select()};w?v=function(e){e.selectionStart=0,e.selectionEnd=e.value.length}:k&&(v=function(e){try{e.select()}catch{}});function d(e){return e.display.wrapper.ownerDocument}function fe(e){return Te(e.display.wrapper)}function Te(e){return e.getRootNode?e.getRootNode():e.ownerDocument}function le(e){return d(e).defaultView}function xe(e){var t=Array.prototype.slice.call(arguments,1);return function(){return e.apply(null,t)}}function Me(e,t,n){t||(t={});for(var r in e)e.hasOwnProperty(r)&&(n!==!1||!t.hasOwnProperty(r))&&(t[r]=e[r]);return t}function Fe(e,t,n,r,i){t==null&&(t=e.search(/[^\s\u00a0]/),t==-1&&(t=e.length));for(var o=r||0,l=i||0;;){var a=e.indexOf("    ",o);if(a<0||a>=t)return l+(t-o);l+=a-o,l+=n-l%n,o=a+1}}var Ce=function(){this.id=null,this.f=null,this.time=0,this.handler=xe(this.onTimeout,this)};Ce.prototype.onTimeout=function(e){e.id=0,e.time<=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},Ce.prototype.set=function(e,t){this.f=t;var n=+new Date+e;(!this.id||n<this.time)&&(clearTimeout(this.id),this.id=setTimeout(this.handler,e),this.time=n)};function ve(e,t){for(var n=0;n<e.length;++n)if(e[n]==t)return n;return-1}var Oe=50,qe={toString:function(){return"CodeMirror.Pass"}},$e={scroll:!1},dt={origin:"*mouse"},Pe={origin:"+move"};function _e(e,t,n){for(var r=0,i=0;;){var o=e.indexOf("    ",r);o==-1&&(o=e.length);var l=o-r;if(o==e.length||i+l>=t)return r+Math.min(l,t-i);if(i+=o-r,i+=n-i%n,r=o+1,i>=t)return r}}var Ue=[""];function et(e){for(;Ue.length<=e;)Ue.push(we(Ue)+" ");return Ue[e]}function we(e){return e[e.length-1]}function Ie(e,t){for(var n=[],r=0;r<e.length;r++)n[r]=t(e[r],r);return n}function E(e,t,n){for(var r=0,i=n(t);r<e.length&&n(e[r])<=i;)r++;e.splice(r,0,t)}function ee(){}function K(e,t){var n;return Object.create?n=Object.create(e):(ee.prototype=e,n=new ee),t&&Me(t,n),n}var ze=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;function me(e){return/\w/.test(e)||e>"€"&&(e.toUpperCase()!=e.toLowerCase()||ze.test(e))}function De(e,t){return t?t.source.indexOf("\\w")>-1&&me(e)?!0:t.test(e):me(e)}function be(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var Be=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function Ne(e){return e.charCodeAt(0)>=768&&Be.test(e)}function Mt(e,t,n){for(;(n<0?t>0:t<e.length)&&Ne(e.charAt(t));)t+=n;return t}function Pt(e,t,n){for(var r=t>n?-1:1;;){if(t==n)return t;var i=(t+n)/2,o=r<0?Math.ceil(i):Math.floor(i);if(o==t)return e(o)?t:n;e(o)?n=o:t=o+r}}function or(e,t,n,r){if(!e)return r(t,n,"ltr",0);for(var i=!1,o=0;o<e.length;++o){var l=e[o];(l.from<n&&l.to>t||t==n&&l.to==t)&&(r(Math.max(l.from,t),Math.min(l.to,n),l.level==1?"rtl":"ltr",o),i=!0)}i||r(t,n,"ltr")}var br=null;function lr(e,t,n){var r;br=null;for(var i=0;i<e.length;++i){var o=e[i];if(o.from<t&&o.to>t)return i;o.to==t&&(o.from!=o.to&&n=="before"?r=i:br=i),o.from==t&&(o.from!=o.to&&n!="before"?r=i:br=i)}return r??br}var mi=(function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function n(u){return u<=247?e.charAt(u):1424<=u&&u<=1524?"R":1536<=u&&u<=1785?t.charAt(u-1536):1774<=u&&u<=2220?"r":8192<=u&&u<=8203?"w":u==8204?"b":"L"}var r=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,i=/[stwN]/,o=/[LRr]/,l=/[Lb1n]/,a=/[1n]/;function s(u,h,x){this.level=u,this.from=h,this.to=x}return function(u,h){var x=h=="ltr"?"L":"R";if(u.length==0||h=="ltr"&&!r.test(u))return!1;for(var D=u.length,L=[],H=0;H<D;++H)L.push(n(u.charCodeAt(H)));for(var Z=0,ie=x;Z<D;++Z){var ae=L[Z];ae=="m"?L[Z]=ie:ie=ae}for(var he=0,se=x;he<D;++he){var ge=L[he];ge=="1"&&se=="r"?L[he]="n":o.test(ge)&&(se=ge,ge=="r"&&(L[he]="R"))}for(var Le=1,ke=L[0];Le<D-1;++Le){var Ee=L[Le];Ee=="+"&&ke=="1"&&L[Le+1]=="1"?L[Le]="1":Ee==","&&ke==L[Le+1]&&(ke=="1"||ke=="n")&&(L[Le]=ke),ke=Ee}for(var Ke=0;Ke<D;++Ke){var st=L[Ke];if(st==",")L[Ke]="N";else if(st=="%"){var Xe=void 0;for(Xe=Ke+1;Xe<D&&L[Xe]=="%";++Xe);for(var Nt=Ke&&L[Ke-1]=="!"||Xe<D&&L[Xe]=="1"?"1":"N",Tt=Ke;Tt<Xe;++Tt)L[Tt]=Nt;Ke=Xe-1}}for(var tt=0,Ct=x;tt<D;++tt){var ft=L[tt];Ct=="L"&&ft=="1"?L[tt]="L":o.test(ft)&&(Ct=ft)}for(var nt=0;nt<D;++nt)if(i.test(L[nt])){var rt=void 0;for(rt=nt+1;rt<D&&i.test(L[rt]);++rt);for(var Ze=(nt?L[nt-1]:x)=="L",Dt=(rt<D?L[rt]:x)=="L",nn=Ze==Dt?Ze?"L":"R":x,yr=nt;yr<rt;++yr)L[yr]=nn;nt=rt-1}for(var vt=[],Jt,ut=0;ut<D;)if(l.test(L[ut])){var co=ut;for(++ut;ut<D&&l.test(L[ut]);++ut);vt.push(new s(0,co,ut))}else{var ir=ut,Ar=vt.length,Nr=h=="rtl"?1:0;for(++ut;ut<D&&L[ut]!="L";++ut);for(var bt=ir;bt<ut;)if(a.test(L[bt])){ir<bt&&(vt.splice(Ar,0,new s(1,ir,bt)),Ar+=Nr);var on=bt;for(++bt;bt<ut&&a.test(L[bt]);++bt);vt.splice(Ar,0,new s(2,on,bt)),Ar+=Nr,ir=bt}else++bt;ir<ut&&vt.splice(Ar,0,new s(1,ir,ut))}return h=="ltr"&&(vt[0].level==1&&(Jt=u.match(/^\s+/))&&(vt[0].from=Jt[0].length,vt.unshift(new s(0,0,Jt[0].length))),we(vt).level==1&&(Jt=u.match(/\s+$/))&&(we(vt).to-=Jt[0].length,vt.push(new s(0,D-Jt[0].length,D)))),h=="rtl"?vt.reverse():vt}})();function Re(e,t){var n=e.order;return n==null&&(n=e.order=mi(e.text,t)),n}var Bn=[],Se=function(e,t,n){if(e.addEventListener)e.addEventListener(t,n,!1);else if(e.attachEvent)e.attachEvent("on"+t,n);else{var r=e._handlers||(e._handlers={});r[t]=(r[t]||Bn).concat(n)}};function Zt(e,t){return e._handlers&&e._handlers[t]||Bn}function ht(e,t,n){if(e.removeEventListener)e.removeEventListener(t,n,!1);else if(e.detachEvent)e.detachEvent("on"+t,n);else{var r=e._handlers,i=r&&r[t];if(i){var o=ve(i,n);o>-1&&(r[t]=i.slice(0,o).concat(i.slice(o+1)))}}}function Ye(e,t){var n=Zt(e,t);if(n.length)for(var r=Array.prototype.slice.call(arguments,2),i=0;i<n.length;++i)n[i].apply(null,r)}function Qe(e,t,n){return typeof t=="string"&&(t={type:t,preventDefault:function(){this.defaultPrevented=!0}}),Ye(e,n||t.type,e,t),kt(t)||t.codemirrorIgnore}function It(e){var t=e._handlers&&e._handlers.cursorActivity;if(t)for(var n=e.curOp.cursorActivityHandlers||(e.curOp.cursorActivityHandlers=[]),r=0;r<t.length;++r)ve(n,t[r])==-1&&n.push(t[r])}function Ft(e,t){return Zt(e,t).length>0}function Bt(e){e.prototype.on=function(t,n){Se(this,t,n)},e.prototype.off=function(t,n){ht(this,t,n)}}function pt(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Er(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function kt(e){return e.defaultPrevented!=null?e.defaultPrevented:e.returnValue==!1}function ar(e){pt(e),Er(e)}function ln(e){return e.target||e.srcElement}function Rt(e){var t=e.which;return t==null&&(e.button&1?t=1:e.button&2?t=3:e.button&4&&(t=2)),z&&e.ctrlKey&&t==1&&(t=3),t}var xi=(function(){if(k&&I<9)return!1;var e=c("div");return"draggable"in e||"dragDrop"in e})(),Or;function Rn(e){if(Or==null){var t=c("span","​");G(e,c("span",[t,document.createTextNode("x")])),e.firstChild.offsetHeight!=0&&(Or=t.offsetWidth<=1&&t.offsetHeight>2&&!(k&&I<8))}var n=Or?c("span","​"):c("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");return n.setAttribute("cm-text",""),n}var an;function sr(e){if(an!=null)return an;var t=G(e,document.createTextNode("AØ®A")),n=C(t,0,1).getBoundingClientRect(),r=C(t,1,2).getBoundingClientRect();return F(e),!n||n.left==n.right?!1:an=r.right-n.right<3}var zt=`
b`.split(/\n/).length!=3?function(e){for(var t=0,n=[],r=e.length;t<=r;){var i=e.indexOf(`
`,t);i==-1&&(i=e.length);var o=e.slice(t,e.charAt(i-1)=="\r"?i-1:i),l=o.indexOf("\r");l!=-1?(n.push(o.slice(0,l)),t+=l+1):(n.push(o),t=i+1)}return n}:function(e){return e.split(/\r\n?|\n/)},ur=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch{return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch{}return!t||t.parentElement()!=e?!1:t.compareEndPoints("StartToEnd",t)!=0},Wn=(function(){var e=c("div");return"oncopy"in e?!0:(e.setAttribute("oncopy","return;"),typeof e.oncopy=="function")})(),Wt=null;function yi(e){if(Wt!=null)return Wt;var t=G(e,c("span","x")),n=t.getBoundingClientRect(),r=C(t,0,1).getBoundingClientRect();return Wt=Math.abs(n.left-r.left)>1}var Pr={},Ht={};function _t(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),Pr[e]=t}function kr(e,t){Ht[e]=t}function Ir(e){if(typeof e=="string"&&Ht.hasOwnProperty(e))e=Ht[e];else if(e&&typeof e.name=="string"&&Ht.hasOwnProperty(e.name)){var t=Ht[e.name];typeof t=="string"&&(t={name:t}),e=K(t,e),e.name=t.name}else{if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return Ir("application/xml");if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return Ir("application/json")}return typeof e=="string"?{name:e}:e||{name:"null"}}function zr(e,t){t=Ir(t);var n=Pr[t.name];if(!n)return zr(e,"text/plain");var r=n(e,t);if(fr.hasOwnProperty(t.name)){var i=fr[t.name];for(var o in i)i.hasOwnProperty(o)&&(r.hasOwnProperty(o)&&(r["_"+o]=r[o]),r[o]=i[o])}if(r.name=t.name,t.helperType&&(r.helperType=t.helperType),t.modeProps)for(var l in t.modeProps)r[l]=t.modeProps[l];return r}var fr={};function Br(e,t){var n=fr.hasOwnProperty(e)?fr[e]:fr[e]={};Me(t,n)}function Gt(e,t){if(t===!0)return t;if(e.copyState)return e.copyState(t);var n={};for(var r in t){var i=t[r];i instanceof Array&&(i=i.concat([])),n[r]=i}return n}function sn(e,t){for(var n;e.innerMode&&(n=e.innerMode(t),!(!n||n.mode==e));)t=n.state,e=n.mode;return n||{mode:e,state:t}}function Rr(e,t,n){return e.startState?e.startState(t,n):!0}var Je=function(e,t,n){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=n};Je.prototype.eol=function(){return this.pos>=this.string.length},Je.prototype.sol=function(){return this.pos==this.lineStart},Je.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},Je.prototype.next=function(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)},Je.prototype.eat=function(e){var t=this.string.charAt(this.pos),n;if(typeof e=="string"?n=t==e:n=t&&(e.test?e.test(t):e(t)),n)return++this.pos,t},Je.prototype.eatWhile=function(e){for(var t=this.pos;this.eat(e););return this.pos>t},Je.prototype.eatSpace=function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},Je.prototype.skipToEnd=function(){this.pos=this.string.length},Je.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},Je.prototype.backUp=function(e){this.pos-=e},Je.prototype.column=function(){return this.lastColumnPos<this.start&&(this.lastColumnValue=Fe(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue-(this.lineStart?Fe(this.string,this.lineStart,this.tabSize):0)},Je.prototype.indentation=function(){return Fe(this.string,null,this.tabSize)-(this.lineStart?Fe(this.string,this.lineStart,this.tabSize):0)},Je.prototype.match=function(e,t,n){if(typeof e=="string"){var r=function(l){return n?l.toLowerCase():l},i=this.string.substr(this.pos,e.length);if(r(i)==r(e))return t!==!1&&(this.pos+=e.length),!0}else{var o=this.string.slice(this.pos).match(e);return o&&o.index>0?null:(o&&t!==!1&&(this.pos+=o[0].length),o)}},Je.prototype.current=function(){return this.string.slice(this.start,this.pos)},Je.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},Je.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},Je.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};function ye(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");for(var n=e;!n.lines;)for(var r=0;;++r){var i=n.children[r],o=i.chunkSize();if(t<o){n=i;break}t-=o}return n.lines[t]}function $t(e,t,n){var r=[],i=t.line;return e.iter(t.line,n.line+1,function(o){var l=o.text;i==n.line&&(l=l.slice(0,n.ch)),i==t.line&&(l=l.slice(t.ch)),r.push(l),++i}),r}function un(e,t,n){var r=[];return e.iter(t,n,function(i){r.push(i.text)}),r}function Et(e,t){var n=t-e.height;if(n)for(var r=e;r;r=r.parent)r.height+=n}function f(e){if(e.parent==null)return null;for(var t=e.parent,n=ve(t.lines,e),r=t.parent;r;t=r,r=r.parent)for(var i=0;r.children[i]!=t;++i)n+=r.children[i].chunkSize();return n+t.first}function m(e,t){var n=e.first;e:do{for(var r=0;r<e.children.length;++r){var i=e.children[r],o=i.height;if(t<o){e=i;continue e}t-=o,n+=i.chunkSize()}return n}while(!e.lines);for(var l=0;l<e.lines.length;++l){var a=e.lines[l],s=a.height;if(t<s)break;t-=s}return n+l}function U(e,t){return t>=e.first&&t<e.first+e.size}function re(e,t){return String(e.lineNumberFormatter(t+e.firstLineNumber))}function B(e,t,n){if(n===void 0&&(n=null),!(this instanceof B))return new B(e,t,n);this.line=e,this.ch=t,this.sticky=n}function ce(e,t){return e.line-t.line||e.ch-t.ch}function We(e,t){return e.sticky==t.sticky&&ce(e,t)==0}function it(e){return B(e.line,e.ch)}function wt(e,t){return ce(e,t)<0?t:e}function Wr(e,t){return ce(e,t)<0?e:t}function go(e,t){return Math.max(e.first,Math.min(t,e.first+e.size-1))}function Ae(e,t){if(t.line<e.first)return B(e.first,0);var n=e.first+e.size-1;return t.line>n?B(n,ye(e,n).text.length):Za(t,ye(e,t.line).text.length)}function Za(e,t){var n=e.ch;return n==null||n>t?B(e.line,t):n<0?B(e.line,0):e}function vo(e,t){for(var n=[],r=0;r<t.length;r++)n[r]=Ae(e,t[r]);return n}var Hn=function(e,t){this.state=e,this.lookAhead=t},Xt=function(e,t,n,r){this.state=t,this.doc=e,this.line=n,this.maxLookAhead=r||0,this.baseTokens=null,this.baseTokenPos=1};Xt.prototype.lookAhead=function(e){var t=this.doc.getLine(this.line+e);return t!=null&&e>this.maxLookAhead&&(this.maxLookAhead=e),t},Xt.prototype.baseToken=function(e){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=e;)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-e}},Xt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},Xt.fromSaved=function(e,t,n){return t instanceof Hn?new Xt(e,Gt(e.mode,t.state),n,t.lookAhead):new Xt(e,Gt(e.mode,t),n)},Xt.prototype.save=function(e){var t=e!==!1?Gt(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new Hn(t,this.maxLookAhead):t};function mo(e,t,n,r){var i=[e.state.modeGen],o={};So(e,t.text,e.doc.mode,n,function(u,h){return i.push(u,h)},o,r);for(var l=n.state,a=function(u){n.baseTokens=i;var h=e.state.overlays[u],x=1,D=0;n.state=!0,So(e,t.text,h.mode,n,function(L,H){for(var Z=x;D<L;){var ie=i[x];ie>L&&i.splice(x,1,L,i[x+1],ie),x+=2,D=Math.min(L,ie)}if(H)if(h.opaque)i.splice(Z,x-Z,L,"overlay "+H),x=Z+2;else for(;Z<x;Z+=2){var ae=i[Z+1];i[Z+1]=(ae?ae+" ":"")+"overlay "+H}},o),n.state=l,n.baseTokens=null,n.baseTokenPos=1},s=0;s<e.state.overlays.length;++s)a(s);return{styles:i,classes:o.bgClass||o.textClass?o:null}}function xo(e,t,n){if(!t.styles||t.styles[0]!=e.state.modeGen){var r=fn(e,f(t)),i=t.text.length>e.options.maxHighlightLength&&Gt(e.doc.mode,r.state),o=mo(e,t,r);i&&(r.state=i),t.stateAfter=r.save(!i),t.styles=o.styles,o.classes?t.styleClasses=o.classes:t.styleClasses&&(t.styleClasses=null),n===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function fn(e,t,n){var r=e.doc,i=e.display;if(!r.mode.startState)return new Xt(r,!0,t);var o=$a(e,t,n),l=o>r.first&&ye(r,o-1).stateAfter,a=l?Xt.fromSaved(r,l,o):new Xt(r,Rr(r.mode),o);return r.iter(o,t,function(s){bi(e,s.text,a);var u=a.line;s.stateAfter=u==t-1||u%5==0||u>=i.viewFrom&&u<i.viewTo?a.save():null,a.nextLine()}),n&&(r.modeFrontier=a.line),a}function bi(e,t,n,r){var i=e.doc.mode,o=new Je(t,e.options.tabSize,n);for(o.start=o.pos=r||0,t==""&&yo(i,n.state);!o.eol();)ki(i,o,n.state),o.start=o.pos}function yo(e,t){if(e.blankLine)return e.blankLine(t);if(e.innerMode){var n=sn(e,t);if(n.mode.blankLine)return n.mode.blankLine(n.state)}}function ki(e,t,n,r){for(var i=0;i<10;i++){r&&(r[0]=sn(e,n).mode);var o=e.token(t,n);if(t.pos>t.start)return o}throw new Error("Mode "+e.name+" failed to advance stream.")}var bo=function(e,t,n){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=n};function ko(e,t,n,r){var i=e.doc,o=i.mode,l;t=Ae(i,t);var a=ye(i,t.line),s=fn(e,t.line,n),u=new Je(a.text,e.options.tabSize,s),h;for(r&&(h=[]);(r||u.pos<t.ch)&&!u.eol();)u.start=u.pos,l=ki(o,u,s.state),r&&h.push(new bo(u,l,Gt(i.mode,s.state)));return r?h:new bo(u,l,s.state)}function wo(e,t){if(e)for(;;){var n=e.match(/(?:^|\s+)line-(background-)?(\S+)/);if(!n)break;e=e.slice(0,n.index)+e.slice(n.index+n[0].length);var r=n[1]?"bgClass":"textClass";t[r]==null?t[r]=n[2]:new RegExp("(?:^|\\s)"+n[2]+"(?:$|\\s)").test(t[r])||(t[r]+=" "+n[2])}return e}function So(e,t,n,r,i,o,l){var a=n.flattenSpans;a==null&&(a=e.options.flattenSpans);var s=0,u=null,h=new Je(t,e.options.tabSize,r),x,D=e.options.addModeClass&&[null];for(t==""&&wo(yo(n,r.state),o);!h.eol();){if(h.pos>e.options.maxHighlightLength?(a=!1,l&&bi(e,t,r,h.pos),h.pos=t.length,x=null):x=wo(ki(n,h,r.state,D),o),D){var L=D[0].name;L&&(x="m-"+(x?L+" "+x:L))}if(!a||u!=x){for(;s<h.start;)s=Math.min(h.start,s+5e3),i(s,u);u=x}h.start=h.pos}for(;s<h.pos;){var H=Math.min(h.pos,s+5e3);i(H,u),s=H}}function $a(e,t,n){for(var r,i,o=e.doc,l=n?-1:t-(e.doc.mode.innerMode?1e3:100),a=t;a>l;--a){if(a<=o.first)return o.first;var s=ye(o,a-1),u=s.stateAfter;if(u&&(!n||a+(u instanceof Hn?u.lookAhead:0)<=o.modeFrontier))return a;var h=Fe(s.text,null,e.options.tabSize);(i==null||r>h)&&(i=a-1,r=h)}return i}function Va(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontier<t-10)){for(var n=e.first,r=t-1;r>n;r--){var i=ye(e,r).stateAfter;if(i&&(!(i instanceof Hn)||r+i.lookAhead<t)){n=r+1;break}}e.highlightFrontier=Math.min(e.highlightFrontier,n)}}var Lo=!1,Vt=!1;function es(){Lo=!0}function ts(){Vt=!0}function _n(e,t,n){this.marker=e,this.from=t,this.to=n}function cn(e,t){if(e)for(var n=0;n<e.length;++n){var r=e[n];if(r.marker==t)return r}}function rs(e,t){for(var n,r=0;r<e.length;++r)e[r]!=t&&(n||(n=[])).push(e[r]);return n}function ns(e,t,n){var r=n&&window.WeakSet&&(n.markedSpans||(n.markedSpans=new WeakSet));r&&e.markedSpans&&r.has(e.markedSpans)?e.markedSpans.push(t):(e.markedSpans=e.markedSpans?e.markedSpans.concat([t]):[t],r&&r.add(e.markedSpans)),t.marker.attachLine(e)}function is(e,t,n){var r;if(e)for(var i=0;i<e.length;++i){var o=e[i],l=o.marker,a=o.from==null||(l.inclusiveLeft?o.from<=t:o.from<t);if(a||o.from==t&&l.type=="bookmark"&&(!n||!o.marker.insertLeft)){var s=o.to==null||(l.inclusiveRight?o.to>=t:o.to>t);(r||(r=[])).push(new _n(l,o.from,s?null:o.to))}}return r}function os(e,t,n){var r;if(e)for(var i=0;i<e.length;++i){var o=e[i],l=o.marker,a=o.to==null||(l.inclusiveRight?o.to>=t:o.to>t);if(a||o.from==t&&l.type=="bookmark"&&(!n||o.marker.insertLeft)){var s=o.from==null||(l.inclusiveLeft?o.from<=t:o.from<t);(r||(r=[])).push(new _n(l,s?null:o.from-t,o.to==null?null:o.to-t))}}return r}function wi(e,t){if(t.full)return null;var n=U(e,t.from.line)&&ye(e,t.from.line).markedSpans,r=U(e,t.to.line)&&ye(e,t.to.line).markedSpans;if(!n&&!r)return null;var i=t.from.ch,o=t.to.ch,l=ce(t.from,t.to)==0,a=is(n,i,l),s=os(r,o,l),u=t.text.length==1,h=we(t.text).length+(u?i:0);if(a)for(var x=0;x<a.length;++x){var D=a[x];if(D.to==null){var L=cn(s,D.marker);L?u&&(D.to=L.to==null?null:L.to+h):D.to=i}}if(s)for(var H=0;H<s.length;++H){var Z=s[H];if(Z.to!=null&&(Z.to+=h),Z.from==null){var ie=cn(a,Z.marker);ie||(Z.from=h,u&&(a||(a=[])).push(Z))}else Z.from+=h,u&&(a||(a=[])).push(Z)}a&&(a=To(a)),s&&s!=a&&(s=To(s));var ae=[a];if(!u){var he=t.text.length-2,se;if(he>0&&a)for(var ge=0;ge<a.length;++ge)a[ge].to==null&&(se||(se=[])).push(new _n(a[ge].marker,null,null));for(var Le=0;Le<he;++Le)ae.push(se);ae.push(s)}return ae}function To(e){for(var t=0;t<e.length;++t){var n=e[t];n.from!=null&&n.from==n.to&&n.marker.clearWhenEmpty!==!1&&e.splice(t--,1)}return e.length?e:null}function ls(e,t,n){var r=null;if(e.iter(t.line,n.line+1,function(L){if(L.markedSpans)for(var H=0;H<L.markedSpans.length;++H){var Z=L.markedSpans[H].marker;Z.readOnly&&(!r||ve(r,Z)==-1)&&(r||(r=[])).push(Z)}}),!r)return null;for(var i=[{from:t,to:n}],o=0;o<r.length;++o)for(var l=r[o],a=l.find(0),s=0;s<i.length;++s){var u=i[s];if(!(ce(u.to,a.from)<0||ce(u.from,a.to)>0)){var h=[s,1],x=ce(u.from,a.from),D=ce(u.to,a.to);(x<0||!l.inclusiveLeft&&!x)&&h.push({from:u.from,to:a.from}),(D>0||!l.inclusiveRight&&!D)&&h.push({from:a.to,to:u.to}),i.splice.apply(i,h),s+=h.length-3}}return i}function Co(e){var t=e.markedSpans;if(t){for(var n=0;n<t.length;++n)t[n].marker.detachLine(e);e.markedSpans=null}}function Do(e,t){if(t){for(var n=0;n<t.length;++n)t[n].marker.attachLine(e);e.markedSpans=t}}function qn(e){return e.inclusiveLeft?-1:0}function jn(e){return e.inclusiveRight?1:0}function Si(e,t){var n=e.lines.length-t.lines.length;if(n!=0)return n;var r=e.find(),i=t.find(),o=ce(r.from,i.from)||qn(e)-qn(t);if(o)return-o;var l=ce(r.to,i.to)||jn(e)-jn(t);return l||t.id-e.id}function Mo(e,t){var n=Vt&&e.markedSpans,r;if(n)for(var i=void 0,o=0;o<n.length;++o)i=n[o],i.marker.collapsed&&(t?i.from:i.to)==null&&(!r||Si(r,i.marker)<0)&&(r=i.marker);return r}function Fo(e){return Mo(e,!0)}function Kn(e){return Mo(e,!1)}function as(e,t){var n=Vt&&e.markedSpans,r;if(n)for(var i=0;i<n.length;++i){var o=n[i];o.marker.collapsed&&(o.from==null||o.from<t)&&(o.to==null||o.to>t)&&(!r||Si(r,o.marker)<0)&&(r=o.marker)}return r}function Ao(e,t,n,r,i){var o=ye(e,t),l=Vt&&o.markedSpans;if(l)for(var a=0;a<l.length;++a){var s=l[a];if(s.marker.collapsed){var u=s.marker.find(0),h=ce(u.from,n)||qn(s.marker)-qn(i),x=ce(u.to,r)||jn(s.marker)-jn(i);if(!(h>=0&&x<=0||h<=0&&x>=0)&&(h<=0&&(s.marker.inclusiveRight&&i.inclusiveLeft?ce(u.to,n)>=0:ce(u.to,n)>0)||h>=0&&(s.marker.inclusiveRight&&i.inclusiveLeft?ce(u.from,r)<=0:ce(u.from,r)<0)))return!0}}}function qt(e){for(var t;t=Fo(e);)e=t.find(-1,!0).line;return e}function ss(e){for(var t;t=Kn(e);)e=t.find(1,!0).line;return e}function us(e){for(var t,n;t=Kn(e);)e=t.find(1,!0).line,(n||(n=[])).push(e);return n}function Li(e,t){var n=ye(e,t),r=qt(n);return n==r?t:f(r)}function No(e,t){if(t>e.lastLine())return t;var n=ye(e,t),r;if(!cr(e,n))return t;for(;r=Kn(n);)n=r.find(1,!0).line;return f(n)+1}function cr(e,t){var n=Vt&&t.markedSpans;if(n){for(var r=void 0,i=0;i<n.length;++i)if(r=n[i],!!r.marker.collapsed){if(r.from==null)return!0;if(!r.marker.widgetNode&&r.from==0&&r.marker.inclusiveLeft&&Ti(e,t,r))return!0}}}function Ti(e,t,n){if(n.to==null){var r=n.marker.find(1,!0);return Ti(e,r.line,cn(r.line.markedSpans,n.marker))}if(n.marker.inclusiveRight&&n.to==t.text.length)return!0;for(var i=void 0,o=0;o<t.markedSpans.length;++o)if(i=t.markedSpans[o],i.marker.collapsed&&!i.marker.widgetNode&&i.from==n.to&&(i.to==null||i.to!=n.from)&&(i.marker.inclusiveLeft||n.marker.inclusiveRight)&&Ti(e,t,i))return!0}function er(e){e=qt(e);for(var t=0,n=e.parent,r=0;r<n.lines.length;++r){var i=n.lines[r];if(i==e)break;t+=i.height}for(var o=n.parent;o;n=o,o=n.parent)for(var l=0;l<o.children.length;++l){var a=o.children[l];if(a==n)break;t+=a.height}return t}function Un(e){if(e.height==0)return 0;for(var t=e.text.length,n,r=e;n=Fo(r);){var i=n.find(0,!0);r=i.from.line,t+=i.from.ch-i.to.ch}for(r=e;n=Kn(r);){var o=n.find(0,!0);t-=r.text.length-o.from.ch,r=o.to.line,t+=r.text.length-o.to.ch}return t}function Ci(e){var t=e.display,n=e.doc;t.maxLine=ye(n,n.first),t.maxLineLength=Un(t.maxLine),t.maxLineChanged=!0,n.iter(function(r){var i=Un(r);i>t.maxLineLength&&(t.maxLineLength=i,t.maxLine=r)})}var Hr=function(e,t,n){this.text=e,Do(this,t),this.height=n?n(this):1};Hr.prototype.lineNo=function(){return f(this)},Bt(Hr);function fs(e,t,n,r){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),e.order!=null&&(e.order=null),Co(e),Do(e,n);var i=r?r(e):1;i!=e.height&&Et(e,i)}function cs(e){e.parent=null,Co(e)}var ds={},hs={};function Eo(e,t){if(!e||/^\s*$/.test(e))return null;var n=t.addModeClass?hs:ds;return n[e]||(n[e]=e.replace(/\S+/g,"cm-$&"))}function Oo(e,t){var n=T("span",null,null,Y?"padding-right: .1px":null),r={pre:T("pre",[n],"CodeMirror-line"),content:n,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption("lineWrapping")};t.measure={};for(var i=0;i<=(t.rest?t.rest.length:0);i++){var o=i?t.rest[i-1]:t.line,l=void 0;r.pos=0,r.addToken=gs,sr(e.display.measure)&&(l=Re(o,e.doc.direction))&&(r.addToken=ms(r.addToken,l)),r.map=[];var a=t!=e.display.externalMeasured&&f(o);xs(o,r,xo(e,o,a)),o.styleClasses&&(o.styleClasses.bgClass&&(r.bgClass=de(o.styleClasses.bgClass,r.bgClass||"")),o.styleClasses.textClass&&(r.textClass=de(o.styleClasses.textClass,r.textClass||""))),r.map.length==0&&r.map.push(0,0,r.content.appendChild(Rn(e.display.measure))),i==0?(t.measure.map=r.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(r.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(Y){var s=r.content.lastChild;(/\bcm-tab\b/.test(s.className)||s.querySelector&&s.querySelector(".cm-tab"))&&(r.content.className="cm-tab-wrap-hack")}return Ye(e,"renderLine",e,t.line,r.pre),r.pre.className&&(r.textClass=de(r.pre.className,r.textClass||"")),r}function ps(e){var t=c("span","•","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function gs(e,t,n,r,i,o,l){if(t){var a=e.splitSpaces?vs(t,e.trailingSpace):t,s=e.cm.state.specialChars,u=!1,h;if(!s.test(t))e.col+=t.length,h=document.createTextNode(a),e.map.push(e.pos,e.pos+t.length,h),k&&I<9&&(u=!0),e.pos+=t.length;else{h=document.createDocumentFragment();for(var x=0;;){s.lastIndex=x;var D=s.exec(t),L=D?D.index-x:t.length-x;if(L){var H=document.createTextNode(a.slice(x,x+L));k&&I<9?h.appendChild(c("span",[H])):h.appendChild(H),e.map.push(e.pos,e.pos+L,H),e.col+=L,e.pos+=L}if(!D)break;x+=L+1;var Z=void 0;if(D[0]=="    "){var ie=e.cm.options.tabSize,ae=ie-e.col%ie;Z=h.appendChild(c("span",et(ae),"cm-tab")),Z.setAttribute("role","presentation"),Z.setAttribute("cm-text","    "),e.col+=ae}else D[0]=="\r"||D[0]==`
`?(Z=h.appendChild(c("span",D[0]=="\r"?"␍":"␤","cm-invalidchar")),Z.setAttribute("cm-text",D[0]),e.col+=1):(Z=e.cm.options.specialCharPlaceholder(D[0]),Z.setAttribute("cm-text",D[0]),k&&I<9?h.appendChild(c("span",[Z])):h.appendChild(Z),e.col+=1);e.map.push(e.pos,e.pos+1,Z),e.pos++}}if(e.trailingSpace=a.charCodeAt(t.length-1)==32,n||r||i||u||o||l){var he=n||"";r&&(he+=r),i&&(he+=i);var se=c("span",[h],he,o);if(l)for(var ge in l)l.hasOwnProperty(ge)&&ge!="style"&&ge!="class"&&se.setAttribute(ge,l[ge]);return e.content.appendChild(se)}e.content.appendChild(h)}}function vs(e,t){if(e.length>1&&!/  /.test(e))return e;for(var n=t,r="",i=0;i<e.length;i++){var o=e.charAt(i);o==" "&&n&&(i==e.length-1||e.charCodeAt(i+1)==32)&&(o=" "),r+=o,n=o==" "}return r}function ms(e,t){return function(n,r,i,o,l,a,s){i=i?i+" cm-force-border":"cm-force-border";for(var u=n.pos,h=u+r.length;;){for(var x=void 0,D=0;D<t.length&&(x=t[D],!(x.to>u&&x.from<=u));D++);if(x.to>=h)return e(n,r,i,o,l,a,s);e(n,r.slice(0,x.to-u),i,o,null,a,s),o=null,r=r.slice(x.to-u),u=x.to}}}function Po(e,t,n,r){var i=!r&&n.widgetNode;i&&e.map.push(e.pos,e.pos+t,i),!r&&e.cm.display.input.needsContentAttribute&&(i||(i=e.content.appendChild(document.createElement("span"))),i.setAttribute("cm-marker",n.id)),i&&(e.cm.display.input.setUneditable(i),e.content.appendChild(i)),e.pos+=t,e.trailingSpace=!1}function xs(e,t,n){var r=e.markedSpans,i=e.text,o=0;if(!r){for(var l=1;l<n.length;l+=2)t.addToken(t,i.slice(o,o=n[l]),Eo(n[l+1],t.cm.options));return}for(var a=i.length,s=0,u=1,h="",x,D,L=0,H,Z,ie,ae,he;;){if(L==s){H=Z=ie=D="",he=null,ae=null,L=1/0;for(var se=[],ge=void 0,Le=0;Le<r.length;++Le){var ke=r[Le],Ee=ke.marker;if(Ee.type=="bookmark"&&ke.from==s&&Ee.widgetNode)se.push(Ee);else if(ke.from<=s&&(ke.to==null||ke.to>s||Ee.collapsed&&ke.to==s&&ke.from==s)){if(ke.to!=null&&ke.to!=s&&L>ke.to&&(L=ke.to,Z=""),Ee.className&&(H+=" "+Ee.className),Ee.css&&(D=(D?D+";":"")+Ee.css),Ee.startStyle&&ke.from==s&&(ie+=" "+Ee.startStyle),Ee.endStyle&&ke.to==L&&(ge||(ge=[])).push(Ee.endStyle,ke.to),Ee.title&&((he||(he={})).title=Ee.title),Ee.attributes)for(var Ke in Ee.attributes)(he||(he={}))[Ke]=Ee.attributes[Ke];Ee.collapsed&&(!ae||Si(ae.marker,Ee)<0)&&(ae=ke)}else ke.from>s&&L>ke.from&&(L=ke.from)}if(ge)for(var st=0;st<ge.length;st+=2)ge[st+1]==L&&(Z+=" "+ge[st]);if(!ae||ae.from==s)for(var Xe=0;Xe<se.length;++Xe)Po(t,0,se[Xe]);if(ae&&(ae.from||0)==s){if(Po(t,(ae.to==null?a+1:ae.to)-s,ae.marker,ae.from==null),ae.to==null)return;ae.to==s&&(ae=!1)}}if(s>=a)break;for(var Nt=Math.min(a,L);;){if(h){var Tt=s+h.length;if(!ae){var tt=Tt>Nt?h.slice(0,Nt-s):h;t.addToken(t,tt,x?x+H:H,ie,s+tt.length==L?Z:"",D,he)}if(Tt>=Nt){h=h.slice(Nt-s),s=Nt;break}s=Tt,ie=""}h=i.slice(o,o=n[u++]),x=Eo(n[u++],t.cm.options)}}}function Io(e,t,n){this.line=t,this.rest=us(t),this.size=this.rest?f(we(this.rest))-n+1:1,this.node=this.text=null,this.hidden=cr(e,t)}function Gn(e,t,n){for(var r=[],i,o=t;o<n;o=i){var l=new Io(e.doc,ye(e.doc,o),o);i=o+l.size,r.push(l)}return r}var _r=null;function ys(e){_r?_r.ops.push(e):e.ownsGroup=_r={ops:[e],delayedCallbacks:[]}}function bs(e){var t=e.delayedCallbacks,n=0;do{for(;n<t.length;n++)t[n].call(null);for(var r=0;r<e.ops.length;r++){var i=e.ops[r];if(i.cursorActivityHandlers)for(;i.cursorActivityCalled<i.cursorActivityHandlers.length;)i.cursorActivityHandlers[i.cursorActivityCalled++].call(null,i.cm)}}while(n<t.length)}function ks(e,t){var n=e.ownsGroup;if(n)try{bs(n)}finally{_r=null,t(n)}}var dn=null;function ot(e,t){var n=Zt(e,t);if(n.length){var r=Array.prototype.slice.call(arguments,2),i;_r?i=_r.delayedCallbacks:dn?i=dn:(i=dn=[],setTimeout(ws,0));for(var o=function(a){i.push(function(){return n[a].apply(null,r)})},l=0;l<n.length;++l)o(l)}}function ws(){var e=dn;dn=null;for(var t=0;t<e.length;++t)e[t]()}function zo(e,t,n,r){for(var i=0;i<t.changes.length;i++){var o=t.changes[i];o=="text"?Ls(e,t):o=="gutter"?Ro(e,t,n,r):o=="class"?Di(e,t):o=="widget"&&Ts(e,t,r)}t.changes=null}function hn(e){return e.node==e.text&&(e.node=c("div",null,null,"position: relative"),e.text.parentNode&&e.text.parentNode.replaceChild(e.node,e.text),e.node.appendChild(e.text),k&&I<8&&(e.node.style.zIndex=2)),e.node}function Ss(e,t){var n=t.bgClass?t.bgClass+" "+(t.line.bgClass||""):t.line.bgClass;if(n&&(n+=" CodeMirror-linebackground"),t.background)n?t.background.className=n:(t.background.parentNode.removeChild(t.background),t.background=null);else if(n){var r=hn(t);t.background=r.insertBefore(c("div",null,n),r.firstChild),e.display.input.setUneditable(t.background)}}function Bo(e,t){var n=e.display.externalMeasured;return n&&n.line==t.line?(e.display.externalMeasured=null,t.measure=n.measure,n.built):Oo(e,t)}function Ls(e,t){var n=t.text.className,r=Bo(e,t);t.text==t.node&&(t.node=r.pre),t.text.parentNode.replaceChild(r.pre,t.text),t.text=r.pre,r.bgClass!=t.bgClass||r.textClass!=t.textClass?(t.bgClass=r.bgClass,t.textClass=r.textClass,Di(e,t)):n&&(t.text.className=n)}function Di(e,t){Ss(e,t),t.line.wrapClass?hn(t).className=t.line.wrapClass:t.node!=t.text&&(t.node.className="");var n=t.textClass?t.textClass+" "+(t.line.textClass||""):t.line.textClass;t.text.className=n||""}function Ro(e,t,n,r){if(t.gutter&&(t.node.removeChild(t.gutter),t.gutter=null),t.gutterBackground&&(t.node.removeChild(t.gutterBackground),t.gutterBackground=null),t.line.gutterClass){var i=hn(t);t.gutterBackground=c("div",null,"CodeMirror-gutter-background "+t.line.gutterClass,"left: "+(e.options.fixedGutter?r.fixedPos:-r.gutterTotalWidth)+"px; width: "+r.gutterTotalWidth+"px"),e.display.input.setUneditable(t.gutterBackground),i.insertBefore(t.gutterBackground,t.text)}var o=t.line.gutterMarkers;if(e.options.lineNumbers||o){var l=hn(t),a=t.gutter=c("div",null,"CodeMirror-gutter-wrapper","left: "+(e.options.fixedGutter?r.fixedPos:-r.gutterTotalWidth)+"px");if(a.setAttribute("aria-hidden","true"),e.display.input.setUneditable(a),l.insertBefore(a,t.text),t.line.gutterClass&&(a.className+=" "+t.line.gutterClass),e.options.lineNumbers&&(!o||!o["CodeMirror-linenumbers"])&&(t.lineNumber=a.appendChild(c("div",re(e.options,n),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+r.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+e.display.lineNumInnerWidth+"px"))),o)for(var s=0;s<e.display.gutterSpecs.length;++s){var u=e.display.gutterSpecs[s].className,h=o.hasOwnProperty(u)&&o[u];h&&a.appendChild(c("div",[h],"CodeMirror-gutter-elt","left: "+r.gutterLeft[u]+"px; width: "+r.gutterWidth[u]+"px"))}}}function Ts(e,t,n){t.alignable&&(t.alignable=null);for(var r=P("CodeMirror-linewidget"),i=t.node.firstChild,o=void 0;i;i=o)o=i.nextSibling,r.test(i.className)&&t.node.removeChild(i);Wo(e,t,n)}function Cs(e,t,n,r){var i=Bo(e,t);return t.text=t.node=i.pre,i.bgClass&&(t.bgClass=i.bgClass),i.textClass&&(t.textClass=i.textClass),Di(e,t),Ro(e,t,n,r),Wo(e,t,r),t.node}function Wo(e,t,n){if(Ho(e,t.line,t,n,!0),t.rest)for(var r=0;r<t.rest.length;r++)Ho(e,t.rest[r],t,n,!1)}function Ho(e,t,n,r,i){if(t.widgets)for(var o=hn(n),l=0,a=t.widgets;l<a.length;++l){var s=a[l],u=c("div",[s.node],"CodeMirror-linewidget"+(s.className?" "+s.className:""));s.handleMouseEvents||u.setAttribute("cm-ignore-events","true"),Ds(s,u,n,r),e.display.input.setUneditable(u),i&&s.above?o.insertBefore(u,n.gutter||n.text):o.appendChild(u),ot(s,"redraw")}}function Ds(e,t,n,r){if(e.noHScroll){(n.alignable||(n.alignable=[])).push(t);var i=r.wrapperWidth;t.style.left=r.fixedPos+"px",e.coverGutter||(i-=r.gutterTotalWidth,t.style.paddingLeft=r.gutterTotalWidth+"px"),t.style.width=i+"px"}e.coverGutter&&(t.style.zIndex=5,t.style.position="relative",e.noHScroll||(t.style.marginLeft=-r.gutterTotalWidth+"px"))}function pn(e){if(e.height!=null)return e.height;var t=e.doc.cm;if(!t)return 0;if(!g(document.body,e.node)){var n="position: relative;";e.coverGutter&&(n+="margin-left: -"+t.display.gutters.offsetWidth+"px;"),e.noHScroll&&(n+="width: "+t.display.wrapper.clientWidth+"px;"),G(t.display.measure,c("div",[e.node],null,n))}return e.height=e.node.parentNode.offsetHeight}function tr(e,t){for(var n=ln(t);n!=e.wrapper;n=n.parentNode)if(!n||n.nodeType==1&&n.getAttribute("cm-ignore-events")=="true"||n.parentNode==e.sizer&&n!=e.mover)return!0}function Xn(e){return e.lineSpace.offsetTop}function Mi(e){return e.mover.offsetHeight-e.lineSpace.offsetHeight}function _o(e){if(e.cachedPaddingH)return e.cachedPaddingH;var t=G(e.measure,c("pre","x","CodeMirror-line-like")),n=window.getComputedStyle?window.getComputedStyle(t):t.currentStyle,r={left:parseInt(n.paddingLeft),right:parseInt(n.paddingRight)};return!isNaN(r.left)&&!isNaN(r.right)&&(e.cachedPaddingH=r),r}function Yt(e){return Oe-e.display.nativeBarWidth}function wr(e){return e.display.scroller.clientWidth-Yt(e)-e.display.barWidth}function Fi(e){return e.display.scroller.clientHeight-Yt(e)-e.display.barHeight}function Ms(e,t,n){var r=e.options.lineWrapping,i=r&&wr(e);if(!t.measure.heights||r&&t.measure.width!=i){var o=t.measure.heights=[];if(r){t.measure.width=i;for(var l=t.text.firstChild.getClientRects(),a=0;a<l.length-1;a++){var s=l[a],u=l[a+1];Math.abs(s.bottom-u.bottom)>2&&o.push((s.bottom+u.top)/2-n.top)}}o.push(n.bottom-n.top)}}function qo(e,t,n){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var r=0;r<e.rest.length;r++)if(e.rest[r]==t)return{map:e.measure.maps[r],cache:e.measure.caches[r]};for(var i=0;i<e.rest.length;i++)if(f(e.rest[i])>n)return{map:e.measure.maps[i],cache:e.measure.caches[i],before:!0}}}function Fs(e,t){t=qt(t);var n=f(t),r=e.display.externalMeasured=new Io(e.doc,t,n);r.lineN=n;var i=r.built=Oo(e,r);return r.text=i.pre,G(e.display.lineMeasure,i.pre),r}function jo(e,t,n,r){return Qt(e,qr(e,t),n,r)}function Ai(e,t){if(t>=e.display.viewFrom&&t<e.display.viewTo)return e.display.view[Tr(e,t)];var n=e.display.externalMeasured;if(n&&t>=n.lineN&&t<n.lineN+n.size)return n}function qr(e,t){var n=f(t),r=Ai(e,n);r&&!r.text?r=null:r&&r.changes&&(zo(e,r,n,Ii(e)),e.curOp.forceUpdate=!0),r||(r=Fs(e,t));var i=qo(r,t,n);return{line:t,view:r,rect:null,map:i.map,cache:i.cache,before:i.before,hasHeights:!1}}function Qt(e,t,n,r,i){t.before&&(n=-1);var o=n+(r||""),l;return t.cache.hasOwnProperty(o)?l=t.cache[o]:(t.rect||(t.rect=t.view.text.getBoundingClientRect()),t.hasHeights||(Ms(e,t.view,t.rect),t.hasHeights=!0),l=Ns(e,t,n,r),l.bogus||(t.cache[o]=l)),{left:l.left,right:l.right,top:i?l.rtop:l.top,bottom:i?l.rbottom:l.bottom}}var Ko={left:0,right:0,top:0,bottom:0};function Uo(e,t,n){for(var r,i,o,l,a,s,u=0;u<e.length;u+=3)if(a=e[u],s=e[u+1],t<a?(i=0,o=1,l="left"):t<s?(i=t-a,o=i+1):(u==e.length-3||t==s&&e[u+3]>t)&&(o=s-a,i=o-1,t>=s&&(l="right")),i!=null){if(r=e[u+2],a==s&&n==(r.insertLeft?"left":"right")&&(l=n),n=="left"&&i==0)for(;u&&e[u-2]==e[u-3]&&e[u-1].insertLeft;)r=e[(u-=3)+2],l="left";if(n=="right"&&i==s-a)for(;u<e.length-3&&e[u+3]==e[u+4]&&!e[u+5].insertLeft;)r=e[(u+=3)+2],l="right";break}return{node:r,start:i,end:o,collapse:l,coverStart:a,coverEnd:s}}function As(e,t){var n=Ko;if(t=="left")for(var r=0;r<e.length&&(n=e[r]).left==n.right;r++);else for(var i=e.length-1;i>=0&&(n=e[i]).left==n.right;i--);return n}function Ns(e,t,n,r){var i=Uo(t.map,n,r),o=i.node,l=i.start,a=i.end,s=i.collapse,u;if(o.nodeType==3){for(var h=0;h<4;h++){for(;l&&Ne(t.line.text.charAt(i.coverStart+l));)--l;for(;i.coverStart+a<i.coverEnd&&Ne(t.line.text.charAt(i.coverStart+a));)++a;if(k&&I<9&&l==0&&a==i.coverEnd-i.coverStart?u=o.parentNode.getBoundingClientRect():u=As(C(o,l,a).getClientRects(),r),u.left||u.right||l==0)break;a=l,l=l-1,s="right"}k&&I<11&&(u=Es(e.display.measure,u))}else{l>0&&(s=r="right");var x;e.options.lineWrapping&&(x=o.getClientRects()).length>1?u=x[r=="right"?x.length-1:0]:u=o.getBoundingClientRect()}if(k&&I<9&&!l&&(!u||!u.left&&!u.right)){var D=o.parentNode.getClientRects()[0];D?u={left:D.left,right:D.left+Kr(e.display),top:D.top,bottom:D.bottom}:u=Ko}for(var L=u.top-t.rect.top,H=u.bottom-t.rect.top,Z=(L+H)/2,ie=t.view.measure.heights,ae=0;ae<ie.length-1&&!(Z<ie[ae]);ae++);var he=ae?ie[ae-1]:0,se=ie[ae],ge={left:(s=="right"?u.right:u.left)-t.rect.left,right:(s=="left"?u.left:u.right)-t.rect.left,top:he,bottom:se};return!u.left&&!u.right&&(ge.bogus=!0),e.options.singleCursorHeightPerLine||(ge.rtop=L,ge.rbottom=H),ge}function Es(e,t){if(!window.screen||screen.logicalXDPI==null||screen.logicalXDPI==screen.deviceXDPI||!yi(e))return t;var n=screen.logicalXDPI/screen.deviceXDPI,r=screen.logicalYDPI/screen.deviceYDPI;return{left:t.left*n,right:t.right*n,top:t.top*r,bottom:t.bottom*r}}function Go(e){if(e.measure&&(e.measure.cache={},e.measure.heights=null,e.rest))for(var t=0;t<e.rest.length;t++)e.measure.caches[t]={}}function Xo(e){e.display.externalMeasure=null,F(e.display.lineMeasure);for(var t=0;t<e.display.view.length;t++)Go(e.display.view[t])}function gn(e){Xo(e),e.display.cachedCharWidth=e.display.cachedTextHeight=e.display.cachedPaddingH=null,e.options.lineWrapping||(e.display.maxLineChanged=!0),e.display.lineNumChars=null}function Yo(e){return S&&M?-(e.body.getBoundingClientRect().left-parseInt(getComputedStyle(e.body).marginLeft)):e.defaultView.pageXOffset||(e.documentElement||e.body).scrollLeft}function Qo(e){return S&&M?-(e.body.getBoundingClientRect().top-parseInt(getComputedStyle(e.body).marginTop)):e.defaultView.pageYOffset||(e.documentElement||e.body).scrollTop}function Ni(e){var t=qt(e),n=t.widgets,r=0;if(n)for(var i=0;i<n.length;++i)n[i].above&&(r+=pn(n[i]));return r}function Yn(e,t,n,r,i){if(!i){var o=Ni(t);n.top+=o,n.bottom+=o}if(r=="line")return n;r||(r="local");var l=er(t);if(r=="local"?l+=Xn(e.display):l-=e.display.viewOffset,r=="page"||r=="window"){var a=e.display.lineSpace.getBoundingClientRect();l+=a.top+(r=="window"?0:Qo(d(e)));var s=a.left+(r=="window"?0:Yo(d(e)));n.left+=s,n.right+=s}return n.top+=l,n.bottom+=l,n}function Jo(e,t,n){if(n=="div")return t;var r=t.left,i=t.top;if(n=="page")r-=Yo(d(e)),i-=Qo(d(e));else if(n=="local"||!n){var o=e.display.sizer.getBoundingClientRect();r+=o.left,i+=o.top}var l=e.display.lineSpace.getBoundingClientRect();return{left:r-l.left,top:i-l.top}}function Qn(e,t,n,r,i){return r||(r=ye(e.doc,t.line)),Yn(e,r,jo(e,r,t.ch,i),n)}function jt(e,t,n,r,i,o){r=r||ye(e.doc,t.line),i||(i=qr(e,r));function l(H,Z){var ie=Qt(e,i,H,Z?"right":"left",o);return Z?ie.left=ie.right:ie.right=ie.left,Yn(e,r,ie,n)}var a=Re(r,e.doc.direction),s=t.ch,u=t.sticky;if(s>=r.text.length?(s=r.text.length,u="before"):s<=0&&(s=0,u="after"),!a)return l(u=="before"?s-1:s,u=="before");function h(H,Z,ie){var ae=a[Z],he=ae.level==1;return l(ie?H-1:H,he!=ie)}var x=lr(a,s,u),D=br,L=h(s,x,u=="before");return D!=null&&(L.other=h(s,D,u!="before")),L}function Zo(e,t){var n=0;t=Ae(e.doc,t),e.options.lineWrapping||(n=Kr(e.display)*t.ch);var r=ye(e.doc,t.line),i=er(r)+Xn(e.display);return{left:n,right:n,top:i,bottom:i+r.height}}function Ei(e,t,n,r,i){var o=B(e,t,n);return o.xRel=i,r&&(o.outside=r),o}function Oi(e,t,n){var r=e.doc;if(n+=e.display.viewOffset,n<0)return Ei(r.first,0,null,-1,-1);var i=m(r,n),o=r.first+r.size-1;if(i>o)return Ei(r.first+r.size-1,ye(r,o).text.length,null,1,1);t<0&&(t=0);for(var l=ye(r,i);;){var a=Os(e,l,i,t,n),s=as(l,a.ch+(a.xRel>0||a.outside>0?1:0));if(!s)return a;var u=s.find(1);if(u.line==i)return u;l=ye(r,i=u.line)}}function $o(e,t,n,r){r-=Ni(t);var i=t.text.length,o=Pt(function(l){return Qt(e,n,l-1).bottom<=r},i,0);return i=Pt(function(l){return Qt(e,n,l).top>r},o,i),{begin:o,end:i}}function Vo(e,t,n,r){n||(n=qr(e,t));var i=Yn(e,t,Qt(e,n,r),"line").top;return $o(e,t,n,i)}function Pi(e,t,n,r){return e.bottom<=n?!1:e.top>n?!0:(r?e.left:e.right)>t}function Os(e,t,n,r,i){i-=er(t);var o=qr(e,t),l=Ni(t),a=0,s=t.text.length,u=!0,h=Re(t,e.doc.direction);if(h){var x=(e.options.lineWrapping?Is:Ps)(e,t,n,o,h,r,i);u=x.level!=1,a=u?x.from:x.to-1,s=u?x.to:x.from-1}var D=null,L=null,H=Pt(function(Le){var ke=Qt(e,o,Le);return ke.top+=l,ke.bottom+=l,Pi(ke,r,i,!1)?(ke.top<=i&&ke.left<=r&&(D=Le,L=ke),!0):!1},a,s),Z,ie,ae=!1;if(L){var he=r-L.left<L.right-r,se=he==u;H=D+(se?0:1),ie=se?"after":"before",Z=he?L.left:L.right}else{!u&&(H==s||H==a)&&H++,ie=H==0?"after":H==t.text.length?"before":Qt(e,o,H-(u?1:0)).bottom+l<=i==u?"after":"before";var ge=jt(e,B(n,H,ie),"line",t,o);Z=ge.left,ae=i<ge.top?-1:i>=ge.bottom?1:0}return H=Mt(t.text,H,1),Ei(n,H,ie,ae,r-Z)}function Ps(e,t,n,r,i,o,l){var a=Pt(function(x){var D=i[x],L=D.level!=1;return Pi(jt(e,B(n,L?D.to:D.from,L?"before":"after"),"line",t,r),o,l,!0)},0,i.length-1),s=i[a];if(a>0){var u=s.level!=1,h=jt(e,B(n,u?s.from:s.to,u?"after":"before"),"line",t,r);Pi(h,o,l,!0)&&h.top>l&&(s=i[a-1])}return s}function Is(e,t,n,r,i,o,l){var a=$o(e,t,r,l),s=a.begin,u=a.end;/\s/.test(t.text.charAt(u-1))&&u--;for(var h=null,x=null,D=0;D<i.length;D++){var L=i[D];if(!(L.from>=u||L.to<=s)){var H=L.level!=1,Z=Qt(e,r,H?Math.min(u,L.to)-1:Math.max(s,L.from)).right,ie=Z<o?o-Z+1e9:Z-o;(!h||x>ie)&&(h=L,x=ie)}}return h||(h=i[i.length-1]),h.from<s&&(h={from:s,to:h.to,level:h.level}),h.to>u&&(h={from:h.from,to:u,level:h.level}),h}var Sr;function jr(e){if(e.cachedTextHeight!=null)return e.cachedTextHeight;if(Sr==null){Sr=c("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)Sr.appendChild(document.createTextNode("x")),Sr.appendChild(c("br"));Sr.appendChild(document.createTextNode("x"))}G(e.measure,Sr);var n=Sr.offsetHeight/50;return n>3&&(e.cachedTextHeight=n),F(e.measure),n||1}function Kr(e){if(e.cachedCharWidth!=null)return e.cachedCharWidth;var t=c("span","xxxxxxxxxx"),n=c("pre",[t],"CodeMirror-line-like");G(e.measure,n);var r=t.getBoundingClientRect(),i=(r.right-r.left)/10;return i>2&&(e.cachedCharWidth=i),i||10}function Ii(e){for(var t=e.display,n={},r={},i=t.gutters.clientLeft,o=t.gutters.firstChild,l=0;o;o=o.nextSibling,++l){var a=e.display.gutterSpecs[l].className;n[a]=o.offsetLeft+o.clientLeft+i,r[a]=o.clientWidth}return{fixedPos:zi(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:n,gutterWidth:r,wrapperWidth:t.wrapper.clientWidth}}function zi(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function el(e){var t=jr(e.display),n=e.options.lineWrapping,r=n&&Math.max(5,e.display.scroller.clientWidth/Kr(e.display)-3);return function(i){if(cr(e.doc,i))return 0;var o=0;if(i.widgets)for(var l=0;l<i.widgets.length;l++)i.widgets[l].height&&(o+=i.widgets[l].height);return n?o+(Math.ceil(i.text.length/r)||1)*t:o+t}}function Bi(e){var t=e.doc,n=el(e);t.iter(function(r){var i=n(r);i!=r.height&&Et(r,i)})}function Lr(e,t,n,r){var i=e.display;if(!n&&ln(t).getAttribute("cm-not-content")=="true")return null;var o,l,a=i.lineSpace.getBoundingClientRect();try{o=t.clientX-a.left,l=t.clientY-a.top}catch{return null}var s=Oi(e,o,l),u;if(r&&s.xRel>0&&(u=ye(e.doc,s.line).text).length==s.ch){var h=Fe(u,u.length,e.options.tabSize)-u.length;s=B(s.line,Math.max(0,Math.round((o-_o(e.display).left)/Kr(e.display))-h))}return s}function Tr(e,t){if(t>=e.display.viewTo||(t-=e.display.viewFrom,t<0))return null;for(var n=e.display.view,r=0;r<n.length;r++)if(t-=n[r].size,t<0)return r}function St(e,t,n,r){t==null&&(t=e.doc.first),n==null&&(n=e.doc.first+e.doc.size),r||(r=0);var i=e.display;if(r&&n<i.viewTo&&(i.updateLineNumbers==null||i.updateLineNumbers>t)&&(i.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=i.viewTo)Vt&&Li(e.doc,t)<i.viewTo&&hr(e);else if(n<=i.viewFrom)Vt&&No(e.doc,n+r)>i.viewFrom?hr(e):(i.viewFrom+=r,i.viewTo+=r);else if(t<=i.viewFrom&&n>=i.viewTo)hr(e);else if(t<=i.viewFrom){var o=Jn(e,n,n+r,1);o?(i.view=i.view.slice(o.index),i.viewFrom=o.lineN,i.viewTo+=r):hr(e)}else if(n>=i.viewTo){var l=Jn(e,t,t,-1);l?(i.view=i.view.slice(0,l.index),i.viewTo=l.lineN):hr(e)}else{var a=Jn(e,t,t,-1),s=Jn(e,n,n+r,1);a&&s?(i.view=i.view.slice(0,a.index).concat(Gn(e,a.lineN,s.lineN)).concat(i.view.slice(s.index)),i.viewTo+=r):hr(e)}var u=i.externalMeasured;u&&(n<u.lineN?u.lineN+=r:t<u.lineN+u.size&&(i.externalMeasured=null))}function dr(e,t,n){e.curOp.viewChanged=!0;var r=e.display,i=e.display.externalMeasured;if(i&&t>=i.lineN&&t<i.lineN+i.size&&(r.externalMeasured=null),!(t<r.viewFrom||t>=r.viewTo)){var o=r.view[Tr(e,t)];if(o.node!=null){var l=o.changes||(o.changes=[]);ve(l,n)==-1&&l.push(n)}}}function hr(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function Jn(e,t,n,r){var i=Tr(e,t),o,l=e.display.view;if(!Vt||n==e.doc.first+e.doc.size)return{index:i,lineN:n};for(var a=e.display.viewFrom,s=0;s<i;s++)a+=l[s].size;if(a!=t){if(r>0){if(i==l.length-1)return null;o=a+l[i].size-t,i++}else o=a-t;t+=o,n+=o}for(;Li(e.doc,n)!=n;){if(i==(r<0?0:l.length-1))return null;n+=r*l[i-(r<0?1:0)].size,i+=r}return{index:i,lineN:n}}function zs(e,t,n){var r=e.display,i=r.view;i.length==0||t>=r.viewTo||n<=r.viewFrom?(r.view=Gn(e,t,n),r.viewFrom=t):(r.viewFrom>t?r.view=Gn(e,t,r.viewFrom).concat(r.view):r.viewFrom<t&&(r.view=r.view.slice(Tr(e,t))),r.viewFrom=t,r.viewTo<n?r.view=r.view.concat(Gn(e,r.viewTo,n)):r.viewTo>n&&(r.view=r.view.slice(0,Tr(e,n)))),r.viewTo=n}function tl(e){for(var t=e.display.view,n=0,r=0;r<t.length;r++){var i=t[r];!i.hidden&&(!i.node||i.changes)&&++n}return n}function vn(e){e.display.input.showSelection(e.display.input.prepareSelection())}function rl(e,t){t===void 0&&(t=!0);var n=e.doc,r={},i=r.cursors=document.createDocumentFragment(),o=r.selection=document.createDocumentFragment(),l=e.options.$customCursor;l&&(t=!0);for(var a=0;a<n.sel.ranges.length;a++)if(!(!t&&a==n.sel.primIndex)){var s=n.sel.ranges[a];if(!(s.from().line>=e.display.viewTo||s.to().line<e.display.viewFrom)){var u=s.empty();if(l){var h=l(e,s);h&&Ri(e,h,i)}else(u||e.options.showCursorWhenSelecting)&&Ri(e,s.head,i);u||Bs(e,s,o)}}return r}function Ri(e,t,n){var r=jt(e,t,"div",null,null,!e.options.singleCursorHeightPerLine),i=n.appendChild(c("div"," ","CodeMirror-cursor"));if(i.style.left=r.left+"px",i.style.top=r.top+"px",i.style.height=Math.max(0,r.bottom-r.top)*e.options.cursorHeight+"px",/\bcm-fat-cursor\b/.test(e.getWrapperElement().className)){var o=Qn(e,t,"div",null,null),l=o.right-o.left;i.style.width=(l>0?l:e.defaultCharWidth())+"px"}if(r.other){var a=n.appendChild(c("div"," ","CodeMirror-cursor CodeMirror-secondarycursor"));a.style.display="",a.style.left=r.other.left+"px",a.style.top=r.other.top+"px",a.style.height=(r.other.bottom-r.other.top)*.85+"px"}}function Zn(e,t){return e.top-t.top||e.left-t.left}function Bs(e,t,n){var r=e.display,i=e.doc,o=document.createDocumentFragment(),l=_o(e.display),a=l.left,s=Math.max(r.sizerWidth,wr(e)-r.sizer.offsetLeft)-l.right,u=i.direction=="ltr";function h(se,ge,Le,ke){ge<0&&(ge=0),ge=Math.round(ge),ke=Math.round(ke),o.appendChild(c("div",null,"CodeMirror-selected","position: absolute; left: "+se+`px;
                             top: `+ge+"px; width: "+(Le??s-se)+`px;
                             height: `+(ke-ge)+"px"))}function x(se,ge,Le){var ke=ye(i,se),Ee=ke.text.length,Ke,st;function Xe(tt,Ct){return Qn(e,B(se,tt),"div",ke,Ct)}function Nt(tt,Ct,ft){var nt=Vo(e,ke,null,tt),rt=Ct=="ltr"==(ft=="after")?"left":"right",Ze=ft=="after"?nt.begin:nt.end-(/\s/.test(ke.text.charAt(nt.end-1))?2:1);return Xe(Ze,rt)[rt]}var Tt=Re(ke,i.direction);return or(Tt,ge||0,Le??Ee,function(tt,Ct,ft,nt){var rt=ft=="ltr",Ze=Xe(tt,rt?"left":"right"),Dt=Xe(Ct-1,rt?"right":"left"),nn=ge==null&&tt==0,yr=Le==null&&Ct==Ee,vt=nt==0,Jt=!Tt||nt==Tt.length-1;if(Dt.top-Ze.top<=3){var ut=(u?nn:yr)&&vt,co=(u?yr:nn)&&Jt,ir=ut?a:(rt?Ze:Dt).left,Ar=co?s:(rt?Dt:Ze).right;h(ir,Ze.top,Ar-ir,Ze.bottom)}else{var Nr,bt,on,ho;rt?(Nr=u&&nn&&vt?a:Ze.left,bt=u?s:Nt(tt,ft,"before"),on=u?a:Nt(Ct,ft,"after"),ho=u&&yr&&Jt?s:Dt.right):(Nr=u?Nt(tt,ft,"before"):a,bt=!u&&nn&&vt?s:Ze.right,on=!u&&yr&&Jt?a:Dt.left,ho=u?Nt(Ct,ft,"after"):s),h(Nr,Ze.top,bt-Nr,Ze.bottom),Ze.bottom<Dt.top&&h(a,Ze.bottom,null,Dt.top),h(on,Dt.top,ho-on,Dt.bottom)}(!Ke||Zn(Ze,Ke)<0)&&(Ke=Ze),Zn(Dt,Ke)<0&&(Ke=Dt),(!st||Zn(Ze,st)<0)&&(st=Ze),Zn(Dt,st)<0&&(st=Dt)}),{start:Ke,end:st}}var D=t.from(),L=t.to();if(D.line==L.line)x(D.line,D.ch,L.ch);else{var H=ye(i,D.line),Z=ye(i,L.line),ie=qt(H)==qt(Z),ae=x(D.line,D.ch,ie?H.text.length+1:null).end,he=x(L.line,ie?0:null,L.ch).start;ie&&(ae.top<he.top-2?(h(ae.right,ae.top,null,ae.bottom),h(a,he.top,he.left,he.bottom)):h(ae.right,ae.top,he.left-ae.right,ae.bottom)),ae.bottom<he.top&&h(a,ae.bottom,null,he.top)}n.appendChild(o)}function Wi(e){if(e.state.focused){var t=e.display;clearInterval(t.blinker);var n=!0;t.cursorDiv.style.visibility="",e.options.cursorBlinkRate>0?t.blinker=setInterval(function(){e.hasFocus()||Ur(e),t.cursorDiv.style.visibility=(n=!n)?"":"hidden"},e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function nl(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||_i(e))}function Hi(e){e.state.delayingBlurEvent=!0,setTimeout(function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&Ur(e))},100)}function _i(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),e.options.readOnly!="nocursor"&&(e.state.focused||(Ye(e,"focus",e,t),e.state.focused=!0,j(e.display.wrapper,"CodeMirror-focused"),!e.curOp&&e.display.selForContextMenu!=e.doc.sel&&(e.display.input.reset(),Y&&setTimeout(function(){return e.display.input.reset(!0)},20)),e.display.input.receivedFocus()),Wi(e))}function Ur(e,t){e.state.delayingBlurEvent||(e.state.focused&&(Ye(e,"blur",e,t),e.state.focused=!1,V(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout(function(){e.state.focused||(e.display.shift=!1)},150))}function $n(e){for(var t=e.display,n=t.lineDiv.offsetTop,r=Math.max(0,t.scroller.getBoundingClientRect().top),i=t.lineDiv.getBoundingClientRect().top,o=0,l=0;l<t.view.length;l++){var a=t.view[l],s=e.options.lineWrapping,u=void 0,h=0;if(!a.hidden){if(i+=a.line.height,k&&I<8){var x=a.node.offsetTop+a.node.offsetHeight;u=x-n,n=x}else{var D=a.node.getBoundingClientRect();u=D.bottom-D.top,!s&&a.text.firstChild&&(h=a.text.firstChild.getBoundingClientRect().right-D.left-1)}var L=a.line.height-u;if((L>.005||L<-.005)&&(i<r&&(o-=L),Et(a.line,u),il(a.line),a.rest))for(var H=0;H<a.rest.length;H++)il(a.rest[H]);if(h>e.display.sizerWidth){var Z=Math.ceil(h/Kr(e.display));Z>e.display.maxLineLength&&(e.display.maxLineLength=Z,e.display.maxLine=a.line,e.display.maxLineChanged=!0)}}}Math.abs(o)>2&&(t.scroller.scrollTop+=o)}function il(e){if(e.widgets)for(var t=0;t<e.widgets.length;++t){var n=e.widgets[t],r=n.node.parentNode;r&&(n.height=r.offsetHeight)}}function Vn(e,t,n){var r=n&&n.top!=null?Math.max(0,n.top):e.scroller.scrollTop;r=Math.floor(r-Xn(e));var i=n&&n.bottom!=null?n.bottom:r+e.wrapper.clientHeight,o=m(t,r),l=m(t,i);if(n&&n.ensure){var a=n.ensure.from.line,s=n.ensure.to.line;a<o?(o=a,l=m(t,er(ye(t,a))+e.wrapper.clientHeight)):Math.min(s,t.lastLine())>=l&&(o=m(t,er(ye(t,s))-e.wrapper.clientHeight),l=s)}return{from:o,to:Math.max(l,o+1)}}function Rs(e,t){if(!Qe(e,"scrollCursorIntoView")){var n=e.display,r=n.sizer.getBoundingClientRect(),i=null,o=n.wrapper.ownerDocument;if(t.top+r.top<0?i=!0:t.bottom+r.top>(o.defaultView.innerHeight||o.documentElement.clientHeight)&&(i=!1),i!=null&&!O){var l=c("div","​",null,`position: absolute;
                         top: `+(t.top-n.viewOffset-Xn(e.display))+`px;
                         height: `+(t.bottom-t.top+Yt(e)+n.barHeight)+`px;
                         left: `+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(l),l.scrollIntoView(i),e.display.lineSpace.removeChild(l)}}}function Ws(e,t,n,r){r==null&&(r=0);var i;!e.options.lineWrapping&&t==n&&(n=t.sticky=="before"?B(t.line,t.ch+1,"before"):t,t=t.ch?B(t.line,t.sticky=="before"?t.ch-1:t.ch,"after"):t);for(var o=0;o<5;o++){var l=!1,a=jt(e,t),s=!n||n==t?a:jt(e,n);i={left:Math.min(a.left,s.left),top:Math.min(a.top,s.top)-r,right:Math.max(a.left,s.left),bottom:Math.max(a.bottom,s.bottom)+r};var u=qi(e,i),h=e.doc.scrollTop,x=e.doc.scrollLeft;if(u.scrollTop!=null&&(xn(e,u.scrollTop),Math.abs(e.doc.scrollTop-h)>1&&(l=!0)),u.scrollLeft!=null&&(Cr(e,u.scrollLeft),Math.abs(e.doc.scrollLeft-x)>1&&(l=!0)),!l)break}return i}function Hs(e,t){var n=qi(e,t);n.scrollTop!=null&&xn(e,n.scrollTop),n.scrollLeft!=null&&Cr(e,n.scrollLeft)}function qi(e,t){var n=e.display,r=jr(e.display);t.top<0&&(t.top=0);var i=e.curOp&&e.curOp.scrollTop!=null?e.curOp.scrollTop:n.scroller.scrollTop,o=Fi(e),l={};t.bottom-t.top>o&&(t.bottom=t.top+o);var a=e.doc.height+Mi(n),s=t.top<r,u=t.bottom>a-r;if(t.top<i)l.scrollTop=s?0:t.top;else if(t.bottom>i+o){var h=Math.min(t.top,(u?a:t.bottom)-o);h!=i&&(l.scrollTop=h)}var x=e.options.fixedGutter?0:n.gutters.offsetWidth,D=e.curOp&&e.curOp.scrollLeft!=null?e.curOp.scrollLeft:n.scroller.scrollLeft-x,L=wr(e)-n.gutters.offsetWidth,H=t.right-t.left>L;return H&&(t.right=t.left+L),t.left<10?l.scrollLeft=0:t.left<D?l.scrollLeft=Math.max(0,t.left+x-(H?0:10)):t.right>L+D-3&&(l.scrollLeft=t.right+(H?0:10)-L),l}function ji(e,t){t!=null&&(ei(e),e.curOp.scrollTop=(e.curOp.scrollTop==null?e.doc.scrollTop:e.curOp.scrollTop)+t)}function Gr(e){ei(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function mn(e,t,n){(t!=null||n!=null)&&ei(e),t!=null&&(e.curOp.scrollLeft=t),n!=null&&(e.curOp.scrollTop=n)}function _s(e,t){ei(e),e.curOp.scrollToPos=t}function ei(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var n=Zo(e,t.from),r=Zo(e,t.to);ol(e,n,r,t.margin)}}function ol(e,t,n,r){var i=qi(e,{left:Math.min(t.left,n.left),top:Math.min(t.top,n.top)-r,right:Math.max(t.right,n.right),bottom:Math.max(t.bottom,n.bottom)+r});mn(e,i.scrollLeft,i.scrollTop)}function xn(e,t){Math.abs(e.doc.scrollTop-t)<2||(_||Ui(e,{top:t}),ll(e,t,!0),_&&Ui(e),kn(e,100))}function ll(e,t,n){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),!(e.display.scroller.scrollTop==t&&!n)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function Cr(e,t,n,r){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),!((n?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!r)&&(e.doc.scrollLeft=t,cl(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function yn(e){var t=e.display,n=t.gutters.offsetWidth,r=Math.round(e.doc.height+Mi(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?n:0,docHeight:r,scrollHeight:r+Yt(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:n}}var Dr=function(e,t,n){this.cm=n;var r=this.vert=c("div",[c("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),i=this.horiz=c("div",[c("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");r.tabIndex=i.tabIndex=-1,e(r),e(i),Se(r,"scroll",function(){r.clientHeight&&t(r.scrollTop,"vertical")}),Se(i,"scroll",function(){i.clientWidth&&t(i.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,k&&I<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};Dr.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,n=e.scrollHeight>e.clientHeight+1,r=e.nativeBarWidth;if(n){this.vert.style.display="block",this.vert.style.bottom=t?r+"px":"0";var i=e.viewHeight-(t?r:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+i)+"px"}else this.vert.scrollTop=0,this.vert.style.display="",this.vert.firstChild.style.height="0";if(t){this.horiz.style.display="block",this.horiz.style.right=n?r+"px":"0",this.horiz.style.left=e.barLeft+"px";var o=e.viewWidth-e.barLeft-(n?r:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+o)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(r==0&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:n?r:0,bottom:t?r:0}},Dr.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},Dr.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},Dr.prototype.zeroWidthHack=function(){var e=z&&!ue?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.visibility=this.vert.style.visibility="hidden",this.disableHoriz=new Ce,this.disableVert=new Ce},Dr.prototype.enableZeroWidthBar=function(e,t,n){e.style.visibility="";function r(){var i=e.getBoundingClientRect(),o=n=="vert"?document.elementFromPoint(i.right-1,(i.top+i.bottom)/2):document.elementFromPoint((i.right+i.left)/2,i.bottom-1);o!=e?e.style.visibility="hidden":t.set(1e3,r)}t.set(1e3,r)},Dr.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var bn=function(){};bn.prototype.update=function(){return{bottom:0,right:0}},bn.prototype.setScrollLeft=function(){},bn.prototype.setScrollTop=function(){},bn.prototype.clear=function(){};function Xr(e,t){t||(t=yn(e));var n=e.display.barWidth,r=e.display.barHeight;al(e,t);for(var i=0;i<4&&n!=e.display.barWidth||r!=e.display.barHeight;i++)n!=e.display.barWidth&&e.options.lineWrapping&&$n(e),al(e,yn(e)),n=e.display.barWidth,r=e.display.barHeight}function al(e,t){var n=e.display,r=n.scrollbars.update(t);n.sizer.style.paddingRight=(n.barWidth=r.right)+"px",n.sizer.style.paddingBottom=(n.barHeight=r.bottom)+"px",n.heightForcer.style.borderBottom=r.bottom+"px solid transparent",r.right&&r.bottom?(n.scrollbarFiller.style.display="block",n.scrollbarFiller.style.height=r.bottom+"px",n.scrollbarFiller.style.width=r.right+"px"):n.scrollbarFiller.style.display="",r.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(n.gutterFiller.style.display="block",n.gutterFiller.style.height=r.bottom+"px",n.gutterFiller.style.width=t.gutterWidth+"px"):n.gutterFiller.style.display=""}var sl={native:Dr,null:bn};function ul(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&V(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new sl[e.options.scrollbarStyle](function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),Se(t,"mousedown",function(){e.state.focused&&setTimeout(function(){return e.display.input.focus()},0)}),t.setAttribute("cm-not-content","true")},function(t,n){n=="horizontal"?Cr(e,t):xn(e,t)},e),e.display.scrollbars.addClass&&j(e.display.wrapper,e.display.scrollbars.addClass)}var qs=0;function Mr(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++qs,markArrays:null},ys(e.curOp)}function Fr(e){var t=e.curOp;t&&ks(t,function(n){for(var r=0;r<n.ops.length;r++)n.ops[r].cm.curOp=null;js(n)})}function js(e){for(var t=e.ops,n=0;n<t.length;n++)Ks(t[n]);for(var r=0;r<t.length;r++)Us(t[r]);for(var i=0;i<t.length;i++)Gs(t[i]);for(var o=0;o<t.length;o++)Xs(t[o]);for(var l=0;l<t.length;l++)Ys(t[l])}function Ks(e){var t=e.cm,n=t.display;Js(t),e.updateMaxLine&&Ci(t),e.mustUpdate=e.viewChanged||e.forceUpdate||e.scrollTop!=null||e.scrollToPos&&(e.scrollToPos.from.line<n.viewFrom||e.scrollToPos.to.line>=n.viewTo)||n.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new ti(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function Us(e){e.updatedDisplay=e.mustUpdate&&Ki(e.cm,e.update)}function Gs(e){var t=e.cm,n=t.display;e.updatedDisplay&&$n(t),e.barMeasure=yn(t),n.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=jo(t,n.maxLine,n.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(n.scroller.clientWidth,n.sizer.offsetLeft+e.adjustWidthTo+Yt(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,n.sizer.offsetLeft+e.adjustWidthTo-wr(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=n.input.prepareSelection())}function Xs(e){var t=e.cm;e.adjustWidthTo!=null&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft<t.doc.scrollLeft&&Cr(t,Math.min(t.display.scroller.scrollLeft,e.maxScrollLeft),!0),t.display.maxLineChanged=!1);var n=e.focus&&e.focus==y(fe(t));e.preparedSelection&&t.display.input.showSelection(e.preparedSelection,n),(e.updatedDisplay||e.startHeight!=t.doc.height)&&Xr(t,e.barMeasure),e.updatedDisplay&&Xi(t,e.barMeasure),e.selectionChanged&&Wi(t),t.state.focused&&e.updateInput&&t.display.input.reset(e.typing),n&&nl(e.cm)}function Ys(e){var t=e.cm,n=t.display,r=t.doc;if(e.updatedDisplay&&fl(t,e.update),n.wheelStartX!=null&&(e.scrollTop!=null||e.scrollLeft!=null||e.scrollToPos)&&(n.wheelStartX=n.wheelStartY=null),e.scrollTop!=null&&ll(t,e.scrollTop,e.forceScroll),e.scrollLeft!=null&&Cr(t,e.scrollLeft,!0,!0),e.scrollToPos){var i=Ws(t,Ae(r,e.scrollToPos.from),Ae(r,e.scrollToPos.to),e.scrollToPos.margin);Rs(t,i)}var o=e.maybeHiddenMarkers,l=e.maybeUnhiddenMarkers;if(o)for(var a=0;a<o.length;++a)o[a].lines.length||Ye(o[a],"hide");if(l)for(var s=0;s<l.length;++s)l[s].lines.length&&Ye(l[s],"unhide");n.wrapper.offsetHeight&&(r.scrollTop=t.display.scroller.scrollTop),e.changeObjs&&Ye(t,"changes",t,e.changeObjs),e.update&&e.update.finish()}function At(e,t){if(e.curOp)return t();Mr(e);try{return t()}finally{Fr(e)}}function lt(e,t){return function(){if(e.curOp)return t.apply(e,arguments);Mr(e);try{return t.apply(e,arguments)}finally{Fr(e)}}}function yt(e){return function(){if(this.curOp)return e.apply(this,arguments);Mr(this);try{return e.apply(this,arguments)}finally{Fr(this)}}}function at(e){return function(){var t=this.cm;if(!t||t.curOp)return e.apply(this,arguments);Mr(t);try{return e.apply(this,arguments)}finally{Fr(t)}}}function kn(e,t){e.doc.highlightFrontier<e.display.viewTo&&e.state.highlight.set(t,xe(Qs,e))}function Qs(e){var t=e.doc;if(!(t.highlightFrontier>=e.display.viewTo)){var n=+new Date+e.options.workTime,r=fn(e,t.highlightFrontier),i=[];t.iter(r.line,Math.min(t.first+t.size,e.display.viewTo+500),function(o){if(r.line>=e.display.viewFrom){var l=o.styles,a=o.text.length>e.options.maxHighlightLength?Gt(t.mode,r.state):null,s=mo(e,o,r,!0);a&&(r.state=a),o.styles=s.styles;var u=o.styleClasses,h=s.classes;h?o.styleClasses=h:u&&(o.styleClasses=null);for(var x=!l||l.length!=o.styles.length||u!=h&&(!u||!h||u.bgClass!=h.bgClass||u.textClass!=h.textClass),D=0;!x&&D<l.length;++D)x=l[D]!=o.styles[D];x&&i.push(r.line),o.stateAfter=r.save(),r.nextLine()}else o.text.length<=e.options.maxHighlightLength&&bi(e,o.text,r),o.stateAfter=r.line%5==0?r.save():null,r.nextLine();if(+new Date>n)return kn(e,e.options.workDelay),!0}),t.highlightFrontier=r.line,t.modeFrontier=Math.max(t.modeFrontier,r.line),i.length&&At(e,function(){for(var o=0;o<i.length;o++)dr(e,i[o],"text")})}}var ti=function(e,t,n){var r=e.display;this.viewport=t,this.visible=Vn(r,e.doc,t),this.editorIsHidden=!r.wrapper.offsetWidth,this.wrapperHeight=r.wrapper.clientHeight,this.wrapperWidth=r.wrapper.clientWidth,this.oldDisplayWidth=wr(e),this.force=n,this.dims=Ii(e),this.events=[]};ti.prototype.signal=function(e,t){Ft(e,t)&&this.events.push(arguments)},ti.prototype.finish=function(){for(var e=0;e<this.events.length;e++)Ye.apply(null,this.events[e])};function Js(e){var t=e.display;!t.scrollbarsClipped&&t.scroller.offsetWidth&&(t.nativeBarWidth=t.scroller.offsetWidth-t.scroller.clientWidth,t.heightForcer.style.height=Yt(e)+"px",t.sizer.style.marginBottom=-t.nativeBarWidth+"px",t.sizer.style.borderRightWidth=Yt(e)+"px",t.scrollbarsClipped=!0)}function Zs(e){if(e.hasFocus())return null;var t=y(fe(e));if(!t||!g(e.display.lineDiv,t))return null;var n={activeElt:t};if(window.getSelection){var r=le(e).getSelection();r.anchorNode&&r.extend&&g(e.display.lineDiv,r.anchorNode)&&(n.anchorNode=r.anchorNode,n.anchorOffset=r.anchorOffset,n.focusNode=r.focusNode,n.focusOffset=r.focusOffset)}return n}function $s(e){if(!(!e||!e.activeElt||e.activeElt==y(Te(e.activeElt)))&&(e.activeElt.focus(),!/^(INPUT|TEXTAREA)$/.test(e.activeElt.nodeName)&&e.anchorNode&&g(document.body,e.anchorNode)&&g(document.body,e.focusNode))){var t=e.activeElt.ownerDocument,n=t.defaultView.getSelection(),r=t.createRange();r.setEnd(e.anchorNode,e.anchorOffset),r.collapse(!1),n.removeAllRanges(),n.addRange(r),n.extend(e.focusNode,e.focusOffset)}}function Ki(e,t){var n=e.display,r=e.doc;if(t.editorIsHidden)return hr(e),!1;if(!t.force&&t.visible.from>=n.viewFrom&&t.visible.to<=n.viewTo&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo)&&n.renderedView==n.view&&tl(e)==0)return!1;dl(e)&&(hr(e),t.dims=Ii(e));var i=r.first+r.size,o=Math.max(t.visible.from-e.options.viewportMargin,r.first),l=Math.min(i,t.visible.to+e.options.viewportMargin);n.viewFrom<o&&o-n.viewFrom<20&&(o=Math.max(r.first,n.viewFrom)),n.viewTo>l&&n.viewTo-l<20&&(l=Math.min(i,n.viewTo)),Vt&&(o=Li(e.doc,o),l=No(e.doc,l));var a=o!=n.viewFrom||l!=n.viewTo||n.lastWrapHeight!=t.wrapperHeight||n.lastWrapWidth!=t.wrapperWidth;zs(e,o,l),n.viewOffset=er(ye(e.doc,n.viewFrom)),e.display.mover.style.top=n.viewOffset+"px";var s=tl(e);if(!a&&s==0&&!t.force&&n.renderedView==n.view&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo))return!1;var u=Zs(e);return s>4&&(n.lineDiv.style.display="none"),Vs(e,n.updateLineNumbers,t.dims),s>4&&(n.lineDiv.style.display=""),n.renderedView=n.view,$s(u),F(n.cursorDiv),F(n.selectionDiv),n.gutters.style.height=n.sizer.style.minHeight=0,a&&(n.lastWrapHeight=t.wrapperHeight,n.lastWrapWidth=t.wrapperWidth,kn(e,400)),n.updateLineNumbers=null,!0}function fl(e,t){for(var n=t.viewport,r=!0;;r=!1){if(!r||!e.options.lineWrapping||t.oldDisplayWidth==wr(e)){if(n&&n.top!=null&&(n={top:Math.min(e.doc.height+Mi(e.display)-Fi(e),n.top)}),t.visible=Vn(e.display,e.doc,n),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break}else r&&(t.visible=Vn(e.display,e.doc,n));if(!Ki(e,t))break;$n(e);var i=yn(e);vn(e),Xr(e,i),Xi(e,i),t.force=!1}t.signal(e,"update",e),(e.display.viewFrom!=e.display.reportedViewFrom||e.display.viewTo!=e.display.reportedViewTo)&&(t.signal(e,"viewportChange",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function Ui(e,t){var n=new ti(e,t);if(Ki(e,n)){$n(e),fl(e,n);var r=yn(e);vn(e),Xr(e,r),Xi(e,r),n.finish()}}function Vs(e,t,n){var r=e.display,i=e.options.lineNumbers,o=r.lineDiv,l=o.firstChild;function a(H){var Z=H.nextSibling;return Y&&z&&e.display.currentWheelTarget==H?H.style.display="none":H.parentNode.removeChild(H),Z}for(var s=r.view,u=r.viewFrom,h=0;h<s.length;h++){var x=s[h];if(!x.hidden)if(!x.node||x.node.parentNode!=o){var D=Cs(e,x,u,n);o.insertBefore(D,l)}else{for(;l!=x.node;)l=a(l);var L=i&&t!=null&&t<=u&&x.lineNumber;x.changes&&(ve(x.changes,"gutter")>-1&&(L=!1),zo(e,x,u,n)),L&&(F(x.lineNumber),x.lineNumber.appendChild(document.createTextNode(re(e.options,u)))),l=x.node.nextSibling}u+=x.size}for(;l;)l=a(l)}function Gi(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",ot(e,"gutterChanged",e)}function Xi(e,t){e.display.sizer.style.minHeight=t.docHeight+"px",e.display.heightForcer.style.top=t.docHeight+"px",e.display.gutters.style.height=t.docHeight+e.display.barHeight+Yt(e)+"px"}function cl(e){var t=e.display,n=t.view;if(!(!t.alignWidgets&&(!t.gutters.firstChild||!e.options.fixedGutter))){for(var r=zi(t)-t.scroller.scrollLeft+e.doc.scrollLeft,i=t.gutters.offsetWidth,o=r+"px",l=0;l<n.length;l++)if(!n[l].hidden){e.options.fixedGutter&&(n[l].gutter&&(n[l].gutter.style.left=o),n[l].gutterBackground&&(n[l].gutterBackground.style.left=o));var a=n[l].alignable;if(a)for(var s=0;s<a.length;s++)a[s].style.left=o}e.options.fixedGutter&&(t.gutters.style.left=r+i+"px")}}function dl(e){if(!e.options.lineNumbers)return!1;var t=e.doc,n=re(e.options,t.first+t.size-1),r=e.display;if(n.length!=r.lineNumChars){var i=r.measure.appendChild(c("div",[c("div",n)],"CodeMirror-linenumber CodeMirror-gutter-elt")),o=i.firstChild.offsetWidth,l=i.offsetWidth-o;return r.lineGutter.style.width="",r.lineNumInnerWidth=Math.max(o,r.lineGutter.offsetWidth-l)+1,r.lineNumWidth=r.lineNumInnerWidth+l,r.lineNumChars=r.lineNumInnerWidth?n.length:-1,r.lineGutter.style.width=r.lineNumWidth+"px",Gi(e.display),!0}return!1}function Yi(e,t){for(var n=[],r=!1,i=0;i<e.length;i++){var o=e[i],l=null;if(typeof o!="string"&&(l=o.style,o=o.className),o=="CodeMirror-linenumbers")if(t)r=!0;else continue;n.push({className:o,style:l})}return t&&!r&&n.push({className:"CodeMirror-linenumbers",style:null}),n}function hl(e){var t=e.gutters,n=e.gutterSpecs;F(t),e.lineGutter=null;for(var r=0;r<n.length;++r){var i=n[r],o=i.className,l=i.style,a=t.appendChild(c("div",null,"CodeMirror-gutter "+o));l&&(a.style.cssText=l),o=="CodeMirror-linenumbers"&&(e.lineGutter=a,a.style.width=(e.lineNumWidth||1)+"px")}t.style.display=n.length?"":"none",Gi(e)}function wn(e){hl(e.display),St(e),cl(e)}function eu(e,t,n,r){var i=this;this.input=n,i.scrollbarFiller=c("div",null,"CodeMirror-scrollbar-filler"),i.scrollbarFiller.setAttribute("cm-not-content","true"),i.gutterFiller=c("div",null,"CodeMirror-gutter-filler"),i.gutterFiller.setAttribute("cm-not-content","true"),i.lineDiv=T("div",null,"CodeMirror-code"),i.selectionDiv=c("div",null,null,"position: relative; z-index: 1"),i.cursorDiv=c("div",null,"CodeMirror-cursors"),i.measure=c("div",null,"CodeMirror-measure"),i.lineMeasure=c("div",null,"CodeMirror-measure"),i.lineSpace=T("div",[i.measure,i.lineMeasure,i.selectionDiv,i.cursorDiv,i.lineDiv],null,"position: relative; outline: none");var o=T("div",[i.lineSpace],"CodeMirror-lines");i.mover=c("div",[o],null,"position: relative"),i.sizer=c("div",[i.mover],"CodeMirror-sizer"),i.sizerWidth=null,i.heightForcer=c("div",null,null,"position: absolute; height: "+Oe+"px; width: 1px;"),i.gutters=c("div",null,"CodeMirror-gutters"),i.lineGutter=null,i.scroller=c("div",[i.sizer,i.heightForcer,i.gutters],"CodeMirror-scroll"),i.scroller.setAttribute("tabIndex","-1"),i.wrapper=c("div",[i.scrollbarFiller,i.gutterFiller,i.scroller],"CodeMirror"),S&&R>=105&&(i.wrapper.style.clipPath="inset(0px)"),i.wrapper.setAttribute("translate","no"),k&&I<8&&(i.gutters.style.zIndex=-1,i.scroller.style.paddingRight=0),!Y&&!(_&&N)&&(i.scroller.draggable=!0),e&&(e.appendChild?e.appendChild(i.wrapper):e(i.wrapper)),i.viewFrom=i.viewTo=t.first,i.reportedViewFrom=i.reportedViewTo=t.first,i.view=[],i.renderedView=null,i.externalMeasured=null,i.viewOffset=0,i.lastWrapHeight=i.lastWrapWidth=0,i.updateLineNumbers=null,i.nativeBarWidth=i.barHeight=i.barWidth=0,i.scrollbarsClipped=!1,i.lineNumWidth=i.lineNumInnerWidth=i.lineNumChars=null,i.alignWidgets=!1,i.cachedCharWidth=i.cachedTextHeight=i.cachedPaddingH=null,i.maxLine=null,i.maxLineLength=0,i.maxLineChanged=!1,i.wheelDX=i.wheelDY=i.wheelStartX=i.wheelStartY=null,i.shift=!1,i.selForContextMenu=null,i.activeTouch=null,i.gutterSpecs=Yi(r.gutters,r.lineNumbers),hl(i),n.init(i)}var ri=0,rr=null;k?rr=-.53:_?rr=15:S?rr=-.7:$&&(rr=-1/3);function pl(e){var t=e.wheelDeltaX,n=e.wheelDeltaY;return t==null&&e.detail&&e.axis==e.HORIZONTAL_AXIS&&(t=e.detail),n==null&&e.detail&&e.axis==e.VERTICAL_AXIS?n=e.detail:n==null&&(n=e.wheelDelta),{x:t,y:n}}function tu(e){var t=pl(e);return t.x*=rr,t.y*=rr,t}function gl(e,t){S&&R==102&&(e.display.chromeScrollHack==null?e.display.sizer.style.pointerEvents="none":clearTimeout(e.display.chromeScrollHack),e.display.chromeScrollHack=setTimeout(function(){e.display.chromeScrollHack=null,e.display.sizer.style.pointerEvents=""},100));var n=pl(t),r=n.x,i=n.y,o=rr;t.deltaMode===0&&(r=t.deltaX,i=t.deltaY,o=1);var l=e.display,a=l.scroller,s=a.scrollWidth>a.clientWidth,u=a.scrollHeight>a.clientHeight;if(r&&s||i&&u){if(i&&z&&Y){e:for(var h=t.target,x=l.view;h!=a;h=h.parentNode)for(var D=0;D<x.length;D++)if(x[D].node==h){e.display.currentWheelTarget=h;break e}}if(r&&!_&&!A&&o!=null){i&&u&&xn(e,Math.max(0,a.scrollTop+i*o)),Cr(e,Math.max(0,a.scrollLeft+r*o)),(!i||i&&u)&&pt(t),l.wheelStartX=null;return}if(i&&o!=null){var L=i*o,H=e.doc.scrollTop,Z=H+l.wrapper.clientHeight;L<0?H=Math.max(0,H+L-50):Z=Math.min(e.doc.height,Z+L+50),Ui(e,{top:H,bottom:Z})}ri<20&&t.deltaMode!==0&&(l.wheelStartX==null?(l.wheelStartX=a.scrollLeft,l.wheelStartY=a.scrollTop,l.wheelDX=r,l.wheelDY=i,setTimeout(function(){if(l.wheelStartX!=null){var ie=a.scrollLeft-l.wheelStartX,ae=a.scrollTop-l.wheelStartY,he=ae&&l.wheelDY&&ae/l.wheelDY||ie&&l.wheelDX&&ie/l.wheelDX;l.wheelStartX=l.wheelStartY=null,he&&(rr=(rr*ri+he)/(ri+1),++ri)}},200)):(l.wheelDX+=r,l.wheelDY+=i))}}var Ot=function(e,t){this.ranges=e,this.primIndex=t};Ot.prototype.primary=function(){return this.ranges[this.primIndex]},Ot.prototype.equals=function(e){if(e==this)return!0;if(e.primIndex!=this.primIndex||e.ranges.length!=this.ranges.length)return!1;for(var t=0;t<this.ranges.length;t++){var n=this.ranges[t],r=e.ranges[t];if(!We(n.anchor,r.anchor)||!We(n.head,r.head))return!1}return!0},Ot.prototype.deepCopy=function(){for(var e=[],t=0;t<this.ranges.length;t++)e[t]=new He(it(this.ranges[t].anchor),it(this.ranges[t].head));return new Ot(e,this.primIndex)},Ot.prototype.somethingSelected=function(){for(var e=0;e<this.ranges.length;e++)if(!this.ranges[e].empty())return!0;return!1},Ot.prototype.contains=function(e,t){t||(t=e);for(var n=0;n<this.ranges.length;n++){var r=this.ranges[n];if(ce(t,r.from())>=0&&ce(e,r.to())<=0)return n}return-1};var He=function(e,t){this.anchor=e,this.head=t};He.prototype.from=function(){return Wr(this.anchor,this.head)},He.prototype.to=function(){return wt(this.anchor,this.head)},He.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch};function Kt(e,t,n){var r=e&&e.options.selectionsMayTouch,i=t[n];t.sort(function(D,L){return ce(D.from(),L.from())}),n=ve(t,i);for(var o=1;o<t.length;o++){var l=t[o],a=t[o-1],s=ce(a.to(),l.from());if(r&&!l.empty()?s>0:s>=0){var u=Wr(a.from(),l.from()),h=wt(a.to(),l.to()),x=a.empty()?l.from()==l.head:a.from()==a.head;o<=n&&--n,t.splice(--o,2,new He(x?h:u,x?u:h))}}return new Ot(t,n)}function pr(e,t){return new Ot([new He(e,t||e)],0)}function gr(e){return e.text?B(e.from.line+e.text.length-1,we(e.text).length+(e.text.length==1?e.from.ch:0)):e.to}function vl(e,t){if(ce(e,t.from)<0)return e;if(ce(e,t.to)<=0)return gr(t);var n=e.line+t.text.length-(t.to.line-t.from.line)-1,r=e.ch;return e.line==t.to.line&&(r+=gr(t).ch-t.to.ch),B(n,r)}function Qi(e,t){for(var n=[],r=0;r<e.sel.ranges.length;r++){var i=e.sel.ranges[r];n.push(new He(vl(i.anchor,t),vl(i.head,t)))}return Kt(e.cm,n,e.sel.primIndex)}function ml(e,t,n){return e.line==t.line?B(n.line,e.ch-t.ch+n.ch):B(n.line+(e.line-t.line),e.ch)}function ru(e,t,n){for(var r=[],i=B(e.first,0),o=i,l=0;l<t.length;l++){var a=t[l],s=ml(a.from,i,o),u=ml(gr(a),i,o);if(i=a.to,o=u,n=="around"){var h=e.sel.ranges[l],x=ce(h.head,h.anchor)<0;r[l]=new He(x?u:s,x?s:u)}else r[l]=new He(s,s)}return new Ot(r,e.sel.primIndex)}function Ji(e){e.doc.mode=zr(e.options,e.doc.modeOption),Sn(e)}function Sn(e){e.doc.iter(function(t){t.stateAfter&&(t.stateAfter=null),t.styles&&(t.styles=null)}),e.doc.modeFrontier=e.doc.highlightFrontier=e.doc.first,kn(e,100),e.state.modeGen++,e.curOp&&St(e)}function xl(e,t){return t.from.ch==0&&t.to.ch==0&&we(t.text)==""&&(!e.cm||e.cm.options.wholeLineUpdateBefore)}function Zi(e,t,n,r){function i(he){return n?n[he]:null}function o(he,se,ge){fs(he,se,ge,r),ot(he,"change",he,t)}function l(he,se){for(var ge=[],Le=he;Le<se;++Le)ge.push(new Hr(u[Le],i(Le),r));return ge}var a=t.from,s=t.to,u=t.text,h=ye(e,a.line),x=ye(e,s.line),D=we(u),L=i(u.length-1),H=s.line-a.line;if(t.full)e.insert(0,l(0,u.length)),e.remove(u.length,e.size-u.length);else if(xl(e,t)){var Z=l(0,u.length-1);o(x,x.text,L),H&&e.remove(a.line,H),Z.length&&e.insert(a.line,Z)}else if(h==x)if(u.length==1)o(h,h.text.slice(0,a.ch)+D+h.text.slice(s.ch),L);else{var ie=l(1,u.length-1);ie.push(new Hr(D+h.text.slice(s.ch),L,r)),o(h,h.text.slice(0,a.ch)+u[0],i(0)),e.insert(a.line+1,ie)}else if(u.length==1)o(h,h.text.slice(0,a.ch)+u[0]+x.text.slice(s.ch),i(0)),e.remove(a.line+1,H);else{o(h,h.text.slice(0,a.ch)+u[0],i(0)),o(x,D+x.text.slice(s.ch),L);var ae=l(1,u.length-1);H>1&&e.remove(a.line+1,H-1),e.insert(a.line+1,ae)}ot(e,"change",e,t)}function vr(e,t,n){function r(i,o,l){if(i.linked)for(var a=0;a<i.linked.length;++a){var s=i.linked[a];if(s.doc!=o){var u=l&&s.sharedHist;n&&!u||(t(s.doc,u),r(s.doc,i,u))}}}r(e,null,!0)}function yl(e,t){if(t.cm)throw new Error("This document is already in use.");e.doc=t,t.cm=e,Bi(e),Ji(e),bl(e),e.options.direction=t.direction,e.options.lineWrapping||Ci(e),e.options.mode=t.modeOption,St(e)}function bl(e){(e.doc.direction=="rtl"?j:V)(e.display.lineDiv,"CodeMirror-rtl")}function nu(e){At(e,function(){bl(e),St(e)})}function ni(e){this.done=[],this.undone=[],this.undoDepth=e?e.undoDepth:1/0,this.lastModTime=this.lastSelTime=0,this.lastOp=this.lastSelOp=null,this.lastOrigin=this.lastSelOrigin=null,this.generation=this.maxGeneration=e?e.maxGeneration:1}function $i(e,t){var n={from:it(t.from),to:gr(t),text:$t(e,t.from,t.to)};return Sl(e,n,t.from.line,t.to.line+1),vr(e,function(r){return Sl(r,n,t.from.line,t.to.line+1)},!0),n}function kl(e){for(;e.length;){var t=we(e);if(t.ranges)e.pop();else break}}function iu(e,t){if(t)return kl(e.done),we(e.done);if(e.done.length&&!we(e.done).ranges)return we(e.done);if(e.done.length>1&&!e.done[e.done.length-2].ranges)return e.done.pop(),we(e.done)}function wl(e,t,n,r){var i=e.history;i.undone.length=0;var o=+new Date,l,a;if((i.lastOp==r||i.lastOrigin==t.origin&&t.origin&&(t.origin.charAt(0)=="+"&&i.lastModTime>o-(e.cm?e.cm.options.historyEventDelay:500)||t.origin.charAt(0)=="*"))&&(l=iu(i,i.lastOp==r)))a=we(l.changes),ce(t.from,t.to)==0&&ce(t.from,a.to)==0?a.to=gr(t):l.changes.push($i(e,t));else{var s=we(i.done);for((!s||!s.ranges)&&ii(e.sel,i.done),l={changes:[$i(e,t)],generation:i.generation},i.done.push(l);i.done.length>i.undoDepth;)i.done.shift(),i.done[0].ranges||i.done.shift()}i.done.push(n),i.generation=++i.maxGeneration,i.lastModTime=i.lastSelTime=o,i.lastOp=i.lastSelOp=r,i.lastOrigin=i.lastSelOrigin=t.origin,a||Ye(e,"historyAdded")}function ou(e,t,n,r){var i=t.charAt(0);return i=="*"||i=="+"&&n.ranges.length==r.ranges.length&&n.somethingSelected()==r.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}function lu(e,t,n,r){var i=e.history,o=r&&r.origin;n==i.lastSelOp||o&&i.lastSelOrigin==o&&(i.lastModTime==i.lastSelTime&&i.lastOrigin==o||ou(e,o,we(i.done),t))?i.done[i.done.length-1]=t:ii(t,i.done),i.lastSelTime=+new Date,i.lastSelOrigin=o,i.lastSelOp=n,r&&r.clearRedo!==!1&&kl(i.undone)}function ii(e,t){var n=we(t);n&&n.ranges&&n.equals(e)||t.push(e)}function Sl(e,t,n,r){var i=t["spans_"+e.id],o=0;e.iter(Math.max(e.first,n),Math.min(e.first+e.size,r),function(l){l.markedSpans&&((i||(i=t["spans_"+e.id]={}))[o]=l.markedSpans),++o})}function au(e){if(!e)return null;for(var t,n=0;n<e.length;++n)e[n].marker.explicitlyCleared?t||(t=e.slice(0,n)):t&&t.push(e[n]);return t?t.length?t:null:e}function su(e,t){var n=t["spans_"+e.id];if(!n)return null;for(var r=[],i=0;i<t.text.length;++i)r.push(au(n[i]));return r}function Ll(e,t){var n=su(e,t),r=wi(e,t);if(!n)return r;if(!r)return n;for(var i=0;i<n.length;++i){var o=n[i],l=r[i];if(o&&l)e:for(var a=0;a<l.length;++a){for(var s=l[a],u=0;u<o.length;++u)if(o[u].marker==s.marker)continue e;o.push(s)}else l&&(n[i]=l)}return n}function Yr(e,t,n){for(var r=[],i=0;i<e.length;++i){var o=e[i];if(o.ranges){r.push(n?Ot.prototype.deepCopy.call(o):o);continue}var l=o.changes,a=[];r.push({changes:a});for(var s=0;s<l.length;++s){var u=l[s],h=void 0;if(a.push({from:u.from,to:u.to,text:u.text}),t)for(var x in u)(h=x.match(/^spans_(\d+)$/))&&ve(t,Number(h[1]))>-1&&(we(a)[x]=u[x],delete u[x])}}return r}function Vi(e,t,n,r){if(r){var i=e.anchor;if(n){var o=ce(t,i)<0;o!=ce(n,i)<0?(i=t,t=n):o!=ce(t,n)<0&&(t=n)}return new He(i,t)}else return new He(n||t,t)}function oi(e,t,n,r,i){i==null&&(i=e.cm&&(e.cm.display.shift||e.extend)),gt(e,new Ot([Vi(e.sel.primary(),t,n,i)],0),r)}function Tl(e,t,n){for(var r=[],i=e.cm&&(e.cm.display.shift||e.extend),o=0;o<e.sel.ranges.length;o++)r[o]=Vi(e.sel.ranges[o],t[o],null,i);var l=Kt(e.cm,r,e.sel.primIndex);gt(e,l,n)}function eo(e,t,n,r){var i=e.sel.ranges.slice(0);i[t]=n,gt(e,Kt(e.cm,i,e.sel.primIndex),r)}function Cl(e,t,n,r){gt(e,pr(t,n),r)}function uu(e,t,n){var r={ranges:t.ranges,update:function(i){this.ranges=[];for(var o=0;o<i.length;o++)this.ranges[o]=new He(Ae(e,i[o].anchor),Ae(e,i[o].head))},origin:n&&n.origin};return Ye(e,"beforeSelectionChange",e,r),e.cm&&Ye(e.cm,"beforeSelectionChange",e.cm,r),r.ranges!=t.ranges?Kt(e.cm,r.ranges,r.ranges.length-1):t}function Dl(e,t,n){var r=e.history.done,i=we(r);i&&i.ranges?(r[r.length-1]=t,li(e,t,n)):gt(e,t,n)}function gt(e,t,n){li(e,t,n),lu(e,e.sel,e.cm?e.cm.curOp.id:NaN,n)}function li(e,t,n){(Ft(e,"beforeSelectionChange")||e.cm&&Ft(e.cm,"beforeSelectionChange"))&&(t=uu(e,t,n));var r=n&&n.bias||(ce(t.primary().head,e.sel.primary().head)<0?-1:1);Ml(e,Al(e,t,r,!0)),!(n&&n.scroll===!1)&&e.cm&&e.cm.getOption("readOnly")!="nocursor"&&Gr(e.cm)}function Ml(e,t){t.equals(e.sel)||(e.sel=t,e.cm&&(e.cm.curOp.updateInput=1,e.cm.curOp.selectionChanged=!0,It(e.cm)),ot(e,"cursorActivity",e))}function Fl(e){Ml(e,Al(e,e.sel,null,!1))}function Al(e,t,n,r){for(var i,o=0;o<t.ranges.length;o++){var l=t.ranges[o],a=t.ranges.length==e.sel.ranges.length&&e.sel.ranges[o],s=ai(e,l.anchor,a&&a.anchor,n,r),u=l.head==l.anchor?s:ai(e,l.head,a&&a.head,n,r);(i||s!=l.anchor||u!=l.head)&&(i||(i=t.ranges.slice(0,o)),i[o]=new He(s,u))}return i?Kt(e.cm,i,t.primIndex):t}function Qr(e,t,n,r,i){var o=ye(e,t.line);if(o.markedSpans)for(var l=0;l<o.markedSpans.length;++l){var a=o.markedSpans[l],s=a.marker,u="selectLeft"in s?!s.selectLeft:s.inclusiveLeft,h="selectRight"in s?!s.selectRight:s.inclusiveRight;if((a.from==null||(u?a.from<=t.ch:a.from<t.ch))&&(a.to==null||(h?a.to>=t.ch:a.to>t.ch))){if(i&&(Ye(s,"beforeCursorEnter"),s.explicitlyCleared))if(o.markedSpans){--l;continue}else break;if(!s.atomic)continue;if(n){var x=s.find(r<0?1:-1),D=void 0;if((r<0?h:u)&&(x=Nl(e,x,-r,x&&x.line==t.line?o:null)),x&&x.line==t.line&&(D=ce(x,n))&&(r<0?D<0:D>0))return Qr(e,x,t,r,i)}var L=s.find(r<0?-1:1);return(r<0?u:h)&&(L=Nl(e,L,r,L.line==t.line?o:null)),L?Qr(e,L,t,r,i):null}}return t}function ai(e,t,n,r,i){var o=r||1,l=Qr(e,t,n,o,i)||!i&&Qr(e,t,n,o,!0)||Qr(e,t,n,-o,i)||!i&&Qr(e,t,n,-o,!0);return l||(e.cantEdit=!0,B(e.first,0))}function Nl(e,t,n,r){return n<0&&t.ch==0?t.line>e.first?Ae(e,B(t.line-1)):null:n>0&&t.ch==(r||ye(e,t.line)).text.length?t.line<e.first+e.size-1?B(t.line+1,0):null:new B(t.line,t.ch+n)}function El(e){e.setSelection(B(e.firstLine(),0),B(e.lastLine()),$e)}function Ol(e,t,n){var r={canceled:!1,from:t.from,to:t.to,text:t.text,origin:t.origin,cancel:function(){return r.canceled=!0}};return n&&(r.update=function(i,o,l,a){i&&(r.from=Ae(e,i)),o&&(r.to=Ae(e,o)),l&&(r.text=l),a!==void 0&&(r.origin=a)}),Ye(e,"beforeChange",e,r),e.cm&&Ye(e.cm,"beforeChange",e.cm,r),r.canceled?(e.cm&&(e.cm.curOp.updateInput=2),null):{from:r.from,to:r.to,text:r.text,origin:r.origin}}function Jr(e,t,n){if(e.cm){if(!e.cm.curOp)return lt(e.cm,Jr)(e,t,n);if(e.cm.state.suppressEdits)return}if(!((Ft(e,"beforeChange")||e.cm&&Ft(e.cm,"beforeChange"))&&(t=Ol(e,t,!0),!t))){var r=Lo&&!n&&ls(e,t.from,t.to);if(r)for(var i=r.length-1;i>=0;--i)Pl(e,{from:r[i].from,to:r[i].to,text:i?[""]:t.text,origin:t.origin});else Pl(e,t)}}function Pl(e,t){if(!(t.text.length==1&&t.text[0]==""&&ce(t.from,t.to)==0)){var n=Qi(e,t);wl(e,t,n,e.cm?e.cm.curOp.id:NaN),Ln(e,t,n,wi(e,t));var r=[];vr(e,function(i,o){!o&&ve(r,i.history)==-1&&(Rl(i.history,t),r.push(i.history)),Ln(i,t,null,wi(i,t))})}}function si(e,t,n){var r=e.cm&&e.cm.state.suppressEdits;if(!(r&&!n)){for(var i=e.history,o,l=e.sel,a=t=="undo"?i.done:i.undone,s=t=="undo"?i.undone:i.done,u=0;u<a.length&&(o=a[u],!(n?o.ranges&&!o.equals(e.sel):!o.ranges));u++);if(u!=a.length){for(i.lastOrigin=i.lastSelOrigin=null;;)if(o=a.pop(),o.ranges){if(ii(o,s),n&&!o.equals(e.sel)){gt(e,o,{clearRedo:!1});return}l=o}else if(r){a.push(o);return}else break;var h=[];ii(l,s),s.push({changes:h,generation:i.generation}),i.generation=o.generation||++i.maxGeneration;for(var x=Ft(e,"beforeChange")||e.cm&&Ft(e.cm,"beforeChange"),D=function(Z){var ie=o.changes[Z];if(ie.origin=t,x&&!Ol(e,ie,!1))return a.length=0,{};h.push($i(e,ie));var ae=Z?Qi(e,ie):we(a);Ln(e,ie,ae,Ll(e,ie)),!Z&&e.cm&&e.cm.scrollIntoView({from:ie.from,to:gr(ie)});var he=[];vr(e,function(se,ge){!ge&&ve(he,se.history)==-1&&(Rl(se.history,ie),he.push(se.history)),Ln(se,ie,null,Ll(se,ie))})},L=o.changes.length-1;L>=0;--L){var H=D(L);if(H)return H.v}}}}function Il(e,t){if(t!=0&&(e.first+=t,e.sel=new Ot(Ie(e.sel.ranges,function(i){return new He(B(i.anchor.line+t,i.anchor.ch),B(i.head.line+t,i.head.ch))}),e.sel.primIndex),e.cm)){St(e.cm,e.first,e.first-t,t);for(var n=e.cm.display,r=n.viewFrom;r<n.viewTo;r++)dr(e.cm,r,"gutter")}}function Ln(e,t,n,r){if(e.cm&&!e.cm.curOp)return lt(e.cm,Ln)(e,t,n,r);if(t.to.line<e.first){Il(e,t.text.length-1-(t.to.line-t.from.line));return}if(!(t.from.line>e.lastLine())){if(t.from.line<e.first){var i=t.text.length-1-(e.first-t.from.line);Il(e,i),t={from:B(e.first,0),to:B(t.to.line+i,t.to.ch),text:[we(t.text)],origin:t.origin}}var o=e.lastLine();t.to.line>o&&(t={from:t.from,to:B(o,ye(e,o).text.length),text:[t.text[0]],origin:t.origin}),t.removed=$t(e,t.from,t.to),n||(n=Qi(e,t)),e.cm?fu(e.cm,t,r):Zi(e,t,r),li(e,n,$e),e.cantEdit&&ai(e,B(e.firstLine(),0))&&(e.cantEdit=!1)}}function fu(e,t,n){var r=e.doc,i=e.display,o=t.from,l=t.to,a=!1,s=o.line;e.options.lineWrapping||(s=f(qt(ye(r,o.line))),r.iter(s,l.line+1,function(L){if(L==i.maxLine)return a=!0,!0})),r.sel.contains(t.from,t.to)>-1&&It(e),Zi(r,t,n,el(e)),e.options.lineWrapping||(r.iter(s,o.line+t.text.length,function(L){var H=Un(L);H>i.maxLineLength&&(i.maxLine=L,i.maxLineLength=H,i.maxLineChanged=!0,a=!1)}),a&&(e.curOp.updateMaxLine=!0)),Va(r,o.line),kn(e,400);var u=t.text.length-(l.line-o.line)-1;t.full?St(e):o.line==l.line&&t.text.length==1&&!xl(e.doc,t)?dr(e,o.line,"text"):St(e,o.line,l.line+1,u);var h=Ft(e,"changes"),x=Ft(e,"change");if(x||h){var D={from:o,to:l,text:t.text,removed:t.removed,origin:t.origin};x&&ot(e,"change",e,D),h&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(D)}e.display.selForContextMenu=null}function Zr(e,t,n,r,i){var o;r||(r=n),ce(r,n)<0&&(o=[r,n],n=o[0],r=o[1]),typeof t=="string"&&(t=e.splitLines(t)),Jr(e,{from:n,to:r,text:t,origin:i})}function zl(e,t,n,r){n<e.line?e.line+=r:t<e.line&&(e.line=t,e.ch=0)}function Bl(e,t,n,r){for(var i=0;i<e.length;++i){var o=e[i],l=!0;if(o.ranges){o.copied||(o=e[i]=o.deepCopy(),o.copied=!0);for(var a=0;a<o.ranges.length;a++)zl(o.ranges[a].anchor,t,n,r),zl(o.ranges[a].head,t,n,r);continue}for(var s=0;s<o.changes.length;++s){var u=o.changes[s];if(n<u.from.line)u.from=B(u.from.line+r,u.from.ch),u.to=B(u.to.line+r,u.to.ch);else if(t<=u.to.line){l=!1;break}}l||(e.splice(0,i+1),i=0)}}function Rl(e,t){var n=t.from.line,r=t.to.line,i=t.text.length-(r-n)-1;Bl(e.done,n,r,i),Bl(e.undone,n,r,i)}function Tn(e,t,n,r){var i=t,o=t;return typeof t=="number"?o=ye(e,go(e,t)):i=f(t),i==null?null:(r(o,i)&&e.cm&&dr(e.cm,i,n),o)}function Cn(e){this.lines=e,this.parent=null;for(var t=0,n=0;n<e.length;++n)e[n].parent=this,t+=e[n].height;this.height=t}Cn.prototype={chunkSize:function(){return this.lines.length},removeInner:function(e,t){for(var n=e,r=e+t;n<r;++n){var i=this.lines[n];this.height-=i.height,cs(i),ot(i,"delete")}this.lines.splice(e,t)},collapse:function(e){e.push.apply(e,this.lines)},insertInner:function(e,t,n){this.height+=n,this.lines=this.lines.slice(0,e).concat(t).concat(this.lines.slice(e));for(var r=0;r<t.length;++r)t[r].parent=this},iterN:function(e,t,n){for(var r=e+t;e<r;++e)if(n(this.lines[e]))return!0}};function Dn(e){this.children=e;for(var t=0,n=0,r=0;r<e.length;++r){var i=e[r];t+=i.chunkSize(),n+=i.height,i.parent=this}this.size=t,this.height=n,this.parent=null}Dn.prototype={chunkSize:function(){return this.size},removeInner:function(e,t){this.size-=t;for(var n=0;n<this.children.length;++n){var r=this.children[n],i=r.chunkSize();if(e<i){var o=Math.min(t,i-e),l=r.height;if(r.removeInner(e,o),this.height-=l-r.height,i==o&&(this.children.splice(n--,1),r.parent=null),(t-=o)==0)break;e=0}else e-=i}if(this.size-t<25&&(this.children.length>1||!(this.children[0]instanceof Cn))){var a=[];this.collapse(a),this.children=[new Cn(a)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t<this.children.length;++t)this.children[t].collapse(e)},insertInner:function(e,t,n){this.size+=t.length,this.height+=n;for(var r=0;r<this.children.length;++r){var i=this.children[r],o=i.chunkSize();if(e<=o){if(i.insertInner(e,t,n),i.lines&&i.lines.length>50){for(var l=i.lines.length%25+25,a=l;a<i.lines.length;){var s=new Cn(i.lines.slice(a,a+=25));i.height-=s.height,this.children.splice(++r,0,s),s.parent=this}i.lines=i.lines.slice(0,l),this.maybeSpill()}break}e-=o}},maybeSpill:function(){if(!(this.children.length<=10)){var e=this;do{var t=e.children.splice(e.children.length-5,5),n=new Dn(t);if(e.parent){e.size-=n.size,e.height-=n.height;var i=ve(e.parent.children,e);e.parent.children.splice(i+1,0,n)}else{var r=new Dn(e.children);r.parent=e,e.children=[r,n],e=r}n.parent=e.parent}while(e.children.length>10);e.parent.maybeSpill()}},iterN:function(e,t,n){for(var r=0;r<this.children.length;++r){var i=this.children[r],o=i.chunkSize();if(e<o){var l=Math.min(t,o-e);if(i.iterN(e,l,n))return!0;if((t-=l)==0)break;e=0}else e-=o}}};var Mn=function(e,t,n){if(n)for(var r in n)n.hasOwnProperty(r)&&(this[r]=n[r]);this.doc=e,this.node=t};Mn.prototype.clear=function(){var e=this.doc.cm,t=this.line.widgets,n=this.line,r=f(n);if(!(r==null||!t)){for(var i=0;i<t.length;++i)t[i]==this&&t.splice(i--,1);t.length||(n.widgets=null);var o=pn(this);Et(n,Math.max(0,n.height-o)),e&&(At(e,function(){Wl(e,n,-o),dr(e,r,"widget")}),ot(e,"lineWidgetCleared",e,this,r))}},Mn.prototype.changed=function(){var e=this,t=this.height,n=this.doc.cm,r=this.line;this.height=null;var i=pn(this)-t;i&&(cr(this.doc,r)||Et(r,r.height+i),n&&At(n,function(){n.curOp.forceUpdate=!0,Wl(n,r,i),ot(n,"lineWidgetChanged",n,e,f(r))}))},Bt(Mn);function Wl(e,t,n){er(t)<(e.curOp&&e.curOp.scrollTop||e.doc.scrollTop)&&ji(e,n)}function cu(e,t,n,r){var i=new Mn(e,n,r),o=e.cm;return o&&i.noHScroll&&(o.display.alignWidgets=!0),Tn(e,t,"widget",function(l){var a=l.widgets||(l.widgets=[]);if(i.insertAt==null?a.push(i):a.splice(Math.min(a.length,Math.max(0,i.insertAt)),0,i),i.line=l,o&&!cr(e,l)){var s=er(l)<e.scrollTop;Et(l,l.height+pn(i)),s&&ji(o,i.height),o.curOp.forceUpdate=!0}return!0}),o&&ot(o,"lineWidgetAdded",o,i,typeof t=="number"?t:f(t)),i}var Hl=0,mr=function(e,t){this.lines=[],this.type=t,this.doc=e,this.id=++Hl};mr.prototype.clear=function(){if(!this.explicitlyCleared){var e=this.doc.cm,t=e&&!e.curOp;if(t&&Mr(e),Ft(this,"clear")){var n=this.find();n&&ot(this,"clear",n.from,n.to)}for(var r=null,i=null,o=0;o<this.lines.length;++o){var l=this.lines[o],a=cn(l.markedSpans,this);e&&!this.collapsed?dr(e,f(l),"text"):e&&(a.to!=null&&(i=f(l)),a.from!=null&&(r=f(l))),l.markedSpans=rs(l.markedSpans,a),a.from==null&&this.collapsed&&!cr(this.doc,l)&&e&&Et(l,jr(e.display))}if(e&&this.collapsed&&!e.options.lineWrapping)for(var s=0;s<this.lines.length;++s){var u=qt(this.lines[s]),h=Un(u);h>e.display.maxLineLength&&(e.display.maxLine=u,e.display.maxLineLength=h,e.display.maxLineChanged=!0)}r!=null&&e&&this.collapsed&&St(e,r,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&Fl(e.doc)),e&&ot(e,"markerCleared",e,this,r,i),t&&Fr(e),this.parent&&this.parent.clear()}},mr.prototype.find=function(e,t){e==null&&this.type=="bookmark"&&(e=1);for(var n,r,i=0;i<this.lines.length;++i){var o=this.lines[i],l=cn(o.markedSpans,this);if(l.from!=null&&(n=B(t?o:f(o),l.from),e==-1))return n;if(l.to!=null&&(r=B(t?o:f(o),l.to),e==1))return r}return n&&{from:n,to:r}},mr.prototype.changed=function(){var e=this,t=this.find(-1,!0),n=this,r=this.doc.cm;!t||!r||At(r,function(){var i=t.line,o=f(t.line),l=Ai(r,o);if(l&&(Go(l),r.curOp.selectionChanged=r.curOp.forceUpdate=!0),r.curOp.updateMaxLine=!0,!cr(n.doc,i)&&n.height!=null){var a=n.height;n.height=null;var s=pn(n)-a;s&&Et(i,i.height+s)}ot(r,"markerChanged",r,e)})},mr.prototype.attachLine=function(e){if(!this.lines.length&&this.doc.cm){var t=this.doc.cm.curOp;(!t.maybeHiddenMarkers||ve(t.maybeHiddenMarkers,this)==-1)&&(t.maybeUnhiddenMarkers||(t.maybeUnhiddenMarkers=[])).push(this)}this.lines.push(e)},mr.prototype.detachLine=function(e){if(this.lines.splice(ve(this.lines,e),1),!this.lines.length&&this.doc.cm){var t=this.doc.cm.curOp;(t.maybeHiddenMarkers||(t.maybeHiddenMarkers=[])).push(this)}},Bt(mr);function $r(e,t,n,r,i){if(r&&r.shared)return du(e,t,n,r,i);if(e.cm&&!e.cm.curOp)return lt(e.cm,$r)(e,t,n,r,i);var o=new mr(e,i),l=ce(t,n);if(r&&Me(r,o,!1),l>0||l==0&&o.clearWhenEmpty!==!1)return o;if(o.replacedWith&&(o.collapsed=!0,o.widgetNode=T("span",[o.replacedWith],"CodeMirror-widget"),r.handleMouseEvents||o.widgetNode.setAttribute("cm-ignore-events","true"),r.insertLeft&&(o.widgetNode.insertLeft=!0)),o.collapsed){if(Ao(e,t.line,t,n,o)||t.line!=n.line&&Ao(e,n.line,t,n,o))throw new Error("Inserting collapsed marker partially overlapping an existing one");ts()}o.addToHistory&&wl(e,{from:t,to:n,origin:"markText"},e.sel,NaN);var a=t.line,s=e.cm,u;if(e.iter(a,n.line+1,function(x){s&&o.collapsed&&!s.options.lineWrapping&&qt(x)==s.display.maxLine&&(u=!0),o.collapsed&&a!=t.line&&Et(x,0),ns(x,new _n(o,a==t.line?t.ch:null,a==n.line?n.ch:null),e.cm&&e.cm.curOp),++a}),o.collapsed&&e.iter(t.line,n.line+1,function(x){cr(e,x)&&Et(x,0)}),o.clearOnEnter&&Se(o,"beforeCursorEnter",function(){return o.clear()}),o.readOnly&&(es(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),o.collapsed&&(o.id=++Hl,o.atomic=!0),s){if(u&&(s.curOp.updateMaxLine=!0),o.collapsed)St(s,t.line,n.line+1);else if(o.className||o.startStyle||o.endStyle||o.css||o.attributes||o.title)for(var h=t.line;h<=n.line;h++)dr(s,h,"text");o.atomic&&Fl(s.doc),ot(s,"markerAdded",s,o)}return o}var Fn=function(e,t){this.markers=e,this.primary=t;for(var n=0;n<e.length;++n)e[n].parent=this};Fn.prototype.clear=function(){if(!this.explicitlyCleared){this.explicitlyCleared=!0;for(var e=0;e<this.markers.length;++e)this.markers[e].clear();ot(this,"clear")}},Fn.prototype.find=function(e,t){return this.primary.find(e,t)},Bt(Fn);function du(e,t,n,r,i){r=Me(r),r.shared=!1;var o=[$r(e,t,n,r,i)],l=o[0],a=r.widgetNode;return vr(e,function(s){a&&(r.widgetNode=a.cloneNode(!0)),o.push($r(s,Ae(s,t),Ae(s,n),r,i));for(var u=0;u<s.linked.length;++u)if(s.linked[u].isParent)return;l=we(o)}),new Fn(o,l)}function _l(e){return e.findMarks(B(e.first,0),e.clipPos(B(e.lastLine())),function(t){return t.parent})}function hu(e,t){for(var n=0;n<t.length;n++){var r=t[n],i=r.find(),o=e.clipPos(i.from),l=e.clipPos(i.to);if(ce(o,l)){var a=$r(e,o,l,r.primary,r.primary.type);r.markers.push(a),a.parent=r}}}function pu(e){for(var t=function(r){var i=e[r],o=[i.primary.doc];vr(i.primary.doc,function(s){return o.push(s)});for(var l=0;l<i.markers.length;l++){var a=i.markers[l];ve(o,a.doc)==-1&&(a.parent=null,i.markers.splice(l--,1))}},n=0;n<e.length;n++)t(n)}var gu=0,Lt=function(e,t,n,r,i){if(!(this instanceof Lt))return new Lt(e,t,n,r,i);n==null&&(n=0),Dn.call(this,[new Cn([new Hr("",null)])]),this.first=n,this.scrollTop=this.scrollLeft=0,this.cantEdit=!1,this.cleanGeneration=1,this.modeFrontier=this.highlightFrontier=n;var o=B(n,0);this.sel=pr(o),this.history=new ni(null),this.id=++gu,this.modeOption=t,this.lineSep=r,this.direction=i=="rtl"?"rtl":"ltr",this.extend=!1,typeof e=="string"&&(e=this.splitLines(e)),Zi(this,{from:o,to:o,text:e}),gt(this,pr(o),$e)};Lt.prototype=K(Dn.prototype,{constructor:Lt,iter:function(e,t,n){n?this.iterN(e-this.first,t-e,n):this.iterN(this.first,this.first+this.size,e)},insert:function(e,t){for(var n=0,r=0;r<t.length;++r)n+=t[r].height;this.insertInner(e-this.first,t,n)},remove:function(e,t){this.removeInner(e-this.first,t)},getValue:function(e){var t=un(this,this.first,this.first+this.size);return e===!1?t:t.join(e||this.lineSeparator())},setValue:at(function(e){var t=B(this.first,0),n=this.first+this.size-1;Jr(this,{from:t,to:B(n,ye(this,n).text.length),text:this.splitLines(e),origin:"setValue",full:!0},!0),this.cm&&mn(this.cm,0,0),gt(this,pr(t),$e)}),replaceRange:function(e,t,n,r){t=Ae(this,t),n=n?Ae(this,n):t,Zr(this,e,t,n,r)},getRange:function(e,t,n){var r=$t(this,Ae(this,e),Ae(this,t));return n===!1?r:n===""?r.join(""):r.join(n||this.lineSeparator())},getLine:function(e){var t=this.getLineHandle(e);return t&&t.text},getLineHandle:function(e){if(U(this,e))return ye(this,e)},getLineNumber:function(e){return f(e)},getLineHandleVisualStart:function(e){return typeof e=="number"&&(e=ye(this,e)),qt(e)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(e){return Ae(this,e)},getCursor:function(e){var t=this.sel.primary(),n;return e==null||e=="head"?n=t.head:e=="anchor"?n=t.anchor:e=="end"||e=="to"||e===!1?n=t.to():n=t.from(),n},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:at(function(e,t,n){Cl(this,Ae(this,typeof e=="number"?B(e,t||0):e),null,n)}),setSelection:at(function(e,t,n){Cl(this,Ae(this,e),Ae(this,t||e),n)}),extendSelection:at(function(e,t,n){oi(this,Ae(this,e),t&&Ae(this,t),n)}),extendSelections:at(function(e,t){Tl(this,vo(this,e),t)}),extendSelectionsBy:at(function(e,t){var n=Ie(this.sel.ranges,e);Tl(this,vo(this,n),t)}),setSelections:at(function(e,t,n){if(e.length){for(var r=[],i=0;i<e.length;i++)r[i]=new He(Ae(this,e[i].anchor),Ae(this,e[i].head||e[i].anchor));t==null&&(t=Math.min(e.length-1,this.sel.primIndex)),gt(this,Kt(this.cm,r,t),n)}}),addSelection:at(function(e,t,n){var r=this.sel.ranges.slice(0);r.push(new He(Ae(this,e),Ae(this,t||e))),gt(this,Kt(this.cm,r,r.length-1),n)}),getSelection:function(e){for(var t=this.sel.ranges,n,r=0;r<t.length;r++){var i=$t(this,t[r].from(),t[r].to());n=n?n.concat(i):i}return e===!1?n:n.join(e||this.lineSeparator())},getSelections:function(e){for(var t=[],n=this.sel.ranges,r=0;r<n.length;r++){var i=$t(this,n[r].from(),n[r].to());e!==!1&&(i=i.join(e||this.lineSeparator())),t[r]=i}return t},replaceSelection:function(e,t,n){for(var r=[],i=0;i<this.sel.ranges.length;i++)r[i]=e;this.replaceSelections(r,t,n||"+input")},replaceSelections:at(function(e,t,n){for(var r=[],i=this.sel,o=0;o<i.ranges.length;o++){var l=i.ranges[o];r[o]={from:l.from(),to:l.to(),text:this.splitLines(e[o]),origin:n}}for(var a=t&&t!="end"&&ru(this,r,t),s=r.length-1;s>=0;s--)Jr(this,r[s]);a?Dl(this,a):this.cm&&Gr(this.cm)}),undo:at(function(){si(this,"undo")}),redo:at(function(){si(this,"redo")}),undoSelection:at(function(){si(this,"undo",!0)}),redoSelection:at(function(){si(this,"redo",!0)}),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,n=0,r=0;r<e.done.length;r++)e.done[r].ranges||++t;for(var i=0;i<e.undone.length;i++)e.undone[i].ranges||++n;return{undo:t,redo:n}},clearHistory:function(){var e=this;this.history=new ni(this.history),vr(this,function(t){return t.history=e.history},!0)},markClean:function(){this.cleanGeneration=this.changeGeneration(!0)},changeGeneration:function(e){return e&&(this.history.lastOp=this.history.lastSelOp=this.history.lastOrigin=null),this.history.generation},isClean:function(e){return this.history.generation==(e||this.cleanGeneration)},getHistory:function(){return{done:Yr(this.history.done),undone:Yr(this.history.undone)}},setHistory:function(e){var t=this.history=new ni(this.history);t.done=Yr(e.done.slice(0),null,!0),t.undone=Yr(e.undone.slice(0),null,!0)},setGutterMarker:at(function(e,t,n){return Tn(this,e,"gutter",function(r){var i=r.gutterMarkers||(r.gutterMarkers={});return i[t]=n,!n&&be(i)&&(r.gutterMarkers=null),!0})}),clearGutter:at(function(e){var t=this;this.iter(function(n){n.gutterMarkers&&n.gutterMarkers[e]&&Tn(t,n,"gutter",function(){return n.gutterMarkers[e]=null,be(n.gutterMarkers)&&(n.gutterMarkers=null),!0})})}),lineInfo:function(e){var t;if(typeof e=="number"){if(!U(this,e)||(t=e,e=ye(this,e),!e))return null}else if(t=f(e),t==null)return null;return{line:t,handle:e,text:e.text,gutterMarkers:e.gutterMarkers,textClass:e.textClass,bgClass:e.bgClass,wrapClass:e.wrapClass,widgets:e.widgets}},addLineClass:at(function(e,t,n){return Tn(this,e,t=="gutter"?"gutter":"class",function(r){var i=t=="text"?"textClass":t=="background"?"bgClass":t=="gutter"?"gutterClass":"wrapClass";if(!r[i])r[i]=n;else{if(P(n).test(r[i]))return!1;r[i]+=" "+n}return!0})}),removeLineClass:at(function(e,t,n){return Tn(this,e,t=="gutter"?"gutter":"class",function(r){var i=t=="text"?"textClass":t=="background"?"bgClass":t=="gutter"?"gutterClass":"wrapClass",o=r[i];if(o)if(n==null)r[i]=null;else{var l=o.match(P(n));if(!l)return!1;var a=l.index+l[0].length;r[i]=o.slice(0,l.index)+(!l.index||a==o.length?"":" ")+o.slice(a)||null}else return!1;return!0})}),addLineWidget:at(function(e,t,n){return cu(this,e,t,n)}),removeLineWidget:function(e){e.clear()},markText:function(e,t,n){return $r(this,Ae(this,e),Ae(this,t),n,n&&n.type||"range")},setBookmark:function(e,t){var n={replacedWith:t&&(t.nodeType==null?t.widget:t),insertLeft:t&&t.insertLeft,clearWhenEmpty:!1,shared:t&&t.shared,handleMouseEvents:t&&t.handleMouseEvents};return e=Ae(this,e),$r(this,e,e,n,"bookmark")},findMarksAt:function(e){e=Ae(this,e);var t=[],n=ye(this,e.line).markedSpans;if(n)for(var r=0;r<n.length;++r){var i=n[r];(i.from==null||i.from<=e.ch)&&(i.to==null||i.to>=e.ch)&&t.push(i.marker.parent||i.marker)}return t},findMarks:function(e,t,n){e=Ae(this,e),t=Ae(this,t);var r=[],i=e.line;return this.iter(e.line,t.line+1,function(o){var l=o.markedSpans;if(l)for(var a=0;a<l.length;a++){var s=l[a];!(s.to!=null&&i==e.line&&e.ch>=s.to||s.from==null&&i!=e.line||s.from!=null&&i==t.line&&s.from>=t.ch)&&(!n||n(s.marker))&&r.push(s.marker.parent||s.marker)}++i}),r},getAllMarks:function(){var e=[];return this.iter(function(t){var n=t.markedSpans;if(n)for(var r=0;r<n.length;++r)n[r].from!=null&&e.push(n[r].marker)}),e},posFromIndex:function(e){var t,n=this.first,r=this.lineSeparator().length;return this.iter(function(i){var o=i.text.length+r;if(o>e)return t=e,!0;e-=o,++n}),Ae(this,B(n,t))},indexFromPos:function(e){e=Ae(this,e);var t=e.ch;if(e.line<this.first||e.ch<0)return 0;var n=this.lineSeparator().length;return this.iter(this.first,e.line,function(r){t+=r.text.length+n}),t},copy:function(e){var t=new Lt(un(this,this.first,this.first+this.size),this.modeOption,this.first,this.lineSep,this.direction);return t.scrollTop=this.scrollTop,t.scrollLeft=this.scrollLeft,t.sel=this.sel,t.extend=!1,e&&(t.history.undoDepth=this.history.undoDepth,t.setHistory(this.getHistory())),t},linkedDoc:function(e){e||(e={});var t=this.first,n=this.first+this.size;e.from!=null&&e.from>t&&(t=e.from),e.to!=null&&e.to<n&&(n=e.to);var r=new Lt(un(this,t,n),e.mode||this.modeOption,t,this.lineSep,this.direction);return e.sharedHist&&(r.history=this.history),(this.linked||(this.linked=[])).push({doc:r,sharedHist:e.sharedHist}),r.linked=[{doc:this,isParent:!0,sharedHist:e.sharedHist}],hu(r,_l(this)),r},unlinkDoc:function(e){if(e instanceof Ge&&(e=e.doc),this.linked)for(var t=0;t<this.linked.length;++t){var n=this.linked[t];if(n.doc==e){this.linked.splice(t,1),e.unlinkDoc(this),pu(_l(this));break}}if(e.history==this.history){var r=[e.id];vr(e,function(i){return r.push(i.id)},!0),e.history=new ni(null),e.history.done=Yr(this.history.done,r),e.history.undone=Yr(this.history.undone,r)}},iterLinkedDocs:function(e){vr(this,e)},getMode:function(){return this.mode},getEditor:function(){return this.cm},splitLines:function(e){return this.lineSep?e.split(this.lineSep):zt(e)},lineSeparator:function(){return this.lineSep||`
`},setDirection:at(function(e){e!="rtl"&&(e="ltr"),e!=this.direction&&(this.direction=e,this.iter(function(t){return t.order=null}),this.cm&&nu(this.cm))})}),Lt.prototype.eachLine=Lt.prototype.iter;var ql=0;function vu(e){var t=this;if(jl(t),!(Qe(t,e)||tr(t.display,e))){pt(e),k&&(ql=+new Date);var n=Lr(t,e,!0),r=e.dataTransfer.files;if(!(!n||t.isReadOnly()))if(r&&r.length&&window.FileReader&&window.File)for(var i=r.length,o=Array(i),l=0,a=function(){++l==i&&lt(t,function(){n=Ae(t.doc,n);var L={from:n,to:n,text:t.doc.splitLines(o.filter(function(H){return H!=null}).join(t.doc.lineSeparator())),origin:"paste"};Jr(t.doc,L),Dl(t.doc,pr(Ae(t.doc,n),Ae(t.doc,gr(L))))})()},s=function(L,H){if(t.options.allowDropFileTypes&&ve(t.options.allowDropFileTypes,L.type)==-1){a();return}var Z=new FileReader;Z.onerror=function(){return a()},Z.onload=function(){var ie=Z.result;if(/[\x00-\x08\x0e-\x1f]{2}/.test(ie)){a();return}o[H]=ie,a()},Z.readAsText(L)},u=0;u<r.length;u++)s(r[u],u);else{if(t.state.draggingText&&t.doc.sel.contains(n)>-1){t.state.draggingText(e),setTimeout(function(){return t.display.input.focus()},20);return}try{var h=e.dataTransfer.getData("Text");if(h){var x;if(t.state.draggingText&&!t.state.draggingText.copy&&(x=t.listSelections()),li(t.doc,pr(n,n)),x)for(var D=0;D<x.length;++D)Zr(t.doc,"",x[D].anchor,x[D].head,"drag");t.replaceSelection(h,"around","paste"),t.display.input.focus()}}catch{}}}}function mu(e,t){if(k&&(!e.state.draggingText||+new Date-ql<100)){ar(t);return}if(!(Qe(e,t)||tr(e.display,t))&&(t.dataTransfer.setData("Text",e.getSelection()),t.dataTransfer.effectAllowed="copyMove",t.dataTransfer.setDragImage&&!$)){var n=c("img",null,null,"position: fixed; left: 0; top: 0;");n.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",A&&(n.width=n.height=1,e.display.wrapper.appendChild(n),n._top=n.offsetTop),t.dataTransfer.setDragImage(n,0,0),A&&n.parentNode.removeChild(n)}}function xu(e,t){var n=Lr(e,t);if(n){var r=document.createDocumentFragment();Ri(e,n,r),e.display.dragCursor||(e.display.dragCursor=c("div",null,"CodeMirror-cursors CodeMirror-dragcursors"),e.display.lineSpace.insertBefore(e.display.dragCursor,e.display.cursorDiv)),G(e.display.dragCursor,r)}}function jl(e){e.display.dragCursor&&(e.display.lineSpace.removeChild(e.display.dragCursor),e.display.dragCursor=null)}function Kl(e){if(document.getElementsByClassName){for(var t=document.getElementsByClassName("CodeMirror"),n=[],r=0;r<t.length;r++){var i=t[r].CodeMirror;i&&n.push(i)}n.length&&n[0].operation(function(){for(var o=0;o<n.length;o++)e(n[o])})}}var Ul=!1;function yu(){Ul||(bu(),Ul=!0)}function bu(){var e;Se(window,"resize",function(){e==null&&(e=setTimeout(function(){e=null,Kl(ku)},100))}),Se(window,"blur",function(){return Kl(Ur)})}function ku(e){var t=e.display;t.cachedCharWidth=t.cachedTextHeight=t.cachedPaddingH=null,t.scrollbarsClipped=!1,e.setSize()}for(var xr={3:"Pause",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",106:"*",107:"=",109:"-",110:".",111:"/",145:"ScrollLock",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",224:"Mod",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"},An=0;An<10;An++)xr[An+48]=xr[An+96]=String(An);for(var ui=65;ui<=90;ui++)xr[ui]=String.fromCharCode(ui);for(var Nn=1;Nn<=12;Nn++)xr[Nn+111]=xr[Nn+63235]="F"+Nn;var nr={};nr.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"},nr.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"},nr.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars","Ctrl-O":"openLine"},nr.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]},nr.default=z?nr.macDefault:nr.pcDefault;function wu(e){var t=e.split(/-(?!$)/);e=t[t.length-1];for(var n,r,i,o,l=0;l<t.length-1;l++){var a=t[l];if(/^(cmd|meta|m)$/i.test(a))o=!0;else if(/^a(lt)?$/i.test(a))n=!0;else if(/^(c|ctrl|control)$/i.test(a))r=!0;else if(/^s(hift)?$/i.test(a))i=!0;else throw new Error("Unrecognized modifier name: "+a)}return n&&(e="Alt-"+e),r&&(e="Ctrl-"+e),o&&(e="Cmd-"+e),i&&(e="Shift-"+e),e}function Su(e){var t={};for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];if(/^(name|fallthrough|(de|at)tach)$/.test(n))continue;if(r=="..."){delete e[n];continue}for(var i=Ie(n.split(" "),wu),o=0;o<i.length;o++){var l=void 0,a=void 0;o==i.length-1?(a=i.join(" "),l=r):(a=i.slice(0,o+1).join(" "),l="...");var s=t[a];if(!s)t[a]=l;else if(s!=l)throw new Error("Inconsistent bindings for "+a)}delete e[n]}for(var u in t)e[u]=t[u];return e}function Vr(e,t,n,r){t=fi(t);var i=t.call?t.call(e,r):t[e];if(i===!1)return"nothing";if(i==="...")return"multi";if(i!=null&&n(i))return"handled";if(t.fallthrough){if(Object.prototype.toString.call(t.fallthrough)!="[object Array]")return Vr(e,t.fallthrough,n,r);for(var o=0;o<t.fallthrough.length;o++){var l=Vr(e,t.fallthrough[o],n,r);if(l)return l}}}function Gl(e){var t=typeof e=="string"?e:xr[e.keyCode];return t=="Ctrl"||t=="Alt"||t=="Shift"||t=="Mod"}function Xl(e,t,n){var r=e;return t.altKey&&r!="Alt"&&(e="Alt-"+e),(W?t.metaKey:t.ctrlKey)&&r!="Ctrl"&&(e="Ctrl-"+e),(W?t.ctrlKey:t.metaKey)&&r!="Mod"&&(e="Cmd-"+e),!n&&t.shiftKey&&r!="Shift"&&(e="Shift-"+e),e}function Yl(e,t){if(A&&e.keyCode==34&&e.char)return!1;var n=xr[e.keyCode];return n==null||e.altGraphKey?!1:(e.keyCode==3&&e.code&&(n=e.code),Xl(n,e,t))}function fi(e){return typeof e=="string"?nr[e]:e}function en(e,t){for(var n=e.doc.sel.ranges,r=[],i=0;i<n.length;i++){for(var o=t(n[i]);r.length&&ce(o.from,we(r).to)<=0;){var l=r.pop();if(ce(l.from,o.from)<0){o.from=l.from;break}}r.push(o)}At(e,function(){for(var a=r.length-1;a>=0;a--)Zr(e.doc,"",r[a].from,r[a].to,"+delete");Gr(e)})}function to(e,t,n){var r=Mt(e.text,t+n,n);return r<0||r>e.text.length?null:r}function ro(e,t,n){var r=to(e,t.ch,n);return r==null?null:new B(t.line,r,n<0?"after":"before")}function no(e,t,n,r,i){if(e){t.doc.direction=="rtl"&&(i=-i);var o=Re(n,t.doc.direction);if(o){var l=i<0?we(o):o[0],a=i<0==(l.level==1),s=a?"after":"before",u;if(l.level>0||t.doc.direction=="rtl"){var h=qr(t,n);u=i<0?n.text.length-1:0;var x=Qt(t,h,u).top;u=Pt(function(D){return Qt(t,h,D).top==x},i<0==(l.level==1)?l.from:l.to-1,u),s=="before"&&(u=to(n,u,1))}else u=i<0?l.to:l.from;return new B(r,u,s)}}return new B(r,i<0?n.text.length:0,i<0?"before":"after")}function Lu(e,t,n,r){var i=Re(t,e.doc.direction);if(!i)return ro(t,n,r);n.ch>=t.text.length?(n.ch=t.text.length,n.sticky="before"):n.ch<=0&&(n.ch=0,n.sticky="after");var o=lr(i,n.ch,n.sticky),l=i[o];if(e.doc.direction=="ltr"&&l.level%2==0&&(r>0?l.to>n.ch:l.from<n.ch))return ro(t,n,r);var a=function(ae,he){return to(t,ae instanceof B?ae.ch:ae,he)},s,u=function(ae){return e.options.lineWrapping?(s=s||qr(e,t),Vo(e,t,s,ae)):{begin:0,end:t.text.length}},h=u(n.sticky=="before"?a(n,-1):n.ch);if(e.doc.direction=="rtl"||l.level==1){var x=l.level==1==r<0,D=a(n,x?1:-1);if(D!=null&&(x?D<=l.to&&D<=h.end:D>=l.from&&D>=h.begin)){var L=x?"before":"after";return new B(n.line,D,L)}}var H=function(ae,he,se){for(var ge=function(Ke,st){return st?new B(n.line,a(Ke,1),"before"):new B(n.line,Ke,"after")};ae>=0&&ae<i.length;ae+=he){var Le=i[ae],ke=he>0==(Le.level!=1),Ee=ke?se.begin:a(se.end,-1);if(Le.from<=Ee&&Ee<Le.to||(Ee=ke?Le.from:a(Le.to,-1),se.begin<=Ee&&Ee<se.end))return ge(Ee,ke)}},Z=H(o+r,r,h);if(Z)return Z;var ie=r>0?h.end:a(h.begin,-1);return ie!=null&&!(r>0&&ie==t.text.length)&&(Z=H(r>0?0:i.length-1,r,u(ie)),Z)?Z:null}var En={selectAll:El,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),$e)},killLine:function(e){return en(e,function(t){if(t.empty()){var n=ye(e.doc,t.head.line).text.length;return t.head.ch==n&&t.head.line<e.lastLine()?{from:t.head,to:B(t.head.line+1,0)}:{from:t.head,to:B(t.head.line,n)}}else return{from:t.from(),to:t.to()}})},deleteLine:function(e){return en(e,function(t){return{from:B(t.from().line,0),to:Ae(e.doc,B(t.to().line+1,0))}})},delLineLeft:function(e){return en(e,function(t){return{from:B(t.from().line,0),to:t.from()}})},delWrappedLineLeft:function(e){return en(e,function(t){var n=e.charCoords(t.head,"div").top+5,r=e.coordsChar({left:0,top:n},"div");return{from:r,to:t.from()}})},delWrappedLineRight:function(e){return en(e,function(t){var n=e.charCoords(t.head,"div").top+5,r=e.coordsChar({left:e.display.lineDiv.offsetWidth+100,top:n},"div");return{from:t.from(),to:r}})},undo:function(e){return e.undo()},redo:function(e){return e.redo()},undoSelection:function(e){return e.undoSelection()},redoSelection:function(e){return e.redoSelection()},goDocStart:function(e){return e.extendSelection(B(e.firstLine(),0))},goDocEnd:function(e){return e.extendSelection(B(e.lastLine()))},goLineStart:function(e){return e.extendSelectionsBy(function(t){return Ql(e,t.head.line)},{origin:"+move",bias:1})},goLineStartSmart:function(e){return e.extendSelectionsBy(function(t){return Jl(e,t.head)},{origin:"+move",bias:1})},goLineEnd:function(e){return e.extendSelectionsBy(function(t){return Tu(e,t.head.line)},{origin:"+move",bias:-1})},goLineRight:function(e){return e.extendSelectionsBy(function(t){var n=e.cursorCoords(t.head,"div").top+5;return e.coordsChar({left:e.display.lineDiv.offsetWidth+100,top:n},"div")},Pe)},goLineLeft:function(e){return e.extendSelectionsBy(function(t){var n=e.cursorCoords(t.head,"div").top+5;return e.coordsChar({left:0,top:n},"div")},Pe)},goLineLeftSmart:function(e){return e.extendSelectionsBy(function(t){var n=e.cursorCoords(t.head,"div").top+5,r=e.coordsChar({left:0,top:n},"div");return r.ch<e.getLine(r.line).search(/\S/)?Jl(e,t.head):r},Pe)},goLineUp:function(e){return e.moveV(-1,"line")},goLineDown:function(e){return e.moveV(1,"line")},goPageUp:function(e){return e.moveV(-1,"page")},goPageDown:function(e){return e.moveV(1,"page")},goCharLeft:function(e){return e.moveH(-1,"char")},goCharRight:function(e){return e.moveH(1,"char")},goColumnLeft:function(e){return e.moveH(-1,"column")},goColumnRight:function(e){return e.moveH(1,"column")},goWordLeft:function(e){return e.moveH(-1,"word")},goGroupRight:function(e){return e.moveH(1,"group")},goGroupLeft:function(e){return e.moveH(-1,"group")},goWordRight:function(e){return e.moveH(1,"word")},delCharBefore:function(e){return e.deleteH(-1,"codepoint")},delCharAfter:function(e){return e.deleteH(1,"char")},delWordBefore:function(e){return e.deleteH(-1,"word")},delWordAfter:function(e){return e.deleteH(1,"word")},delGroupBefore:function(e){return e.deleteH(-1,"group")},delGroupAfter:function(e){return e.deleteH(1,"group")},indentAuto:function(e){return e.indentSelection("smart")},indentMore:function(e){return e.indentSelection("add")},indentLess:function(e){return e.indentSelection("subtract")},insertTab:function(e){return e.replaceSelection("    ")},insertSoftTab:function(e){for(var t=[],n=e.listSelections(),r=e.options.tabSize,i=0;i<n.length;i++){var o=n[i].from(),l=Fe(e.getLine(o.line),o.ch,r);t.push(et(r-l%r))}e.replaceSelections(t)},defaultTab:function(e){e.somethingSelected()?e.indentSelection("add"):e.execCommand("insertTab")},transposeChars:function(e){return At(e,function(){for(var t=e.listSelections(),n=[],r=0;r<t.length;r++)if(t[r].empty()){var i=t[r].head,o=ye(e.doc,i.line).text;if(o){if(i.ch==o.length&&(i=new B(i.line,i.ch-1)),i.ch>0)i=new B(i.line,i.ch+1),e.replaceRange(o.charAt(i.ch-1)+o.charAt(i.ch-2),B(i.line,i.ch-2),i,"+transpose");else if(i.line>e.doc.first){var l=ye(e.doc,i.line-1).text;l&&(i=new B(i.line,1),e.replaceRange(o.charAt(0)+e.doc.lineSeparator()+l.charAt(l.length-1),B(i.line-1,l.length-1),i,"+transpose"))}}n.push(new He(i,i))}e.setSelections(n)})},newlineAndIndent:function(e){return At(e,function(){for(var t=e.listSelections(),n=t.length-1;n>=0;n--)e.replaceRange(e.doc.lineSeparator(),t[n].anchor,t[n].head,"+input");t=e.listSelections();for(var r=0;r<t.length;r++)e.indentLine(t[r].from().line,null,!0);Gr(e)})},openLine:function(e){return e.replaceSelection(`
`,"start")},toggleOverwrite:function(e){return e.toggleOverwrite()}};function Ql(e,t){var n=ye(e.doc,t),r=qt(n);return r!=n&&(t=f(r)),no(!0,e,r,t,1)}function Tu(e,t){var n=ye(e.doc,t),r=ss(n);return r!=n&&(t=f(r)),no(!0,e,n,t,-1)}function Jl(e,t){var n=Ql(e,t.line),r=ye(e.doc,n.line),i=Re(r,e.doc.direction);if(!i||i[0].level==0){var o=Math.max(n.ch,r.text.search(/\S/)),l=t.line==n.line&&t.ch<=o&&t.ch;return B(n.line,l?0:o,n.sticky)}return n}function ci(e,t,n){if(typeof t=="string"&&(t=En[t],!t))return!1;e.display.input.ensurePolled();var r=e.display.shift,i=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),n&&(e.display.shift=!1),i=t(e)!=qe}finally{e.display.shift=r,e.state.suppressEdits=!1}return i}function Cu(e,t,n){for(var r=0;r<e.state.keyMaps.length;r++){var i=Vr(t,e.state.keyMaps[r],n,e);if(i)return i}return e.options.extraKeys&&Vr(t,e.options.extraKeys,n,e)||Vr(t,e.options.keyMap,n,e)}var Du=new Ce;function On(e,t,n,r){var i=e.state.keySeq;if(i){if(Gl(t))return"handled";if(/\'$/.test(t)?e.state.keySeq=null:Du.set(50,function(){e.state.keySeq==i&&(e.state.keySeq=null,e.display.input.reset())}),Zl(e,i+" "+t,n,r))return!0}return Zl(e,t,n,r)}function Zl(e,t,n,r){var i=Cu(e,t,r);return i=="multi"&&(e.state.keySeq=t),i=="handled"&&ot(e,"keyHandled",e,t,n),(i=="handled"||i=="multi")&&(pt(n),Wi(e)),!!i}function $l(e,t){var n=Yl(t,!0);return n?t.shiftKey&&!e.state.keySeq?On(e,"Shift-"+n,t,function(r){return ci(e,r,!0)})||On(e,n,t,function(r){if(typeof r=="string"?/^go[A-Z]/.test(r):r.motion)return ci(e,r)}):On(e,n,t,function(r){return ci(e,r)}):!1}function Mu(e,t,n){return On(e,"'"+n+"'",t,function(r){return ci(e,r,!0)})}var io=null;function Vl(e){var t=this;if(!(e.target&&e.target!=t.display.input.getField())&&(t.curOp.focus=y(fe(t)),!Qe(t,e))){k&&I<11&&e.keyCode==27&&(e.returnValue=!1);var n=e.keyCode;t.display.shift=n==16||e.shiftKey;var r=$l(t,e);A&&(io=r?n:null,!r&&n==88&&!Wn&&(z?e.metaKey:e.ctrlKey)&&t.replaceSelection("",null,"cut")),_&&!z&&!r&&n==46&&e.shiftKey&&!e.ctrlKey&&document.execCommand&&document.execCommand("cut"),n==18&&!/\bCodeMirror-crosshair\b/.test(t.display.lineDiv.className)&&Fu(t)}}function Fu(e){var t=e.display.lineDiv;j(t,"CodeMirror-crosshair");function n(r){(r.keyCode==18||!r.altKey)&&(V(t,"CodeMirror-crosshair"),ht(document,"keyup",n),ht(document,"mouseover",n))}Se(document,"keyup",n),Se(document,"mouseover",n)}function ea(e){e.keyCode==16&&(this.doc.sel.shift=!1),Qe(this,e)}function ta(e){var t=this;if(!(e.target&&e.target!=t.display.input.getField())&&!(tr(t.display,e)||Qe(t,e)||e.ctrlKey&&!e.altKey||z&&e.metaKey)){var n=e.keyCode,r=e.charCode;if(A&&n==io){io=null,pt(e);return}if(!(A&&(!e.which||e.which<10)&&$l(t,e))){var i=String.fromCharCode(r??n);i!="\b"&&(Mu(t,e,i)||t.display.input.onKeyPress(e))}}}var Au=400,oo=function(e,t,n){this.time=e,this.pos=t,this.button=n};oo.prototype.compare=function(e,t,n){return this.time+Au>e&&ce(t,this.pos)==0&&n==this.button};var Pn,In;function Nu(e,t){var n=+new Date;return In&&In.compare(n,e,t)?(Pn=In=null,"triple"):Pn&&Pn.compare(n,e,t)?(In=new oo(n,e,t),Pn=null,"double"):(Pn=new oo(n,e,t),In=null,"single")}function ra(e){var t=this,n=t.display;if(!(Qe(t,e)||n.activeTouch&&n.input.supportsTouch())){if(n.input.ensurePolled(),n.shift=e.shiftKey,tr(n,e)){Y||(n.scroller.draggable=!1,setTimeout(function(){return n.scroller.draggable=!0},100));return}if(!lo(t,e)){var r=Lr(t,e),i=Rt(e),o=r?Nu(r,i):"single";le(t).focus(),i==1&&t.state.selectingText&&t.state.selectingText(e),!(r&&Eu(t,i,r,o,e))&&(i==1?r?Pu(t,r,o,e):ln(e)==n.scroller&&pt(e):i==2?(r&&oi(t.doc,r),setTimeout(function(){return n.input.focus()},20)):i==3&&(J?t.display.input.onContextMenu(e):Hi(t)))}}}function Eu(e,t,n,r,i){var o="Click";return r=="double"?o="Double"+o:r=="triple"&&(o="Triple"+o),o=(t==1?"Left":t==2?"Middle":"Right")+o,On(e,Xl(o,i),i,function(l){if(typeof l=="string"&&(l=En[l]),!l)return!1;var a=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),a=l(e,n)!=qe}finally{e.state.suppressEdits=!1}return a})}function Ou(e,t,n){var r=e.getOption("configureMouse"),i=r?r(e,t,n):{};if(i.unit==null){var o=X?n.shiftKey&&n.metaKey:n.altKey;i.unit=o?"rectangle":t=="single"?"char":t=="double"?"word":"line"}return(i.extend==null||e.doc.extend)&&(i.extend=e.doc.extend||n.shiftKey),i.addNew==null&&(i.addNew=z?n.metaKey:n.ctrlKey),i.moveOnDrag==null&&(i.moveOnDrag=!(z?n.altKey:n.ctrlKey)),i}function Pu(e,t,n,r){k?setTimeout(xe(nl,e),0):e.curOp.focus=y(fe(e));var i=Ou(e,n,r),o=e.doc.sel,l;e.options.dragDrop&&xi&&!e.isReadOnly()&&n=="single"&&(l=o.contains(t))>-1&&(ce((l=o.ranges[l]).from(),t)<0||t.xRel>0)&&(ce(l.to(),t)>0||t.xRel<0)?Iu(e,r,t,i):zu(e,r,t,i)}function Iu(e,t,n,r){var i=e.display,o=!1,l=lt(e,function(u){Y&&(i.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:Hi(e)),ht(i.wrapper.ownerDocument,"mouseup",l),ht(i.wrapper.ownerDocument,"mousemove",a),ht(i.scroller,"dragstart",s),ht(i.scroller,"drop",l),o||(pt(u),r.addNew||oi(e.doc,n,null,null,r.extend),Y&&!$||k&&I==9?setTimeout(function(){i.wrapper.ownerDocument.body.focus({preventScroll:!0}),i.input.focus()},20):i.input.focus())}),a=function(u){o=o||Math.abs(t.clientX-u.clientX)+Math.abs(t.clientY-u.clientY)>=10},s=function(){return o=!0};Y&&(i.scroller.draggable=!0),e.state.draggingText=l,l.copy=!r.moveOnDrag,Se(i.wrapper.ownerDocument,"mouseup",l),Se(i.wrapper.ownerDocument,"mousemove",a),Se(i.scroller,"dragstart",s),Se(i.scroller,"drop",l),e.state.delayingBlurEvent=!0,setTimeout(function(){return i.input.focus()},20),i.scroller.dragDrop&&i.scroller.dragDrop()}function na(e,t,n){if(n=="char")return new He(t,t);if(n=="word")return e.findWordAt(t);if(n=="line")return new He(B(t.line,0),Ae(e.doc,B(t.line+1,0)));var r=n(e,t);return new He(r.from,r.to)}function zu(e,t,n,r){k&&Hi(e);var i=e.display,o=e.doc;pt(t);var l,a,s=o.sel,u=s.ranges;if(r.addNew&&!r.extend?(a=o.sel.contains(n),a>-1?l=u[a]:l=new He(n,n)):(l=o.sel.primary(),a=o.sel.primIndex),r.unit=="rectangle")r.addNew||(l=new He(n,n)),n=Lr(e,t,!0,!0),a=-1;else{var h=na(e,n,r.unit);r.extend?l=Vi(l,h.anchor,h.head,r.extend):l=h}r.addNew?a==-1?(a=u.length,gt(o,Kt(e,u.concat([l]),a),{scroll:!1,origin:"*mouse"})):u.length>1&&u[a].empty()&&r.unit=="char"&&!r.extend?(gt(o,Kt(e,u.slice(0,a).concat(u.slice(a+1)),0),{scroll:!1,origin:"*mouse"}),s=o.sel):eo(o,a,l,dt):(a=0,gt(o,new Ot([l],0),dt),s=o.sel);var x=n;function D(se){if(ce(x,se)!=0)if(x=se,r.unit=="rectangle"){for(var ge=[],Le=e.options.tabSize,ke=Fe(ye(o,n.line).text,n.ch,Le),Ee=Fe(ye(o,se.line).text,se.ch,Le),Ke=Math.min(ke,Ee),st=Math.max(ke,Ee),Xe=Math.min(n.line,se.line),Nt=Math.min(e.lastLine(),Math.max(n.line,se.line));Xe<=Nt;Xe++){var Tt=ye(o,Xe).text,tt=_e(Tt,Ke,Le);Ke==st?ge.push(new He(B(Xe,tt),B(Xe,tt))):Tt.length>tt&&ge.push(new He(B(Xe,tt),B(Xe,_e(Tt,st,Le))))}ge.length||ge.push(new He(n,n)),gt(o,Kt(e,s.ranges.slice(0,a).concat(ge),a),{origin:"*mouse",scroll:!1}),e.scrollIntoView(se)}else{var Ct=l,ft=na(e,se,r.unit),nt=Ct.anchor,rt;ce(ft.anchor,nt)>0?(rt=ft.head,nt=Wr(Ct.from(),ft.anchor)):(rt=ft.anchor,nt=wt(Ct.to(),ft.head));var Ze=s.ranges.slice(0);Ze[a]=Bu(e,new He(Ae(o,nt),rt)),gt(o,Kt(e,Ze,a),dt)}}var L=i.wrapper.getBoundingClientRect(),H=0;function Z(se){var ge=++H,Le=Lr(e,se,!0,r.unit=="rectangle");if(Le)if(ce(Le,x)!=0){e.curOp.focus=y(fe(e)),D(Le);var ke=Vn(i,o);(Le.line>=ke.to||Le.line<ke.from)&&setTimeout(lt(e,function(){H==ge&&Z(se)}),150)}else{var Ee=se.clientY<L.top?-20:se.clientY>L.bottom?20:0;Ee&&setTimeout(lt(e,function(){H==ge&&(i.scroller.scrollTop+=Ee,Z(se))}),50)}}function ie(se){e.state.selectingText=!1,H=1/0,se&&(pt(se),i.input.focus()),ht(i.wrapper.ownerDocument,"mousemove",ae),ht(i.wrapper.ownerDocument,"mouseup",he),o.history.lastSelOrigin=null}var ae=lt(e,function(se){se.buttons===0||!Rt(se)?ie(se):Z(se)}),he=lt(e,ie);e.state.selectingText=he,Se(i.wrapper.ownerDocument,"mousemove",ae),Se(i.wrapper.ownerDocument,"mouseup",he)}function Bu(e,t){var n=t.anchor,r=t.head,i=ye(e.doc,n.line);if(ce(n,r)==0&&n.sticky==r.sticky)return t;var o=Re(i);if(!o)return t;var l=lr(o,n.ch,n.sticky),a=o[l];if(a.from!=n.ch&&a.to!=n.ch)return t;var s=l+(a.from==n.ch==(a.level!=1)?0:1);if(s==0||s==o.length)return t;var u;if(r.line!=n.line)u=(r.line-n.line)*(e.doc.direction=="ltr"?1:-1)>0;else{var h=lr(o,r.ch,r.sticky),x=h-l||(r.ch-n.ch)*(a.level==1?-1:1);h==s-1||h==s?u=x<0:u=x>0}var D=o[s+(u?-1:0)],L=u==(D.level==1),H=L?D.from:D.to,Z=L?"after":"before";return n.ch==H&&n.sticky==Z?t:new He(new B(n.line,H,Z),r)}function ia(e,t,n,r){var i,o;if(t.touches)i=t.touches[0].clientX,o=t.touches[0].clientY;else try{i=t.clientX,o=t.clientY}catch{return!1}if(i>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;r&&pt(t);var l=e.display,a=l.lineDiv.getBoundingClientRect();if(o>a.bottom||!Ft(e,n))return kt(t);o-=a.top-l.viewOffset;for(var s=0;s<e.display.gutterSpecs.length;++s){var u=l.gutters.childNodes[s];if(u&&u.getBoundingClientRect().right>=i){var h=m(e.doc,o),x=e.display.gutterSpecs[s];return Ye(e,n,e,h,x.className,t),kt(t)}}}function lo(e,t){return ia(e,t,"gutterClick",!0)}function oa(e,t){tr(e.display,t)||Ru(e,t)||Qe(e,t,"contextmenu")||J||e.display.input.onContextMenu(t)}function Ru(e,t){return Ft(e,"gutterContextMenu")?ia(e,t,"gutterContextMenu",!1):!1}function la(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),gn(e)}var tn={toString:function(){return"CodeMirror.Init"}},aa={},di={};function Wu(e){var t=e.optionHandlers;function n(r,i,o,l){e.defaults[r]=i,o&&(t[r]=l?function(a,s,u){u!=tn&&o(a,s,u)}:o)}e.defineOption=n,e.Init=tn,n("value","",function(r,i){return r.setValue(i)},!0),n("mode",null,function(r,i){r.doc.modeOption=i,Ji(r)},!0),n("indentUnit",2,Ji,!0),n("indentWithTabs",!1),n("smartIndent",!0),n("tabSize",4,function(r){Sn(r),gn(r),St(r)},!0),n("lineSeparator",null,function(r,i){if(r.doc.lineSep=i,!!i){var o=[],l=r.doc.first;r.doc.iter(function(s){for(var u=0;;){var h=s.text.indexOf(i,u);if(h==-1)break;u=h+i.length,o.push(B(l,h))}l++});for(var a=o.length-1;a>=0;a--)Zr(r.doc,i,o[a],B(o[a].line,o[a].ch+i.length))}}),n("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\u202d\u202e\u2066\u2067\u2069\ufeff\ufff9-\ufffc]/g,function(r,i,o){r.state.specialChars=new RegExp(i.source+(i.test("    ")?"":"|    "),"g"),o!=tn&&r.refresh()}),n("specialCharPlaceholder",ps,function(r){return r.refresh()},!0),n("electricChars",!0),n("inputStyle",N?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),n("spellcheck",!1,function(r,i){return r.getInputField().spellcheck=i},!0),n("autocorrect",!1,function(r,i){return r.getInputField().autocorrect=i},!0),n("autocapitalize",!1,function(r,i){return r.getInputField().autocapitalize=i},!0),n("rtlMoveVisually",!q),n("wholeLineUpdateBefore",!0),n("theme","default",function(r){la(r),wn(r)},!0),n("keyMap","default",function(r,i,o){var l=fi(i),a=o!=tn&&fi(o);a&&a.detach&&a.detach(r,l),l.attach&&l.attach(r,a||null)}),n("extraKeys",null),n("configureMouse",null),n("lineWrapping",!1,_u,!0),n("gutters",[],function(r,i){r.display.gutterSpecs=Yi(i,r.options.lineNumbers),wn(r)},!0),n("fixedGutter",!0,function(r,i){r.display.gutters.style.left=i?zi(r.display)+"px":"0",r.refresh()},!0),n("coverGutterNextToScrollbar",!1,function(r){return Xr(r)},!0),n("scrollbarStyle","native",function(r){ul(r),Xr(r),r.display.scrollbars.setScrollTop(r.doc.scrollTop),r.display.scrollbars.setScrollLeft(r.doc.scrollLeft)},!0),n("lineNumbers",!1,function(r,i){r.display.gutterSpecs=Yi(r.options.gutters,i),wn(r)},!0),n("firstLineNumber",1,wn,!0),n("lineNumberFormatter",function(r){return r},wn,!0),n("showCursorWhenSelecting",!1,vn,!0),n("resetSelectionOnContextMenu",!0),n("lineWiseCopyCut",!0),n("pasteLinesPerSelection",!0),n("selectionsMayTouch",!1),n("readOnly",!1,function(r,i){i=="nocursor"&&(Ur(r),r.display.input.blur()),r.display.input.readOnlyChanged(i)}),n("screenReaderLabel",null,function(r,i){i=i===""?null:i,r.display.input.screenReaderLabelChanged(i)}),n("disableInput",!1,function(r,i){i||r.display.input.reset()},!0),n("dragDrop",!0,Hu),n("allowDropFileTypes",null),n("cursorBlinkRate",530),n("cursorScrollMargin",0),n("cursorHeight",1,vn,!0),n("singleCursorHeightPerLine",!0,vn,!0),n("workTime",100),n("workDelay",100),n("flattenSpans",!0,Sn,!0),n("addModeClass",!1,Sn,!0),n("pollInterval",100),n("undoDepth",200,function(r,i){return r.doc.history.undoDepth=i}),n("historyEventDelay",1250),n("viewportMargin",10,function(r){return r.refresh()},!0),n("maxHighlightLength",1e4,Sn,!0),n("moveInputWithCursor",!0,function(r,i){i||r.display.input.resetPosition()}),n("tabindex",null,function(r,i){return r.display.input.getField().tabIndex=i||""}),n("autofocus",null),n("direction","ltr",function(r,i){return r.doc.setDirection(i)},!0),n("phrases",null)}function Hu(e,t,n){var r=n&&n!=tn;if(!t!=!r){var i=e.display.dragFunctions,o=t?Se:ht;o(e.display.scroller,"dragstart",i.start),o(e.display.scroller,"dragenter",i.enter),o(e.display.scroller,"dragover",i.over),o(e.display.scroller,"dragleave",i.leave),o(e.display.scroller,"drop",i.drop)}}function _u(e){e.options.lineWrapping?(j(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(V(e.display.wrapper,"CodeMirror-wrap"),Ci(e)),Bi(e),St(e),gn(e),setTimeout(function(){return Xr(e)},100)}function Ge(e,t){var n=this;if(!(this instanceof Ge))return new Ge(e,t);this.options=t=t?Me(t):{},Me(aa,t,!1);var r=t.value;typeof r=="string"?r=new Lt(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var i=new Ge.inputStyles[t.inputStyle](this),o=this.display=new eu(e,r,i,t);o.wrapper.CodeMirror=this,la(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),ul(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new Ce,keySeq:null,specialChars:null},t.autofocus&&!N&&o.input.focus(),k&&I<11&&setTimeout(function(){return n.display.input.reset(!0)},20),qu(this),yu(),Mr(this),this.curOp.forceUpdate=!0,yl(this,r),t.autofocus&&!N||this.hasFocus()?setTimeout(function(){n.hasFocus()&&!n.state.focused&&_i(n)},20):Ur(this);for(var l in di)di.hasOwnProperty(l)&&di[l](this,t[l],tn);dl(this),t.finishInit&&t.finishInit(this);for(var a=0;a<ao.length;++a)ao[a](this);Fr(this),Y&&t.lineWrapping&&getComputedStyle(o.lineDiv).textRendering=="optimizelegibility"&&(o.lineDiv.style.textRendering="auto")}Ge.defaults=aa,Ge.optionHandlers=di;function qu(e){var t=e.display;Se(t.scroller,"mousedown",lt(e,ra)),k&&I<11?Se(t.scroller,"dblclick",lt(e,function(s){if(!Qe(e,s)){var u=Lr(e,s);if(!(!u||lo(e,s)||tr(e.display,s))){pt(s);var h=e.findWordAt(u);oi(e.doc,h.anchor,h.head)}}})):Se(t.scroller,"dblclick",function(s){return Qe(e,s)||pt(s)}),Se(t.scroller,"contextmenu",function(s){return oa(e,s)}),Se(t.input.getField(),"contextmenu",function(s){t.scroller.contains(s.target)||oa(e,s)});var n,r={end:0};function i(){t.activeTouch&&(n=setTimeout(function(){return t.activeTouch=null},1e3),r=t.activeTouch,r.end=+new Date)}function o(s){if(s.touches.length!=1)return!1;var u=s.touches[0];return u.radiusX<=1&&u.radiusY<=1}function l(s,u){if(u.left==null)return!0;var h=u.left-s.left,x=u.top-s.top;return h*h+x*x>400}Se(t.scroller,"touchstart",function(s){if(!Qe(e,s)&&!o(s)&&!lo(e,s)){t.input.ensurePolled(),clearTimeout(n);var u=+new Date;t.activeTouch={start:u,moved:!1,prev:u-r.end<=300?r:null},s.touches.length==1&&(t.activeTouch.left=s.touches[0].pageX,t.activeTouch.top=s.touches[0].pageY)}}),Se(t.scroller,"touchmove",function(){t.activeTouch&&(t.activeTouch.moved=!0)}),Se(t.scroller,"touchend",function(s){var u=t.activeTouch;if(u&&!tr(t,s)&&u.left!=null&&!u.moved&&new Date-u.start<300){var h=e.coordsChar(t.activeTouch,"page"),x;!u.prev||l(u,u.prev)?x=new He(h,h):!u.prev.prev||l(u,u.prev.prev)?x=e.findWordAt(h):x=new He(B(h.line,0),Ae(e.doc,B(h.line+1,0))),e.setSelection(x.anchor,x.head),e.focus(),pt(s)}i()}),Se(t.scroller,"touchcancel",i),Se(t.scroller,"scroll",function(){t.scroller.clientHeight&&(xn(e,t.scroller.scrollTop),Cr(e,t.scroller.scrollLeft,!0),Ye(e,"scroll",e))}),Se(t.scroller,"mousewheel",function(s){return gl(e,s)}),Se(t.scroller,"DOMMouseScroll",function(s){return gl(e,s)}),Se(t.wrapper,"scroll",function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0}),t.dragFunctions={enter:function(s){Qe(e,s)||ar(s)},over:function(s){Qe(e,s)||(xu(e,s),ar(s))},start:function(s){return mu(e,s)},drop:lt(e,vu),leave:function(s){Qe(e,s)||jl(e)}};var a=t.input.getField();Se(a,"keyup",function(s){return ea.call(e,s)}),Se(a,"keydown",lt(e,Vl)),Se(a,"keypress",lt(e,ta)),Se(a,"focus",function(s){return _i(e,s)}),Se(a,"blur",function(s){return Ur(e,s)})}var ao=[];Ge.defineInitHook=function(e){return ao.push(e)};function zn(e,t,n,r){var i=e.doc,o;n==null&&(n="add"),n=="smart"&&(i.mode.indent?o=fn(e,t).state:n="prev");var l=e.options.tabSize,a=ye(i,t),s=Fe(a.text,null,l);a.stateAfter&&(a.stateAfter=null);var u=a.text.match(/^\s*/)[0],h;if(!r&&!/\S/.test(a.text))h=0,n="not";else if(n=="smart"&&(h=i.mode.indent(o,a.text.slice(u.length),a.text),h==qe||h>150)){if(!r)return;n="prev"}n=="prev"?t>i.first?h=Fe(ye(i,t-1).text,null,l):h=0:n=="add"?h=s+e.options.indentUnit:n=="subtract"?h=s-e.options.indentUnit:typeof n=="number"&&(h=s+n),h=Math.max(0,h);var x="",D=0;if(e.options.indentWithTabs)for(var L=Math.floor(h/l);L;--L)D+=l,x+="    ";if(D<h&&(x+=et(h-D)),x!=u)return Zr(i,x,B(t,0),B(t,u.length),"+input"),a.stateAfter=null,!0;for(var H=0;H<i.sel.ranges.length;H++){var Z=i.sel.ranges[H];if(Z.head.line==t&&Z.head.ch<u.length){var ie=B(t,u.length);eo(i,H,new He(ie,ie));break}}}var Ut=null;function hi(e){Ut=e}function so(e,t,n,r,i){var o=e.doc;e.display.shift=!1,r||(r=o.sel);var l=+new Date-200,a=i=="paste"||e.state.pasteIncoming>l,s=zt(t),u=null;if(a&&r.ranges.length>1)if(Ut&&Ut.text.join(`
`)==t){if(r.ranges.length%Ut.text.length==0){u=[];for(var h=0;h<Ut.text.length;h++)u.push(o.splitLines(Ut.text[h]))}}else s.length==r.ranges.length&&e.options.pasteLinesPerSelection&&(u=Ie(s,function(ae){return[ae]}));for(var x=e.curOp.updateInput,D=r.ranges.length-1;D>=0;D--){var L=r.ranges[D],H=L.from(),Z=L.to();L.empty()&&(n&&n>0?H=B(H.line,H.ch-n):e.state.overwrite&&!a?Z=B(Z.line,Math.min(ye(o,Z.line).text.length,Z.ch+we(s).length)):a&&Ut&&Ut.lineWise&&Ut.text.join(`
`)==s.join(`
`)&&(H=Z=B(H.line,0)));var ie={from:H,to:Z,text:u?u[D%u.length]:s,origin:i||(a?"paste":e.state.cutIncoming>l?"cut":"+input")};Jr(e.doc,ie),ot(e,"inputRead",e,ie)}t&&!a&&ua(e,t),Gr(e),e.curOp.updateInput<2&&(e.curOp.updateInput=x),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function sa(e,t){var n=e.clipboardData&&e.clipboardData.getData("Text");if(n)return e.preventDefault(),!t.isReadOnly()&&!t.options.disableInput&&t.hasFocus()&&At(t,function(){return so(t,n,0,null,"paste")}),!0}function ua(e,t){if(!(!e.options.electricChars||!e.options.smartIndent))for(var n=e.doc.sel,r=n.ranges.length-1;r>=0;r--){var i=n.ranges[r];if(!(i.head.ch>100||r&&n.ranges[r-1].head.line==i.head.line)){var o=e.getModeAt(i.head),l=!1;if(o.electricChars){for(var a=0;a<o.electricChars.length;a++)if(t.indexOf(o.electricChars.charAt(a))>-1){l=zn(e,i.head.line,"smart");break}}else o.electricInput&&o.electricInput.test(ye(e.doc,i.head.line).text.slice(0,i.head.ch))&&(l=zn(e,i.head.line,"smart"));l&&ot(e,"electricInput",e,i.head.line)}}}function fa(e){for(var t=[],n=[],r=0;r<e.doc.sel.ranges.length;r++){var i=e.doc.sel.ranges[r].head.line,o={anchor:B(i,0),head:B(i+1,0)};n.push(o),t.push(e.getRange(o.anchor,o.head))}return{text:t,ranges:n}}function uo(e,t,n,r){e.setAttribute("autocorrect",n?"on":"off"),e.setAttribute("autocapitalize",r?"on":"off"),e.setAttribute("spellcheck",!!t)}function ca(){var e=c("textarea",null,null,"position: absolute; bottom: -1em; padding: 0; width: 1px; height: 1em; min-height: 1em; outline: none"),t=c("div",[e],null,"overflow: hidden; position: relative; width: 3px; height: 0px;");return Y?e.style.width="1000px":e.setAttribute("wrap","off"),w&&(e.style.border="1px solid black"),t}function ju(e){var t=e.optionHandlers,n=e.helpers={};e.prototype={constructor:e,focus:function(){le(this).focus(),this.display.input.focus()},setOption:function(r,i){var o=this.options,l=o[r];o[r]==i&&r!="mode"||(o[r]=i,t.hasOwnProperty(r)&&lt(this,t[r])(this,i,l),Ye(this,"optionChange",this,r))},getOption:function(r){return this.options[r]},getDoc:function(){return this.doc},addKeyMap:function(r,i){this.state.keyMaps[i?"push":"unshift"](fi(r))},removeKeyMap:function(r){for(var i=this.state.keyMaps,o=0;o<i.length;++o)if(i[o]==r||i[o].name==r)return i.splice(o,1),!0},addOverlay:yt(function(r,i){var o=r.token?r:e.getMode(this.options,r);if(o.startState)throw new Error("Overlays may not be stateful.");E(this.state.overlays,{mode:o,modeSpec:r,opaque:i&&i.opaque,priority:i&&i.priority||0},function(l){return l.priority}),this.state.modeGen++,St(this)}),removeOverlay:yt(function(r){for(var i=this.state.overlays,o=0;o<i.length;++o){var l=i[o].modeSpec;if(l==r||typeof r=="string"&&l.name==r){i.splice(o,1),this.state.modeGen++,St(this);return}}}),indentLine:yt(function(r,i,o){typeof i!="string"&&typeof i!="number"&&(i==null?i=this.options.smartIndent?"smart":"prev":i=i?"add":"subtract"),U(this.doc,r)&&zn(this,r,i,o)}),indentSelection:yt(function(r){for(var i=this.doc.sel.ranges,o=-1,l=0;l<i.length;l++){var a=i[l];if(a.empty())a.head.line>o&&(zn(this,a.head.line,r,!0),o=a.head.line,l==this.doc.sel.primIndex&&Gr(this));else{var s=a.from(),u=a.to(),h=Math.max(o,s.line);o=Math.min(this.lastLine(),u.line-(u.ch?0:1))+1;for(var x=h;x<o;++x)zn(this,x,r);var D=this.doc.sel.ranges;s.ch==0&&i.length==D.length&&D[l].from().ch>0&&eo(this.doc,l,new He(s,D[l].to()),$e)}}}),getTokenAt:function(r,i){return ko(this,r,i)},getLineTokens:function(r,i){return ko(this,B(r),i,!0)},getTokenTypeAt:function(r){r=Ae(this.doc,r);var i=xo(this,ye(this.doc,r.line)),o=0,l=(i.length-1)/2,a=r.ch,s;if(a==0)s=i[2];else for(;;){var u=o+l>>1;if((u?i[u*2-1]:0)>=a)l=u;else if(i[u*2+1]<a)o=u+1;else{s=i[u*2+2];break}}var h=s?s.indexOf("overlay "):-1;return h<0?s:h==0?null:s.slice(0,h-1)},getModeAt:function(r){var i=this.doc.mode;return i.innerMode?e.innerMode(i,this.getTokenAt(r).state).mode:i},getHelper:function(r,i){return this.getHelpers(r,i)[0]},getHelpers:function(r,i){var o=[];if(!n.hasOwnProperty(i))return o;var l=n[i],a=this.getModeAt(r);if(typeof a[i]=="string")l[a[i]]&&o.push(l[a[i]]);else if(a[i])for(var s=0;s<a[i].length;s++){var u=l[a[i][s]];u&&o.push(u)}else a.helperType&&l[a.helperType]?o.push(l[a.helperType]):l[a.name]&&o.push(l[a.name]);for(var h=0;h<l._global.length;h++){var x=l._global[h];x.pred(a,this)&&ve(o,x.val)==-1&&o.push(x.val)}return o},getStateAfter:function(r,i){var o=this.doc;return r=go(o,r??o.first+o.size-1),fn(this,r+1,i).state},cursorCoords:function(r,i){var o,l=this.doc.sel.primary();return r==null?o=l.head:typeof r=="object"?o=Ae(this.doc,r):o=r?l.from():l.to(),jt(this,o,i||"page")},charCoords:function(r,i){return Qn(this,Ae(this.doc,r),i||"page")},coordsChar:function(r,i){return r=Jo(this,r,i||"page"),Oi(this,r.left,r.top)},lineAtHeight:function(r,i){return r=Jo(this,{top:r,left:0},i||"page").top,m(this.doc,r+this.display.viewOffset)},heightAtLine:function(r,i,o){var l=!1,a;if(typeof r=="number"){var s=this.doc.first+this.doc.size-1;r<this.doc.first?r=this.doc.first:r>s&&(r=s,l=!0),a=ye(this.doc,r)}else a=r;return Yn(this,a,{top:0,left:0},i||"page",o||l).top+(l?this.doc.height-er(a):0)},defaultTextHeight:function(){return jr(this.display)},defaultCharWidth:function(){return Kr(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(r,i,o,l,a){var s=this.display;r=jt(this,Ae(this.doc,r));var u=r.bottom,h=r.left;if(i.style.position="absolute",i.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(i),s.sizer.appendChild(i),l=="over")u=r.top;else if(l=="above"||l=="near"){var x=Math.max(s.wrapper.clientHeight,this.doc.height),D=Math.max(s.sizer.clientWidth,s.lineSpace.clientWidth);(l=="above"||r.bottom+i.offsetHeight>x)&&r.top>i.offsetHeight?u=r.top-i.offsetHeight:r.bottom+i.offsetHeight<=x&&(u=r.bottom),h+i.offsetWidth>D&&(h=D-i.offsetWidth)}i.style.top=u+"px",i.style.left=i.style.right="",a=="right"?(h=s.sizer.clientWidth-i.offsetWidth,i.style.right="0px"):(a=="left"?h=0:a=="middle"&&(h=(s.sizer.clientWidth-i.offsetWidth)/2),i.style.left=h+"px"),o&&Hs(this,{left:h,top:u,right:h+i.offsetWidth,bottom:u+i.offsetHeight})},triggerOnKeyDown:yt(Vl),triggerOnKeyPress:yt(ta),triggerOnKeyUp:ea,triggerOnMouseDown:yt(ra),execCommand:function(r){if(En.hasOwnProperty(r))return En[r].call(null,this)},triggerElectric:yt(function(r){ua(this,r)}),findPosH:function(r,i,o,l){var a=1;i<0&&(a=-1,i=-i);for(var s=Ae(this.doc,r),u=0;u<i&&(s=fo(this.doc,s,a,o,l),!s.hitSide);++u);return s},moveH:yt(function(r,i){var o=this;this.extendSelectionsBy(function(l){return o.display.shift||o.doc.extend||l.empty()?fo(o.doc,l.head,r,i,o.options.rtlMoveVisually):r<0?l.from():l.to()},Pe)}),deleteH:yt(function(r,i){var o=this.doc.sel,l=this.doc;o.somethingSelected()?l.replaceSelection("",null,"+delete"):en(this,function(a){var s=fo(l,a.head,r,i,!1);return r<0?{from:s,to:a.head}:{from:a.head,to:s}})}),findPosV:function(r,i,o,l){var a=1,s=l;i<0&&(a=-1,i=-i);for(var u=Ae(this.doc,r),h=0;h<i;++h){var x=jt(this,u,"div");if(s==null?s=x.left:x.left=s,u=da(this,x,a,o),u.hitSide)break}return u},moveV:yt(function(r,i){var o=this,l=this.doc,a=[],s=!this.display.shift&&!l.extend&&l.sel.somethingSelected();if(l.extendSelectionsBy(function(h){if(s)return r<0?h.from():h.to();var x=jt(o,h.head,"div");h.goalColumn!=null&&(x.left=h.goalColumn),a.push(x.left);var D=da(o,x,r,i);return i=="page"&&h==l.sel.primary()&&ji(o,Qn(o,D,"div").top-x.top),D},Pe),a.length)for(var u=0;u<l.sel.ranges.length;u++)l.sel.ranges[u].goalColumn=a[u]}),findWordAt:function(r){var i=this.doc,o=ye(i,r.line).text,l=r.ch,a=r.ch;if(o){var s=this.getHelper(r,"wordChars");(r.sticky=="before"||a==o.length)&&l?--l:++a;for(var u=o.charAt(l),h=De(u,s)?function(x){return De(x,s)}:/\s/.test(u)?function(x){return/\s/.test(x)}:function(x){return!/\s/.test(x)&&!De(x)};l>0&&h(o.charAt(l-1));)--l;for(;a<o.length&&h(o.charAt(a));)++a}return new He(B(r.line,l),B(r.line,a))},toggleOverwrite:function(r){r!=null&&r==this.state.overwrite||((this.state.overwrite=!this.state.overwrite)?j(this.display.cursorDiv,"CodeMirror-overwrite"):V(this.display.cursorDiv,"CodeMirror-overwrite"),Ye(this,"overwriteToggle",this,this.state.overwrite))},hasFocus:function(){return this.display.input.getField()==y(fe(this))},isReadOnly:function(){return!!(this.options.readOnly||this.doc.cantEdit)},scrollTo:yt(function(r,i){mn(this,r,i)}),getScrollInfo:function(){var r=this.display.scroller;return{left:r.scrollLeft,top:r.scrollTop,height:r.scrollHeight-Yt(this)-this.display.barHeight,width:r.scrollWidth-Yt(this)-this.display.barWidth,clientHeight:Fi(this),clientWidth:wr(this)}},scrollIntoView:yt(function(r,i){r==null?(r={from:this.doc.sel.primary().head,to:null},i==null&&(i=this.options.cursorScrollMargin)):typeof r=="number"?r={from:B(r,0),to:null}:r.from==null&&(r={from:r,to:null}),r.to||(r.to=r.from),r.margin=i||0,r.from.line!=null?_s(this,r):ol(this,r.from,r.to,r.margin)}),setSize:yt(function(r,i){var o=this,l=function(s){return typeof s=="number"||/^\d+$/.test(String(s))?s+"px":s};r!=null&&(this.display.wrapper.style.width=l(r)),i!=null&&(this.display.wrapper.style.height=l(i)),this.options.lineWrapping&&Xo(this);var a=this.display.viewFrom;this.doc.iter(a,this.display.viewTo,function(s){if(s.widgets){for(var u=0;u<s.widgets.length;u++)if(s.widgets[u].noHScroll){dr(o,a,"widget");break}}++a}),this.curOp.forceUpdate=!0,Ye(this,"refresh",this)}),operation:function(r){return At(this,r)},startOperation:function(){return Mr(this)},endOperation:function(){return Fr(this)},refresh:yt(function(){var r=this.display.cachedTextHeight;St(this),this.curOp.forceUpdate=!0,gn(this),mn(this,this.doc.scrollLeft,this.doc.scrollTop),Gi(this.display),(r==null||Math.abs(r-jr(this.display))>.5||this.options.lineWrapping)&&Bi(this),Ye(this,"refresh",this)}),swapDoc:yt(function(r){var i=this.doc;return i.cm=null,this.state.selectingText&&this.state.selectingText(),yl(this,r),gn(this),this.display.input.reset(),mn(this,r.scrollLeft,r.scrollTop),this.curOp.forceScroll=!0,ot(this,"swapDoc",this,i),i}),phrase:function(r){var i=this.options.phrases;return i&&Object.prototype.hasOwnProperty.call(i,r)?i[r]:r},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},Bt(e),e.registerHelper=function(r,i,o){n.hasOwnProperty(r)||(n[r]=e[r]={_global:[]}),n[r][i]=o},e.registerGlobalHelper=function(r,i,o,l){e.registerHelper(r,i,l),n[r]._global.push({pred:o,val:l})}}function fo(e,t,n,r,i){var o=t,l=n,a=ye(e,t.line),s=i&&e.direction=="rtl"?-n:n;function u(){var he=t.line+s;return he<e.first||he>=e.first+e.size?!1:(t=new B(he,t.ch,t.sticky),a=ye(e,he))}function h(he){var se;if(r=="codepoint"){var ge=a.text.charCodeAt(t.ch+(n>0?0:-1));if(isNaN(ge))se=null;else{var Le=n>0?ge>=55296&&ge<56320:ge>=56320&&ge<57343;se=new B(t.line,Math.max(0,Math.min(a.text.length,t.ch+n*(Le?2:1))),-n)}}else i?se=Lu(e.cm,a,t,n):se=ro(a,t,n);if(se==null)if(!he&&u())t=no(i,e.cm,a,t.line,s);else return!1;else t=se;return!0}if(r=="char"||r=="codepoint")h();else if(r=="column")h(!0);else if(r=="word"||r=="group")for(var x=null,D=r=="group",L=e.cm&&e.cm.getHelper(t,"wordChars"),H=!0;!(n<0&&!h(!H));H=!1){var Z=a.text.charAt(t.ch)||`
`,ie=De(Z,L)?"w":D&&Z==`
`?"n":!D||/\s/.test(Z)?null:"p";if(D&&!H&&!ie&&(ie="s"),x&&x!=ie){n<0&&(n=1,h(),t.sticky="after");break}if(ie&&(x=ie),n>0&&!h(!H))break}var ae=ai(e,t,o,l,!0);return We(o,ae)&&(ae.hitSide=!0),ae}function da(e,t,n,r){var i=e.doc,o=t.left,l;if(r=="page"){var a=Math.min(e.display.wrapper.clientHeight,le(e).innerHeight||i(e).documentElement.clientHeight),s=Math.max(a-.5*jr(e.display),3);l=(n>0?t.bottom:t.top)+n*s}else r=="line"&&(l=n>0?t.bottom+3:t.top-3);for(var u;u=Oi(e,o,l),!!u.outside;){if(n<0?l<=0:l>=i.height){u.hitSide=!0;break}l+=n*5}return u}var je=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new Ce,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};je.prototype.init=function(e){var t=this,n=this,r=n.cm,i=n.div=e.lineDiv;i.contentEditable=!0,uo(i,r.options.spellcheck,r.options.autocorrect,r.options.autocapitalize);function o(a){for(var s=a.target;s;s=s.parentNode){if(s==i)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(s.className))break}return!1}Se(i,"paste",function(a){!o(a)||Qe(r,a)||sa(a,r)||I<=11&&setTimeout(lt(r,function(){return t.updateFromDOM()}),20)}),Se(i,"compositionstart",function(a){t.composing={data:a.data,done:!1}}),Se(i,"compositionupdate",function(a){t.composing||(t.composing={data:a.data,done:!1})}),Se(i,"compositionend",function(a){t.composing&&(a.data!=t.composing.data&&t.readFromDOMSoon(),t.composing.done=!0)}),Se(i,"touchstart",function(){return n.forceCompositionEnd()}),Se(i,"input",function(){t.composing||t.readFromDOMSoon()});function l(a){if(!(!o(a)||Qe(r,a))){if(r.somethingSelected())hi({lineWise:!1,text:r.getSelections()}),a.type=="cut"&&r.replaceSelection("",null,"cut");else if(r.options.lineWiseCopyCut){var s=fa(r);hi({lineWise:!0,text:s.text}),a.type=="cut"&&r.operation(function(){r.setSelections(s.ranges,0,$e),r.replaceSelection("",null,"cut")})}else return;if(a.clipboardData){a.clipboardData.clearData();var u=Ut.text.join(`
`);if(a.clipboardData.setData("Text",u),a.clipboardData.getData("Text")==u){a.preventDefault();return}}var h=ca(),x=h.firstChild;uo(x),r.display.lineSpace.insertBefore(h,r.display.lineSpace.firstChild),x.value=Ut.text.join(`
`);var D=y(Te(i));v(x),setTimeout(function(){r.display.lineSpace.removeChild(h),D.focus(),D==i&&n.showPrimarySelection()},50)}}Se(i,"copy",l),Se(i,"cut",l)},je.prototype.screenReaderLabelChanged=function(e){e?this.div.setAttribute("aria-label",e):this.div.removeAttribute("aria-label")},je.prototype.prepareSelection=function(){var e=rl(this.cm,!1);return e.focus=y(Te(this.div))==this.div,e},je.prototype.showSelection=function(e,t){!e||!this.cm.display.view.length||((e.focus||t)&&this.showPrimarySelection(),this.showMultipleSelections(e))},je.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},je.prototype.showPrimarySelection=function(){var e=this.getSelection(),t=this.cm,n=t.doc.sel.primary(),r=n.from(),i=n.to();if(t.display.viewTo==t.display.viewFrom||r.line>=t.display.viewTo||i.line<t.display.viewFrom){e.removeAllRanges();return}var o=pi(t,e.anchorNode,e.anchorOffset),l=pi(t,e.focusNode,e.focusOffset);if(!(o&&!o.bad&&l&&!l.bad&&ce(Wr(o,l),r)==0&&ce(wt(o,l),i)==0)){var a=t.display.view,s=r.line>=t.display.viewFrom&&ha(t,r)||{node:a[0].measure.map[2],offset:0},u=i.line<t.display.viewTo&&ha(t,i);if(!u){var h=a[a.length-1].measure,x=h.maps?h.maps[h.maps.length-1]:h.map;u={node:x[x.length-1],offset:x[x.length-2]-x[x.length-3]}}if(!s||!u){e.removeAllRanges();return}var D=e.rangeCount&&e.getRangeAt(0),L;try{L=C(s.node,s.offset,u.offset,u.node)}catch{}L&&(!_&&t.state.focused?(e.collapse(s.node,s.offset),L.collapsed||(e.removeAllRanges(),e.addRange(L))):(e.removeAllRanges(),e.addRange(L)),D&&e.anchorNode==null?e.addRange(D):_&&this.startGracePeriod()),this.rememberSelection()}},je.prototype.startGracePeriod=function(){var e=this;clearTimeout(this.gracePeriod),this.gracePeriod=setTimeout(function(){e.gracePeriod=!1,e.selectionChanged()&&e.cm.operation(function(){return e.cm.curOp.selectionChanged=!0})},20)},je.prototype.showMultipleSelections=function(e){G(this.cm.display.cursorDiv,e.cursors),G(this.cm.display.selectionDiv,e.selection)},je.prototype.rememberSelection=function(){var e=this.getSelection();this.lastAnchorNode=e.anchorNode,this.lastAnchorOffset=e.anchorOffset,this.lastFocusNode=e.focusNode,this.lastFocusOffset=e.focusOffset},je.prototype.selectionInEditor=function(){var e=this.getSelection();if(!e.rangeCount)return!1;var t=e.getRangeAt(0).commonAncestorContainer;return g(this.div,t)},je.prototype.focus=function(){this.cm.options.readOnly!="nocursor"&&((!this.selectionInEditor()||y(Te(this.div))!=this.div)&&this.showSelection(this.prepareSelection(),!0),this.div.focus())},je.prototype.blur=function(){this.div.blur()},je.prototype.getField=function(){return this.div},je.prototype.supportsTouch=function(){return!0},je.prototype.receivedFocus=function(){var e=this,t=this;this.selectionInEditor()?setTimeout(function(){return e.pollSelection()},20):At(this.cm,function(){return t.cm.curOp.selectionChanged=!0});function n(){t.cm.state.focused&&(t.pollSelection(),t.polling.set(t.cm.options.pollInterval,n))}this.polling.set(this.cm.options.pollInterval,n)},je.prototype.selectionChanged=function(){var e=this.getSelection();return e.anchorNode!=this.lastAnchorNode||e.anchorOffset!=this.lastAnchorOffset||e.focusNode!=this.lastFocusNode||e.focusOffset!=this.lastFocusOffset},je.prototype.pollSelection=function(){if(!(this.readDOMTimeout!=null||this.gracePeriod||!this.selectionChanged())){var e=this.getSelection(),t=this.cm;if(M&&S&&this.cm.display.gutterSpecs.length&&Ku(e.anchorNode)){this.cm.triggerOnKeyDown({type:"keydown",keyCode:8,preventDefault:Math.abs}),this.blur(),this.focus();return}if(!this.composing){this.rememberSelection();var n=pi(t,e.anchorNode,e.anchorOffset),r=pi(t,e.focusNode,e.focusOffset);n&&r&&At(t,function(){gt(t.doc,pr(n,r),$e),(n.bad||r.bad)&&(t.curOp.selectionChanged=!0)})}}},je.prototype.pollContent=function(){this.readDOMTimeout!=null&&(clearTimeout(this.readDOMTimeout),this.readDOMTimeout=null);var e=this.cm,t=e.display,n=e.doc.sel.primary(),r=n.from(),i=n.to();if(r.ch==0&&r.line>e.firstLine()&&(r=B(r.line-1,ye(e.doc,r.line-1).length)),i.ch==ye(e.doc,i.line).text.length&&i.line<e.lastLine()&&(i=B(i.line+1,0)),r.line<t.viewFrom||i.line>t.viewTo-1)return!1;var o,l,a;r.line==t.viewFrom||(o=Tr(e,r.line))==0?(l=f(t.view[0].line),a=t.view[0].node):(l=f(t.view[o].line),a=t.view[o-1].node.nextSibling);var s=Tr(e,i.line),u,h;if(s==t.view.length-1?(u=t.viewTo-1,h=t.lineDiv.lastChild):(u=f(t.view[s+1].line)-1,h=t.view[s+1].node.previousSibling),!a)return!1;for(var x=e.doc.splitLines(Uu(e,a,h,l,u)),D=$t(e.doc,B(l,0),B(u,ye(e.doc,u).text.length));x.length>1&&D.length>1;)if(we(x)==we(D))x.pop(),D.pop(),u--;else if(x[0]==D[0])x.shift(),D.shift(),l++;else break;for(var L=0,H=0,Z=x[0],ie=D[0],ae=Math.min(Z.length,ie.length);L<ae&&Z.charCodeAt(L)==ie.charCodeAt(L);)++L;for(var he=we(x),se=we(D),ge=Math.min(he.length-(x.length==1?L:0),se.length-(D.length==1?L:0));H<ge&&he.charCodeAt(he.length-H-1)==se.charCodeAt(se.length-H-1);)++H;if(x.length==1&&D.length==1&&l==r.line)for(;L&&L>r.ch&&he.charCodeAt(he.length-H-1)==se.charCodeAt(se.length-H-1);)L--,H++;x[x.length-1]=he.slice(0,he.length-H).replace(/^\u200b+/,""),x[0]=x[0].slice(L).replace(/\u200b+$/,"");var Le=B(l,L),ke=B(u,D.length?we(D).length-H:0);if(x.length>1||x[0]||ce(Le,ke))return Zr(e.doc,x,Le,ke,"+input"),!0},je.prototype.ensurePolled=function(){this.forceCompositionEnd()},je.prototype.reset=function(){this.forceCompositionEnd()},je.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},je.prototype.readFromDOMSoon=function(){var e=this;this.readDOMTimeout==null&&(this.readDOMTimeout=setTimeout(function(){if(e.readDOMTimeout=null,e.composing)if(e.composing.done)e.composing=null;else return;e.updateFromDOM()},80))},je.prototype.updateFromDOM=function(){var e=this;(this.cm.isReadOnly()||!this.pollContent())&&At(this.cm,function(){return St(e.cm)})},je.prototype.setUneditable=function(e){e.contentEditable="false"},je.prototype.onKeyPress=function(e){e.charCode==0||this.composing||(e.preventDefault(),this.cm.isReadOnly()||lt(this.cm,so)(this.cm,String.fromCharCode(e.charCode==null?e.keyCode:e.charCode),0))},je.prototype.readOnlyChanged=function(e){this.div.contentEditable=String(e!="nocursor")},je.prototype.onContextMenu=function(){},je.prototype.resetPosition=function(){},je.prototype.needsContentAttribute=!0;function ha(e,t){var n=Ai(e,t.line);if(!n||n.hidden)return null;var r=ye(e.doc,t.line),i=qo(n,r,t.line),o=Re(r,e.doc.direction),l="left";if(o){var a=lr(o,t.ch);l=a%2?"right":"left"}var s=Uo(i.map,t.ch,l);return s.offset=s.collapse=="right"?s.end:s.start,s}function Ku(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function rn(e,t){return t&&(e.bad=!0),e}function Uu(e,t,n,r,i){var o="",l=!1,a=e.doc.lineSeparator(),s=!1;function u(L){return function(H){return H.id==L}}function h(){l&&(o+=a,s&&(o+=a),l=s=!1)}function x(L){L&&(h(),o+=L)}function D(L){if(L.nodeType==1){var H=L.getAttribute("cm-text");if(H){x(H);return}var Z=L.getAttribute("cm-marker"),ie;if(Z){var ae=e.findMarks(B(r,0),B(i+1,0),u(+Z));ae.length&&(ie=ae[0].find(0))&&x($t(e.doc,ie.from,ie.to).join(a));return}if(L.getAttribute("contenteditable")=="false")return;var he=/^(pre|div|p|li|table|br)$/i.test(L.nodeName);if(!/^br$/i.test(L.nodeName)&&L.textContent.length==0)return;he&&h();for(var se=0;se<L.childNodes.length;se++)D(L.childNodes[se]);/^(pre|p)$/i.test(L.nodeName)&&(s=!0),he&&(l=!0)}else L.nodeType==3&&x(L.nodeValue.replace(/\u200b/g,"").replace(/\u00a0/g," "))}for(;D(t),t!=n;)t=t.nextSibling,s=!1;return o}function pi(e,t,n){var r;if(t==e.display.lineDiv){if(r=e.display.lineDiv.childNodes[n],!r)return rn(e.clipPos(B(e.display.viewTo-1)),!0);t=null,n=0}else for(r=t;;r=r.parentNode){if(!r||r==e.display.lineDiv)return null;if(r.parentNode&&r.parentNode==e.display.lineDiv)break}for(var i=0;i<e.display.view.length;i++){var o=e.display.view[i];if(o.node==r)return Gu(o,t,n)}}function Gu(e,t,n){var r=e.text.firstChild,i=!1;if(!t||!g(r,t))return rn(B(f(e.line),0),!0);if(t==r&&(i=!0,t=r.childNodes[n],n=0,!t)){var o=e.rest?we(e.rest):e.line;return rn(B(f(o),o.text.length),i)}var l=t.nodeType==3?t:null,a=t;for(!l&&t.childNodes.length==1&&t.firstChild.nodeType==3&&(l=t.firstChild,n&&(n=l.nodeValue.length));a.parentNode!=r;)a=a.parentNode;var s=e.measure,u=s.maps;function h(ie,ae,he){for(var se=-1;se<(u?u.length:0);se++)for(var ge=se<0?s.map:u[se],Le=0;Le<ge.length;Le+=3){var ke=ge[Le+2];if(ke==ie||ke==ae){var Ee=f(se<0?e.line:e.rest[se]),Ke=ge[Le]+he;return(he<0||ke!=ie)&&(Ke=ge[Le+(he?1:0)]),B(Ee,Ke)}}}var x=h(l,a,n);if(x)return rn(x,i);for(var D=a.nextSibling,L=l?l.nodeValue.length-n:0;D;D=D.nextSibling){if(x=h(D,D.firstChild,0),x)return rn(B(x.line,x.ch-L),i);L+=D.textContent.length}for(var H=a.previousSibling,Z=n;H;H=H.previousSibling){if(x=h(H,H.firstChild,-1),x)return rn(B(x.line,x.ch+Z),i);Z+=H.textContent.length}}var Ve=function(e){this.cm=e,this.prevInput="",this.pollingFast=!1,this.polling=new Ce,this.hasSelection=!1,this.composing=null,this.resetting=!1};Ve.prototype.init=function(e){var t=this,n=this,r=this.cm;this.createField(e);var i=this.textarea;e.wrapper.insertBefore(this.wrapper,e.wrapper.firstChild),w&&(i.style.width="0px"),Se(i,"input",function(){k&&I>=9&&t.hasSelection&&(t.hasSelection=null),n.poll()}),Se(i,"paste",function(l){Qe(r,l)||sa(l,r)||(r.state.pasteIncoming=+new Date,n.fastPoll())});function o(l){if(!Qe(r,l)){if(r.somethingSelected())hi({lineWise:!1,text:r.getSelections()});else if(r.options.lineWiseCopyCut){var a=fa(r);hi({lineWise:!0,text:a.text}),l.type=="cut"?r.setSelections(a.ranges,null,$e):(n.prevInput="",i.value=a.text.join(`
`),v(i))}else return;l.type=="cut"&&(r.state.cutIncoming=+new Date)}}Se(i,"cut",o),Se(i,"copy",o),Se(e.scroller,"paste",function(l){if(!(tr(e,l)||Qe(r,l))){if(!i.dispatchEvent){r.state.pasteIncoming=+new Date,n.focus();return}var a=new Event("paste");a.clipboardData=l.clipboardData,i.dispatchEvent(a)}}),Se(e.lineSpace,"selectstart",function(l){tr(e,l)||pt(l)}),Se(i,"compositionstart",function(){var l=r.getCursor("from");n.composing&&n.composing.range.clear(),n.composing={start:l,range:r.markText(l,r.getCursor("to"),{className:"CodeMirror-composing"})}}),Se(i,"compositionend",function(){n.composing&&(n.poll(),n.composing.range.clear(),n.composing=null)})},Ve.prototype.createField=function(e){this.wrapper=ca(),this.textarea=this.wrapper.firstChild;var t=this.cm.options;uo(this.textarea,t.spellcheck,t.autocorrect,t.autocapitalize)},Ve.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},Ve.prototype.prepareSelection=function(){var e=this.cm,t=e.display,n=e.doc,r=rl(e);if(e.options.moveInputWithCursor){var i=jt(e,n.sel.primary().head,"div"),o=t.wrapper.getBoundingClientRect(),l=t.lineDiv.getBoundingClientRect();r.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,i.top+l.top-o.top)),r.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,i.left+l.left-o.left))}return r},Ve.prototype.showSelection=function(e){var t=this.cm,n=t.display;G(n.cursorDiv,e.cursors),G(n.selectionDiv,e.selection),e.teTop!=null&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},Ve.prototype.reset=function(e){if(!(this.contextMenuPending||this.composing&&e)){var t=this.cm;if(this.resetting=!0,t.somethingSelected()){this.prevInput="";var n=t.getSelection();this.textarea.value=n,t.state.focused&&v(this.textarea),k&&I>=9&&(this.hasSelection=n)}else e||(this.prevInput=this.textarea.value="",k&&I>=9&&(this.hasSelection=null));this.resetting=!1}},Ve.prototype.getField=function(){return this.textarea},Ve.prototype.supportsTouch=function(){return!1},Ve.prototype.focus=function(){if(this.cm.options.readOnly!="nocursor"&&(!N||y(Te(this.textarea))!=this.textarea))try{this.textarea.focus()}catch{}},Ve.prototype.blur=function(){this.textarea.blur()},Ve.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},Ve.prototype.receivedFocus=function(){this.slowPoll()},Ve.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){e.poll(),e.cm.state.focused&&e.slowPoll()})},Ve.prototype.fastPoll=function(){var e=!1,t=this;t.pollingFast=!0;function n(){var r=t.poll();!r&&!e?(e=!0,t.polling.set(60,n)):(t.pollingFast=!1,t.slowPoll())}t.polling.set(20,n)},Ve.prototype.poll=function(){var e=this,t=this.cm,n=this.textarea,r=this.prevInput;if(this.contextMenuPending||this.resetting||!t.state.focused||ur(n)&&!r&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var i=n.value;if(i==r&&!t.somethingSelected())return!1;if(k&&I>=9&&this.hasSelection===i||z&&/[\uf700-\uf7ff]/.test(i))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var o=i.charCodeAt(0);if(o==8203&&!r&&(r="​"),o==8666)return this.reset(),this.cm.execCommand("undo")}for(var l=0,a=Math.min(r.length,i.length);l<a&&r.charCodeAt(l)==i.charCodeAt(l);)++l;return At(t,function(){so(t,i.slice(l),r.length-l,null,e.composing?"*compose":null),i.length>1e3||i.indexOf(`
`)>-1?n.value=e.prevInput="":e.prevInput=i,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},Ve.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},Ve.prototype.onKeyPress=function(){k&&I>=9&&(this.hasSelection=null),this.fastPoll()},Ve.prototype.onContextMenu=function(e){var t=this,n=t.cm,r=n.display,i=t.textarea;t.contextMenuPending&&t.contextMenuPending();var o=Lr(n,e),l=r.scroller.scrollTop;if(!o||A)return;var a=n.options.resetSelectionOnContextMenu;a&&n.doc.sel.contains(o)==-1&&lt(n,gt)(n.doc,pr(o),$e);var s=i.style.cssText,u=t.wrapper.style.cssText,h=t.wrapper.offsetParent.getBoundingClientRect();t.wrapper.style.cssText="position: static",i.style.cssText=`position: absolute; width: 30px; height: 30px;
      top: `+(e.clientY-h.top-5)+"px; left: "+(e.clientX-h.left-5)+`px;
      z-index: 1000; background: `+(k?"rgba(255, 255, 255, .05)":"transparent")+`;
      outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);`;var x;Y&&(x=i.ownerDocument.defaultView.scrollY),r.input.focus(),Y&&i.ownerDocument.defaultView.scrollTo(null,x),r.input.reset(),n.somethingSelected()||(i.value=t.prevInput=" "),t.contextMenuPending=L,r.selForContextMenu=n.doc.sel,clearTimeout(r.detectingSelectAll);function D(){if(i.selectionStart!=null){var Z=n.somethingSelected(),ie="​"+(Z?i.value:"");i.value="⇚",i.value=ie,t.prevInput=Z?"":"​",i.selectionStart=1,i.selectionEnd=ie.length,r.selForContextMenu=n.doc.sel}}function L(){if(t.contextMenuPending==L&&(t.contextMenuPending=!1,t.wrapper.style.cssText=u,i.style.cssText=s,k&&I<9&&r.scrollbars.setScrollTop(r.scroller.scrollTop=l),i.selectionStart!=null)){(!k||k&&I<9)&&D();var Z=0,ie=function(){r.selForContextMenu==n.doc.sel&&i.selectionStart==0&&i.selectionEnd>0&&t.prevInput=="​"?lt(n,El)(n):Z++<10?r.detectingSelectAll=setTimeout(ie,500):(r.selForContextMenu=null,r.input.reset())};r.detectingSelectAll=setTimeout(ie,200)}}if(k&&I>=9&&D(),J){ar(e);var H=function(){ht(window,"mouseup",H),setTimeout(L,20)};Se(window,"mouseup",H)}else setTimeout(L,50)},Ve.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled=e=="nocursor",this.textarea.readOnly=!!e},Ve.prototype.setUneditable=function(){},Ve.prototype.needsContentAttribute=!1;function Xu(e,t){if(t=t?Me(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),t.autofocus==null){var n=y(Te(e));t.autofocus=n==e||e.getAttribute("autofocus")!=null&&n==document.body}function r(){e.value=a.getValue()}var i;if(e.form&&(Se(e.form,"submit",r),!t.leaveSubmitMethodAlone)){var o=e.form;i=o.submit;try{var l=o.submit=function(){r(),o.submit=i,o.submit(),o.submit=l}}catch{}}t.finishInit=function(s){s.save=r,s.getTextArea=function(){return e},s.toTextArea=function(){s.toTextArea=isNaN,r(),e.parentNode.removeChild(s.getWrapperElement()),e.style.display="",e.form&&(ht(e.form,"submit",r),!t.leaveSubmitMethodAlone&&typeof e.form.submit=="function"&&(e.form.submit=i))}},e.style.display="none";var a=Ge(function(s){return e.parentNode.insertBefore(s,e.nextSibling)},t);return a}function Yu(e){e.off=ht,e.on=Se,e.wheelEventPixels=tu,e.Doc=Lt,e.splitLines=zt,e.countColumn=Fe,e.findColumn=_e,e.isWordChar=me,e.Pass=qe,e.signal=Ye,e.Line=Hr,e.changeEnd=gr,e.scrollbarModel=sl,e.Pos=B,e.cmpPos=ce,e.modes=Pr,e.mimeModes=Ht,e.resolveMode=Ir,e.getMode=zr,e.modeExtensions=fr,e.extendMode=Br,e.copyState=Gt,e.startState=Rr,e.innerMode=sn,e.commands=En,e.keyMap=nr,e.keyName=Yl,e.isModifierKey=Gl,e.lookupKey=Vr,e.normalizeKeyMap=Su,e.StringStream=Je,e.SharedTextMarker=Fn,e.TextMarker=mr,e.LineWidget=Mn,e.e_preventDefault=pt,e.e_stopPropagation=Er,e.e_stop=ar,e.addClass=j,e.contains=g,e.rmClass=V,e.keyNames=xr}Wu(Ge),ju(Ge);var Qu="iter insert remove copy getEditor constructor".split(" ");for(var gi in Lt.prototype)Lt.prototype.hasOwnProperty(gi)&&ve(Qu,gi)<0&&(Ge.prototype[gi]=(function(e){return function(){return e.apply(this.doc,arguments)}})(Lt.prototype[gi]));return Bt(Lt),Ge.inputStyles={textarea:Ve,contenteditable:je},Ge.defineMode=function(e){!Ge.defaults.mode&&e!="null"&&(Ge.defaults.mode=e),_t.apply(this,arguments)},Ge.defineMIME=kr,Ge.defineMode("null",function(){return{token:function(e){return e.skipToEnd()}}}),Ge.defineMIME("text/plain","null"),Ge.defineExtension=function(e,t){Ge.prototype[e]=t},Ge.defineDocExtension=function(e,t){Lt.prototype[e]=t},Ge.fromTextArea=Xu,Yu(Ge),Ge.version="5.65.18",Ge}))})(vi)),vi.exports}var $u=mt();const df=Ju($u);var ga={exports:{}},va;function Xa(){return va||(va=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineMode("css",function(J,P){var V=P.inline;P.propertyKeywords||(P=b.resolveMode("text/css"));var F=J.indentUnit,G=P.tokenHooks,c=P.documentTypes||{},T=P.mediaTypes||{},C=P.mediaFeatures||{},g=P.mediaValueKeywords||{},y=P.propertyKeywords||{},j=P.nonStandardPropertyKeywords||{},de=P.fontProperties||{},v=P.counterDescriptors||{},d=P.colorKeywords||{},fe=P.valueKeywords||{},Te=P.allowNested,le=P.lineComment,xe=P.supportsAtComponent===!0,Me=J.highlightNonStandardPropertyKeywords!==!1,Fe,Ce;function ve(E,ee){return Fe=ee,E}function Oe(E,ee){var K=E.next();if(G[K]){var ze=G[K](E,ee);if(ze!==!1)return ze}if(K=="@")return E.eatWhile(/[\w\\\-]/),ve("def",E.current());if(K=="="||(K=="~"||K=="|")&&E.eat("="))return ve(null,"compare");if(K=='"'||K=="'")return ee.tokenize=qe(K),ee.tokenize(E,ee);if(K=="#")return E.eatWhile(/[\w\\\-]/),ve("atom","hash");if(K=="!")return E.match(/^\s*\w*/),ve("keyword","important");if(/\d/.test(K)||K=="."&&E.eat(/\d/))return E.eatWhile(/[\w.%]/),ve("number","unit");if(K==="-"){if(/[\d.]/.test(E.peek()))return E.eatWhile(/[\w.%]/),ve("number","unit");if(E.match(/^-[\w\\\-]*/))return E.eatWhile(/[\w\\\-]/),E.match(/^\s*:/,!1)?ve("variable-2","variable-definition"):ve("variable-2","variable");if(E.match(/^\w+-/))return ve("meta","meta")}else return/[,+>*\/]/.test(K)?ve(null,"select-op"):K=="."&&E.match(/^-?[_a-z][_a-z0-9-]*/i)?ve("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(K)?ve(null,K):E.match(/^[\w-.]+(?=\()/)?(/^(url(-prefix)?|domain|regexp)$/i.test(E.current())&&(ee.tokenize=$e),ve("variable callee","variable")):/[\w\\\-]/.test(K)?(E.eatWhile(/[\w\\\-]/),ve("property","word")):ve(null,null)}function qe(E){return function(ee,K){for(var ze=!1,me;(me=ee.next())!=null;){if(me==E&&!ze){E==")"&&ee.backUp(1);break}ze=!ze&&me=="\\"}return(me==E||!ze&&E!=")")&&(K.tokenize=null),ve("string","string")}}function $e(E,ee){return E.next(),E.match(/^\s*[\"\')]/,!1)?ee.tokenize=null:ee.tokenize=qe(")"),ve(null,"(")}function dt(E,ee,K){this.type=E,this.indent=ee,this.prev=K}function Pe(E,ee,K,ze){return E.context=new dt(K,ee.indentation()+(ze===!1?0:F),E.context),K}function _e(E){return E.context.prev&&(E.context=E.context.prev),E.context.type}function Ue(E,ee,K){return Ie[K.context.type](E,ee,K)}function et(E,ee,K,ze){for(var me=ze||1;me>0;me--)K.context=K.context.prev;return Ue(E,ee,K)}function we(E){var ee=E.current().toLowerCase();fe.hasOwnProperty(ee)?Ce="atom":d.hasOwnProperty(ee)?Ce="keyword":Ce="variable"}var Ie={};return Ie.top=function(E,ee,K){if(E=="{")return Pe(K,ee,"block");if(E=="}"&&K.context.prev)return _e(K);if(xe&&/@component/i.test(E))return Pe(K,ee,"atComponentBlock");if(/^@(-moz-)?document$/i.test(E))return Pe(K,ee,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/i.test(E))return Pe(K,ee,"atBlock");if(/^@(font-face|counter-style)/i.test(E))return K.stateArg=E,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/i.test(E))return"keyframes";if(E&&E.charAt(0)=="@")return Pe(K,ee,"at");if(E=="hash")Ce="builtin";else if(E=="word")Ce="tag";else{if(E=="variable-definition")return"maybeprop";if(E=="interpolation")return Pe(K,ee,"interpolation");if(E==":")return"pseudo";if(Te&&E=="(")return Pe(K,ee,"parens")}return K.context.type},Ie.block=function(E,ee,K){if(E=="word"){var ze=ee.current().toLowerCase();return y.hasOwnProperty(ze)?(Ce="property","maybeprop"):j.hasOwnProperty(ze)?(Ce=Me?"string-2":"property","maybeprop"):Te?(Ce=ee.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(Ce+=" error","maybeprop")}else return E=="meta"?"block":!Te&&(E=="hash"||E=="qualifier")?(Ce="error","block"):Ie.top(E,ee,K)},Ie.maybeprop=function(E,ee,K){return E==":"?Pe(K,ee,"prop"):Ue(E,ee,K)},Ie.prop=function(E,ee,K){if(E==";")return _e(K);if(E=="{"&&Te)return Pe(K,ee,"propBlock");if(E=="}"||E=="{")return et(E,ee,K);if(E=="(")return Pe(K,ee,"parens");if(E=="hash"&&!/^#([0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/.test(ee.current()))Ce+=" error";else if(E=="word")we(ee);else if(E=="interpolation")return Pe(K,ee,"interpolation");return"prop"},Ie.propBlock=function(E,ee,K){return E=="}"?_e(K):E=="word"?(Ce="property","maybeprop"):K.context.type},Ie.parens=function(E,ee,K){return E=="{"||E=="}"?et(E,ee,K):E==")"?_e(K):E=="("?Pe(K,ee,"parens"):E=="interpolation"?Pe(K,ee,"interpolation"):(E=="word"&&we(ee),"parens")},Ie.pseudo=function(E,ee,K){return E=="meta"?"pseudo":E=="word"?(Ce="variable-3",K.context.type):Ue(E,ee,K)},Ie.documentTypes=function(E,ee,K){return E=="word"&&c.hasOwnProperty(ee.current())?(Ce="tag",K.context.type):Ie.atBlock(E,ee,K)},Ie.atBlock=function(E,ee,K){if(E=="(")return Pe(K,ee,"atBlock_parens");if(E=="}"||E==";")return et(E,ee,K);if(E=="{")return _e(K)&&Pe(K,ee,Te?"block":"top");if(E=="interpolation")return Pe(K,ee,"interpolation");if(E=="word"){var ze=ee.current().toLowerCase();ze=="only"||ze=="not"||ze=="and"||ze=="or"?Ce="keyword":T.hasOwnProperty(ze)?Ce="attribute":C.hasOwnProperty(ze)?Ce="property":g.hasOwnProperty(ze)?Ce="keyword":y.hasOwnProperty(ze)?Ce="property":j.hasOwnProperty(ze)?Ce=Me?"string-2":"property":fe.hasOwnProperty(ze)?Ce="atom":d.hasOwnProperty(ze)?Ce="keyword":Ce="error"}return K.context.type},Ie.atComponentBlock=function(E,ee,K){return E=="}"?et(E,ee,K):E=="{"?_e(K)&&Pe(K,ee,Te?"block":"top",!1):(E=="word"&&(Ce="error"),K.context.type)},Ie.atBlock_parens=function(E,ee,K){return E==")"?_e(K):E=="{"||E=="}"?et(E,ee,K,2):Ie.atBlock(E,ee,K)},Ie.restricted_atBlock_before=function(E,ee,K){return E=="{"?Pe(K,ee,"restricted_atBlock"):E=="word"&&K.stateArg=="@counter-style"?(Ce="variable","restricted_atBlock_before"):Ue(E,ee,K)},Ie.restricted_atBlock=function(E,ee,K){return E=="}"?(K.stateArg=null,_e(K)):E=="word"?(K.stateArg=="@font-face"&&!de.hasOwnProperty(ee.current().toLowerCase())||K.stateArg=="@counter-style"&&!v.hasOwnProperty(ee.current().toLowerCase())?Ce="error":Ce="property","maybeprop"):"restricted_atBlock"},Ie.keyframes=function(E,ee,K){return E=="word"?(Ce="variable","keyframes"):E=="{"?Pe(K,ee,"top"):Ue(E,ee,K)},Ie.at=function(E,ee,K){return E==";"?_e(K):E=="{"||E=="}"?et(E,ee,K):(E=="word"?Ce="tag":E=="hash"&&(Ce="builtin"),"at")},Ie.interpolation=function(E,ee,K){return E=="}"?_e(K):E=="{"||E==";"?et(E,ee,K):(E=="word"?Ce="variable":E!="variable"&&E!="("&&E!=")"&&(Ce="error"),"interpolation")},{startState:function(E){return{tokenize:null,state:V?"block":"top",stateArg:null,context:new dt(V?"block":"top",E||0,null)}},token:function(E,ee){if(!ee.tokenize&&E.eatSpace())return null;var K=(ee.tokenize||Oe)(E,ee);return K&&typeof K=="object"&&(Fe=K[1],K=K[0]),Ce=K,Fe!="comment"&&(ee.state=Ie[ee.state](Fe,E,ee)),Ce},indent:function(E,ee){var K=E.context,ze=ee&&ee.charAt(0),me=K.indent;return K.type=="prop"&&(ze=="}"||ze==")")&&(K=K.prev),K.prev&&(ze=="}"&&(K.type=="block"||K.type=="top"||K.type=="interpolation"||K.type=="restricted_atBlock")?(K=K.prev,me=K.indent):(ze==")"&&(K.type=="parens"||K.type=="atBlock_parens")||ze=="{"&&(K.type=="at"||K.type=="atBlock"))&&(me=Math.max(0,K.indent-F))),me},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:le,fold:"brace"}});function pe(J){for(var P={},V=0;V<J.length;++V)P[J[V].toLowerCase()]=!0;return P}var _=["domain","regexp","url","url-prefix"],te=pe(_),oe=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],Q=pe(oe),k=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid","orientation","device-pixel-ratio","min-device-pixel-ratio","max-device-pixel-ratio","pointer","any-pointer","hover","any-hover","prefers-color-scheme","dynamic-range","video-dynamic-range"],I=pe(k),Y=["landscape","portrait","none","coarse","fine","on-demand","hover","interlace","progressive","dark","light","standard","high"],ne=pe(Y),S=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","all","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","binding","bleed","block-size","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-content","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-gap","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-gap","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","inset","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","left","letter-spacing","line-break","line-height","line-height-step","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","place-content","place-items","place-self","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotate","rotation","rotation-point","row-gap","ruby-align","ruby-overhang","ruby-position","ruby-span","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-type","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-orientation","text-outline","text-overflow","text-rendering","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","touch-action","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-select","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","paint-order","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],R=pe(S),A=["accent-color","aspect-ratio","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","content-visibility","margin-block","margin-block-end","margin-block-start","margin-inline","margin-inline-end","margin-inline-start","overflow-anchor","overscroll-behavior","padding-block","padding-block-end","padding-block-start","padding-inline","padding-inline-end","padding-inline-start","scroll-snap-stop","scrollbar-3d-light-color","scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-track-color","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","shape-inside","zoom"],$=pe(A),ue=["font-display","font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],O=pe(ue),w=["additive-symbols","fallback","negative","pad","prefix","range","speak-as","suffix","symbols","system"],M=pe(w),N=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],z=pe(N),X=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","blur","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","brightness","bullets","button","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","conic-gradient","contain","content","contents","content-box","context-menu","continuous","contrast","copy","counter","counters","cover","crop","cross","crosshair","cubic-bezier","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","devanagari","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","drop-shadow","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","georgian","grayscale","graytext","grid","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hard-light","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","hue","hue-rotate","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","luminosity","malayalam","manipulation","match","matrix","matrix3d","media-play-button","media-slider","media-sliderthumb","media-volume-slider","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","multiple_mask_images","multiply","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","opacity","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeating-conic-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturate","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","self-start","self-end","semi-condensed","semi-expanded","separate","sepia","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","somali","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","square-button","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"],q=pe(X),p=_.concat(oe).concat(k).concat(Y).concat(S).concat(A).concat(N).concat(X);b.registerHelper("hintWords","css",p);function W(J,P){for(var V=!1,F;(F=J.next())!=null;){if(V&&F=="/"){P.tokenize=null;break}V=F=="*"}return["comment","comment"]}b.defineMIME("text/css",{documentTypes:te,mediaTypes:Q,mediaFeatures:I,mediaValueKeywords:ne,propertyKeywords:R,nonStandardPropertyKeywords:$,fontProperties:O,counterDescriptors:M,colorKeywords:z,valueKeywords:q,tokenHooks:{"/":function(J,P){return J.eat("*")?(P.tokenize=W,W(J,P)):!1}},name:"css"}),b.defineMIME("text/x-scss",{mediaTypes:Q,mediaFeatures:I,mediaValueKeywords:ne,propertyKeywords:R,nonStandardPropertyKeywords:$,colorKeywords:z,valueKeywords:q,fontProperties:O,allowNested:!0,lineComment:"//",tokenHooks:{"/":function(J,P){return J.eat("/")?(J.skipToEnd(),["comment","comment"]):J.eat("*")?(P.tokenize=W,W(J,P)):["operator","operator"]},":":function(J){return J.match(/^\s*\{/,!1)?[null,null]:!1},$:function(J){return J.match(/^[\w-]+/),J.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"]},"#":function(J){return J.eat("{")?[null,"interpolation"]:!1}},name:"css",helperType:"scss"}),b.defineMIME("text/x-less",{mediaTypes:Q,mediaFeatures:I,mediaValueKeywords:ne,propertyKeywords:R,nonStandardPropertyKeywords:$,colorKeywords:z,valueKeywords:q,fontProperties:O,allowNested:!0,lineComment:"//",tokenHooks:{"/":function(J,P){return J.eat("/")?(J.skipToEnd(),["comment","comment"]):J.eat("*")?(P.tokenize=W,W(J,P)):["operator","operator"]},"@":function(J){return J.eat("{")?[null,"interpolation"]:J.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/i,!1)?!1:(J.eatWhile(/[\w\\\-]/),J.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"])},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"}),b.defineMIME("text/x-gss",{documentTypes:te,mediaTypes:Q,mediaFeatures:I,propertyKeywords:R,nonStandardPropertyKeywords:$,fontProperties:O,counterDescriptors:M,colorKeywords:z,valueKeywords:q,supportsAtComponent:!0,tokenHooks:{"/":function(J,P){return J.eat("*")?(P.tokenize=W,W(J,P)):!1}},name:"css",helperType:"gss"})})})()),ga.exports}Xa();var ma={exports:{}},xa={exports:{}},ya;function Ya(){return ya||(ya=1,(function(ct,xt){(function(b){b(mt())})(function(b){var pe={autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0,caseFold:!0},_={autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1,allowMissingTagName:!1,caseFold:!1};b.defineMode("xml",function(te,oe){var Q=te.indentUnit,k={},I=oe.htmlMode?pe:_;for(var Y in I)k[Y]=I[Y];for(var Y in oe)k[Y]=oe[Y];var ne,S;function R(c,T){function C(j){return T.tokenize=j,j(c,T)}var g=c.next();if(g=="<")return c.eat("!")?c.eat("[")?c.match("CDATA[")?C(ue("atom","]]>")):null:c.match("--")?C(ue("comment","-->")):c.match("DOCTYPE",!0,!0)?(c.eatWhile(/[\w\._\-]/),C(O(1))):null:c.eat("?")?(c.eatWhile(/[\w\._\-]/),T.tokenize=ue("meta","?>"),"meta"):(ne=c.eat("/")?"closeTag":"openTag",T.tokenize=A,"tag bracket");if(g=="&"){var y;return c.eat("#")?c.eat("x")?y=c.eatWhile(/[a-fA-F\d]/)&&c.eat(";"):y=c.eatWhile(/[\d]/)&&c.eat(";"):y=c.eatWhile(/[\w\.\-:]/)&&c.eat(";"),y?"atom":"error"}else return c.eatWhile(/[^&<]/),null}R.isInText=!0;function A(c,T){var C=c.next();if(C==">"||C=="/"&&c.eat(">"))return T.tokenize=R,ne=C==">"?"endTag":"selfcloseTag","tag bracket";if(C=="=")return ne="equals",null;if(C=="<"){T.tokenize=R,T.state=X,T.tagName=T.tagStart=null;var g=T.tokenize(c,T);return g?g+" tag error":"tag error"}else return/[\'\"]/.test(C)?(T.tokenize=$(C),T.stringStartCol=c.column(),T.tokenize(c,T)):(c.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function $(c){var T=function(C,g){for(;!C.eol();)if(C.next()==c){g.tokenize=A;break}return"string"};return T.isInAttribute=!0,T}function ue(c,T){return function(C,g){for(;!C.eol();){if(C.match(T)){g.tokenize=R;break}C.next()}return c}}function O(c){return function(T,C){for(var g;(g=T.next())!=null;){if(g=="<")return C.tokenize=O(c+1),C.tokenize(T,C);if(g==">")if(c==1){C.tokenize=R;break}else return C.tokenize=O(c-1),C.tokenize(T,C)}return"meta"}}function w(c){return c&&c.toLowerCase()}function M(c,T,C){this.prev=c.context,this.tagName=T||"",this.indent=c.indented,this.startOfLine=C,(k.doNotIndent.hasOwnProperty(T)||c.context&&c.context.noIndent)&&(this.noIndent=!0)}function N(c){c.context&&(c.context=c.context.prev)}function z(c,T){for(var C;;){if(!c.context||(C=c.context.tagName,!k.contextGrabbers.hasOwnProperty(w(C))||!k.contextGrabbers[w(C)].hasOwnProperty(w(T))))return;N(c)}}function X(c,T,C){return c=="openTag"?(C.tagStart=T.column(),q):c=="closeTag"?p:X}function q(c,T,C){return c=="word"?(C.tagName=T.current(),S="tag",P):k.allowMissingTagName&&c=="endTag"?(S="tag bracket",P(c,T,C)):(S="error",q)}function p(c,T,C){if(c=="word"){var g=T.current();return C.context&&C.context.tagName!=g&&k.implicitlyClosed.hasOwnProperty(w(C.context.tagName))&&N(C),C.context&&C.context.tagName==g||k.matchClosing===!1?(S="tag",W):(S="tag error",J)}else return k.allowMissingTagName&&c=="endTag"?(S="tag bracket",W(c,T,C)):(S="error",J)}function W(c,T,C){return c!="endTag"?(S="error",W):(N(C),X)}function J(c,T,C){return S="error",W(c,T,C)}function P(c,T,C){if(c=="word")return S="attribute",V;if(c=="endTag"||c=="selfcloseTag"){var g=C.tagName,y=C.tagStart;return C.tagName=C.tagStart=null,c=="selfcloseTag"||k.autoSelfClosers.hasOwnProperty(w(g))?z(C,g):(z(C,g),C.context=new M(C,g,y==C.indented)),X}return S="error",P}function V(c,T,C){return c=="equals"?F:(k.allowMissing||(S="error"),P(c,T,C))}function F(c,T,C){return c=="string"?G:c=="word"&&k.allowUnquoted?(S="string",P):(S="error",P(c,T,C))}function G(c,T,C){return c=="string"?G:P(c,T,C)}return{startState:function(c){var T={tokenize:R,state:X,indented:c||0,tagName:null,tagStart:null,context:null};return c!=null&&(T.baseIndent=c),T},token:function(c,T){if(!T.tagName&&c.sol()&&(T.indented=c.indentation()),c.eatSpace())return null;ne=null;var C=T.tokenize(c,T);return(C||ne)&&C!="comment"&&(S=null,T.state=T.state(ne||C,c,T),S&&(C=S=="error"?C+" error":S)),C},indent:function(c,T,C){var g=c.context;if(c.tokenize.isInAttribute)return c.tagStart==c.indented?c.stringStartCol+1:c.indented+Q;if(g&&g.noIndent)return b.Pass;if(c.tokenize!=A&&c.tokenize!=R)return C?C.match(/^(\s*)/)[0].length:0;if(c.tagName)return k.multilineTagIndentPastTag!==!1?c.tagStart+c.tagName.length+2:c.tagStart+Q*(k.multilineTagIndentFactor||1);if(k.alignCDATA&&/<!\[CDATA\[/.test(T))return 0;var y=T&&/^<(\/)?([\w_:\.-]*)/.exec(T);if(y&&y[1])for(;g;)if(g.tagName==y[2]){g=g.prev;break}else if(k.implicitlyClosed.hasOwnProperty(w(g.tagName)))g=g.prev;else break;else if(y)for(;g;){var j=k.contextGrabbers[w(g.tagName)];if(j&&j.hasOwnProperty(w(y[2])))g=g.prev;else break}for(;g&&g.prev&&!g.startOfLine;)g=g.prev;return g?g.indent+Q:c.baseIndent||0},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml",skipAttribute:function(c){c.state==F&&(c.state=P)},xmlCurrentTag:function(c){return c.tagName?{name:c.tagName,close:c.type=="closeTag"}:null},xmlCurrentContext:function(c){for(var T=[],C=c.context;C;C=C.prev)T.push(C.tagName);return T.reverse()}}}),b.defineMIME("text/xml","xml"),b.defineMIME("application/xml","xml"),b.mimeModes.hasOwnProperty("text/html")||b.defineMIME("text/html",{name:"xml",htmlMode:!0})})})()),xa.exports}var ba={exports:{}},ka;function Qa(){return ka||(ka=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineMode("javascript",function(pe,_){var te=pe.indentUnit,oe=_.statementIndent,Q=_.jsonld,k=_.json||Q,I=_.trackScope!==!1,Y=_.typescript,ne=_.wordCharacters||/[\w$\xa1-\uffff]/,S=(function(){function f(it){return{type:it,style:"keyword"}}var m=f("keyword a"),U=f("keyword b"),re=f("keyword c"),B=f("keyword d"),ce=f("operator"),We={type:"atom",style:"atom"};return{if:f("if"),while:m,with:m,else:U,do:U,try:U,finally:U,return:B,break:B,continue:B,new:f("new"),delete:re,void:re,throw:re,debugger:f("debugger"),var:f("var"),const:f("var"),let:f("var"),function:f("function"),catch:f("catch"),for:f("for"),switch:f("switch"),case:f("case"),default:f("default"),in:ce,typeof:ce,instanceof:ce,true:We,false:We,null:We,undefined:We,NaN:We,Infinity:We,this:f("this"),class:f("class"),super:f("atom"),yield:re,export:f("export"),import:f("import"),extends:re,await:re}})(),R=/[+\-*&%=<>!?|~^@]/,A=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function $(f){for(var m=!1,U,re=!1;(U=f.next())!=null;){if(!m){if(U=="/"&&!re)return;U=="["?re=!0:re&&U=="]"&&(re=!1)}m=!m&&U=="\\"}}var ue,O;function w(f,m,U){return ue=f,O=U,m}function M(f,m){var U=f.next();if(U=='"'||U=="'")return m.tokenize=N(U),m.tokenize(f,m);if(U=="."&&f.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return w("number","number");if(U=="."&&f.match(".."))return w("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(U))return w(U);if(U=="="&&f.eat(">"))return w("=>","operator");if(U=="0"&&f.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return w("number","number");if(/\d/.test(U))return f.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),w("number","number");if(U=="/")return f.eat("*")?(m.tokenize=z,z(f,m)):f.eat("/")?(f.skipToEnd(),w("comment","comment")):Et(f,m,1)?($(f),f.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),w("regexp","string-2")):(f.eat("="),w("operator","operator",f.current()));if(U=="`")return m.tokenize=X,X(f,m);if(U=="#"&&f.peek()=="!")return f.skipToEnd(),w("meta","meta");if(U=="#"&&f.eatWhile(ne))return w("variable","property");if(U=="<"&&f.match("!--")||U=="-"&&f.match("->")&&!/\S/.test(f.string.slice(0,f.start)))return f.skipToEnd(),w("comment","comment");if(R.test(U))return(U!=">"||!m.lexical||m.lexical.type!=">")&&(f.eat("=")?(U=="!"||U=="=")&&f.eat("="):/[<>*+\-|&?]/.test(U)&&(f.eat(U),U==">"&&f.eat(U))),U=="?"&&f.eat(".")?w("."):w("operator","operator",f.current());if(ne.test(U)){f.eatWhile(ne);var re=f.current();if(m.lastType!="."){if(S.propertyIsEnumerable(re)){var B=S[re];return w(B.type,B.style,re)}if(re=="async"&&f.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return w("async","keyword",re)}return w("variable","variable",re)}}function N(f){return function(m,U){var re=!1,B;if(Q&&m.peek()=="@"&&m.match(A))return U.tokenize=M,w("jsonld-keyword","meta");for(;(B=m.next())!=null&&!(B==f&&!re);)re=!re&&B=="\\";return re||(U.tokenize=M),w("string","string")}}function z(f,m){for(var U=!1,re;re=f.next();){if(re=="/"&&U){m.tokenize=M;break}U=re=="*"}return w("comment","comment")}function X(f,m){for(var U=!1,re;(re=f.next())!=null;){if(!U&&(re=="`"||re=="$"&&f.eat("{"))){m.tokenize=M;break}U=!U&&re=="\\"}return w("quasi","string-2",f.current())}var q="([{}])";function p(f,m){m.fatArrowAt&&(m.fatArrowAt=null);var U=f.string.indexOf("=>",f.start);if(!(U<0)){if(Y){var re=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(f.string.slice(f.start,U));re&&(U=re.index)}for(var B=0,ce=!1,We=U-1;We>=0;--We){var it=f.string.charAt(We),wt=q.indexOf(it);if(wt>=0&&wt<3){if(!B){++We;break}if(--B==0){it=="("&&(ce=!0);break}}else if(wt>=3&&wt<6)++B;else if(ne.test(it))ce=!0;else if(/["'\/`]/.test(it))for(;;--We){if(We==0)return;var Wr=f.string.charAt(We-1);if(Wr==it&&f.string.charAt(We-2)!="\\"){We--;break}}else if(ce&&!B){++We;break}}ce&&!B&&(m.fatArrowAt=We)}}var W={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function J(f,m,U,re,B,ce){this.indented=f,this.column=m,this.type=U,this.prev=B,this.info=ce,re!=null&&(this.align=re)}function P(f,m){if(!I)return!1;for(var U=f.localVars;U;U=U.next)if(U.name==m)return!0;for(var re=f.context;re;re=re.prev)for(var U=re.vars;U;U=U.next)if(U.name==m)return!0}function V(f,m,U,re,B){var ce=f.cc;for(F.state=f,F.stream=B,F.marked=null,F.cc=ce,F.style=m,f.lexical.hasOwnProperty("align")||(f.lexical.align=!0);;){var We=ce.length?ce.pop():k?ve:Fe;if(We(U,re)){for(;ce.length&&ce[ce.length-1].lex;)ce.pop()();return F.marked?F.marked:U=="variable"&&P(f,re)?"variable-2":m}}}var F={state:null,marked:null,cc:null};function G(){for(var f=arguments.length-1;f>=0;f--)F.cc.push(arguments[f])}function c(){return G.apply(null,arguments),!0}function T(f,m){for(var U=m;U;U=U.next)if(U.name==f)return!0;return!1}function C(f){var m=F.state;if(F.marked="def",!!I){if(m.context){if(m.lexical.info=="var"&&m.context&&m.context.block){var U=g(f,m.context);if(U!=null){m.context=U;return}}else if(!T(f,m.localVars)){m.localVars=new de(f,m.localVars);return}}_.globalVars&&!T(f,m.globalVars)&&(m.globalVars=new de(f,m.globalVars))}}function g(f,m){if(m)if(m.block){var U=g(f,m.prev);return U?U==m.prev?m:new j(U,m.vars,!0):null}else return T(f,m.vars)?m:new j(m.prev,new de(f,m.vars),!1);else return null}function y(f){return f=="public"||f=="private"||f=="protected"||f=="abstract"||f=="readonly"}function j(f,m,U){this.prev=f,this.vars=m,this.block=U}function de(f,m){this.name=f,this.next=m}var v=new de("this",new de("arguments",null));function d(){F.state.context=new j(F.state.context,F.state.localVars,!1),F.state.localVars=v}function fe(){F.state.context=new j(F.state.context,F.state.localVars,!0),F.state.localVars=null}d.lex=fe.lex=!0;function Te(){F.state.localVars=F.state.context.vars,F.state.context=F.state.context.prev}Te.lex=!0;function le(f,m){var U=function(){var re=F.state,B=re.indented;if(re.lexical.type=="stat")B=re.lexical.indented;else for(var ce=re.lexical;ce&&ce.type==")"&&ce.align;ce=ce.prev)B=ce.indented;re.lexical=new J(B,F.stream.column(),f,null,re.lexical,m)};return U.lex=!0,U}function xe(){var f=F.state;f.lexical.prev&&(f.lexical.type==")"&&(f.indented=f.lexical.indented),f.lexical=f.lexical.prev)}xe.lex=!0;function Me(f){function m(U){return U==f?c():f==";"||U=="}"||U==")"||U=="]"?G():c(m)}return m}function Fe(f,m){return f=="var"?c(le("vardef",m),Er,Me(";"),xe):f=="keyword a"?c(le("form"),qe,Fe,xe):f=="keyword b"?c(le("form"),Fe,xe):f=="keyword d"?F.stream.match(/^\s*$/,!1)?c():c(le("stat"),dt,Me(";"),xe):f=="debugger"?c(Me(";")):f=="{"?c(le("}"),fe,Pt,xe,Te):f==";"?c():f=="if"?(F.state.lexical.info=="else"&&F.state.cc[F.state.cc.length-1]==xe&&F.state.cc.pop()(),c(le("form"),qe,Fe,xe,Or)):f=="function"?c(zt):f=="for"?c(le("form"),fe,Rn,Fe,Te,xe):f=="class"||Y&&m=="interface"?(F.marked="keyword",c(le("form",f=="class"?f:m),Pr,xe)):f=="variable"?Y&&m=="declare"?(F.marked="keyword",c(Fe)):Y&&(m=="module"||m=="enum"||m=="type")&&F.stream.match(/^\s*\w/,!1)?(F.marked="keyword",m=="enum"?c(ye):m=="type"?c(Wn,Me("operator"),Re,Me(";")):c(le("form"),kt,Me("{"),le("}"),Pt,xe,xe)):Y&&m=="namespace"?(F.marked="keyword",c(le("form"),ve,Fe,xe)):Y&&m=="abstract"?(F.marked="keyword",c(Fe)):c(le("stat"),ze):f=="switch"?c(le("form"),qe,Me("{"),le("}","switch"),fe,Pt,xe,xe,Te):f=="case"?c(ve,Me(":")):f=="default"?c(Me(":")):f=="catch"?c(le("form"),d,Ce,Fe,xe,Te):f=="export"?c(le("stat"),Ir,xe):f=="import"?c(le("stat"),fr,xe):f=="async"?c(Fe):m=="@"?c(ve,Fe):G(le("stat"),ve,Me(";"),xe)}function Ce(f){if(f=="(")return c(Wt,Me(")"))}function ve(f,m){return $e(f,m,!1)}function Oe(f,m){return $e(f,m,!0)}function qe(f){return f!="("?G():c(le(")"),dt,Me(")"),xe)}function $e(f,m,U){if(F.state.fatArrowAt==F.stream.start){var re=U?Ie:we;if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,Me("=>"),re,Te);if(f=="variable")return G(d,kt,Me("=>"),re,Te)}var B=U?_e:Pe;return W.hasOwnProperty(f)?c(B):f=="function"?c(zt,B):f=="class"||Y&&m=="interface"?(F.marked="keyword",c(le("form"),yi,xe)):f=="keyword c"||f=="async"?c(U?Oe:ve):f=="("?c(le(")"),dt,Me(")"),xe,B):f=="operator"||f=="spread"?c(U?Oe:ve):f=="["?c(le("]"),Je,xe,B):f=="{"?Mt(De,"}",null,B):f=="quasi"?G(Ue,B):f=="new"?c(E(U)):c()}function dt(f){return f.match(/[;\}\)\],]/)?G():G(ve)}function Pe(f,m){return f==","?c(dt):_e(f,m,!1)}function _e(f,m,U){var re=U==!1?Pe:_e,B=U==!1?ve:Oe;if(f=="=>")return c(d,U?Ie:we,Te);if(f=="operator")return/\+\+|--/.test(m)||Y&&m=="!"?c(re):Y&&m=="<"&&F.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?c(le(">"),Ne(Re,">"),xe,re):m=="?"?c(ve,Me(":"),B):c(B);if(f=="quasi")return G(Ue,re);if(f!=";"){if(f=="(")return Mt(Oe,")","call",re);if(f==".")return c(me,re);if(f=="[")return c(le("]"),dt,Me("]"),xe,re);if(Y&&m=="as")return F.marked="keyword",c(Re,re);if(f=="regexp")return F.state.lastType=F.marked="operator",F.stream.backUp(F.stream.pos-F.stream.start-1),c(B)}}function Ue(f,m){return f!="quasi"?G():m.slice(m.length-2)!="${"?c(Ue):c(dt,et)}function et(f){if(f=="}")return F.marked="string-2",F.state.tokenize=X,c(Ue)}function we(f){return p(F.stream,F.state),G(f=="{"?Fe:ve)}function Ie(f){return p(F.stream,F.state),G(f=="{"?Fe:Oe)}function E(f){return function(m){return m=="."?c(f?K:ee):m=="variable"&&Y?c(Ft,f?_e:Pe):G(f?Oe:ve)}}function ee(f,m){if(m=="target")return F.marked="keyword",c(Pe)}function K(f,m){if(m=="target")return F.marked="keyword",c(_e)}function ze(f){return f==":"?c(xe,Fe):G(Pe,Me(";"),xe)}function me(f){if(f=="variable")return F.marked="property",c()}function De(f,m){if(f=="async")return F.marked="property",c(De);if(f=="variable"||F.style=="keyword"){if(F.marked="property",m=="get"||m=="set")return c(be);var U;return Y&&F.state.fatArrowAt==F.stream.start&&(U=F.stream.match(/^\s*:\s*/,!1))&&(F.state.fatArrowAt=F.stream.pos+U[0].length),c(Be)}else{if(f=="number"||f=="string")return F.marked=Q?"property":F.style+" property",c(Be);if(f=="jsonld-keyword")return c(Be);if(Y&&y(m))return F.marked="keyword",c(De);if(f=="[")return c(ve,or,Me("]"),Be);if(f=="spread")return c(Oe,Be);if(m=="*")return F.marked="keyword",c(De);if(f==":")return G(Be)}}function be(f){return f!="variable"?G(Be):(F.marked="property",c(zt))}function Be(f){if(f==":")return c(Oe);if(f=="(")return G(zt)}function Ne(f,m,U){function re(B,ce){if(U?U.indexOf(B)>-1:B==","){var We=F.state.lexical;return We.info=="call"&&(We.pos=(We.pos||0)+1),c(function(it,wt){return it==m||wt==m?G():G(f)},re)}return B==m||ce==m?c():U&&U.indexOf(";")>-1?G(f):c(Me(m))}return function(B,ce){return B==m||ce==m?c():G(f,re)}}function Mt(f,m,U){for(var re=3;re<arguments.length;re++)F.cc.push(arguments[re]);return c(le(m,U),Ne(f,m),xe)}function Pt(f){return f=="}"?c():G(Fe,Pt)}function or(f,m){if(Y){if(f==":")return c(Re);if(m=="?")return c(or)}}function br(f,m){if(Y&&(f==":"||m=="in"))return c(Re)}function lr(f){if(Y&&f==":")return F.stream.match(/^\s*\w+\s+is\b/,!1)?c(ve,mi,Re):c(Re)}function mi(f,m){if(m=="is")return F.marked="keyword",c()}function Re(f,m){if(m=="keyof"||m=="typeof"||m=="infer"||m=="readonly")return F.marked="keyword",c(m=="typeof"?Oe:Re);if(f=="variable"||m=="void")return F.marked="type",c(It);if(m=="|"||m=="&")return c(Re);if(f=="string"||f=="number"||f=="atom")return c(It);if(f=="[")return c(le("]"),Ne(Re,"]",","),xe,It);if(f=="{")return c(le("}"),Se,xe,It);if(f=="(")return c(Ne(Qe,")"),Bn,It);if(f=="<")return c(Ne(Re,">"),Re);if(f=="quasi")return G(ht,It)}function Bn(f){if(f=="=>")return c(Re)}function Se(f){return f.match(/[\}\)\]]/)?c():f==","||f==";"?c(Se):G(Zt,Se)}function Zt(f,m){if(f=="variable"||F.style=="keyword")return F.marked="property",c(Zt);if(m=="?"||f=="number"||f=="string")return c(Zt);if(f==":")return c(Re);if(f=="[")return c(Me("variable"),br,Me("]"),Zt);if(f=="(")return G(ur,Zt);if(!f.match(/[;\}\)\],]/))return c()}function ht(f,m){return f!="quasi"?G():m.slice(m.length-2)!="${"?c(ht):c(Re,Ye)}function Ye(f){if(f=="}")return F.marked="string-2",F.state.tokenize=X,c(ht)}function Qe(f,m){return f=="variable"&&F.stream.match(/^\s*[?:]/,!1)||m=="?"?c(Qe):f==":"?c(Re):f=="spread"?c(Qe):G(Re)}function It(f,m){if(m=="<")return c(le(">"),Ne(Re,">"),xe,It);if(m=="|"||f=="."||m=="&")return c(Re);if(f=="[")return c(Re,Me("]"),It);if(m=="extends"||m=="implements")return F.marked="keyword",c(Re);if(m=="?")return c(Re,Me(":"),Re)}function Ft(f,m){if(m=="<")return c(le(">"),Ne(Re,">"),xe,It)}function Bt(){return G(Re,pt)}function pt(f,m){if(m=="=")return c(Re)}function Er(f,m){return m=="enum"?(F.marked="keyword",c(ye)):G(kt,or,Rt,xi)}function kt(f,m){if(Y&&y(m))return F.marked="keyword",c(kt);if(f=="variable")return C(m),c();if(f=="spread")return c(kt);if(f=="[")return Mt(ln,"]");if(f=="{")return Mt(ar,"}")}function ar(f,m){return f=="variable"&&!F.stream.match(/^\s*:/,!1)?(C(m),c(Rt)):(f=="variable"&&(F.marked="property"),f=="spread"?c(kt):f=="}"?G():f=="["?c(ve,Me("]"),Me(":"),ar):c(Me(":"),kt,Rt))}function ln(){return G(kt,Rt)}function Rt(f,m){if(m=="=")return c(Oe)}function xi(f){if(f==",")return c(Er)}function Or(f,m){if(f=="keyword b"&&m=="else")return c(le("form","else"),Fe,xe)}function Rn(f,m){if(m=="await")return c(Rn);if(f=="(")return c(le(")"),an,xe)}function an(f){return f=="var"?c(Er,sr):f=="variable"?c(sr):G(sr)}function sr(f,m){return f==")"?c():f==";"?c(sr):m=="in"||m=="of"?(F.marked="keyword",c(ve,sr)):G(ve,sr)}function zt(f,m){if(m=="*")return F.marked="keyword",c(zt);if(f=="variable")return C(m),c(zt);if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,lr,Fe,Te);if(Y&&m=="<")return c(le(">"),Ne(Bt,">"),xe,zt)}function ur(f,m){if(m=="*")return F.marked="keyword",c(ur);if(f=="variable")return C(m),c(ur);if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,lr,Te);if(Y&&m=="<")return c(le(">"),Ne(Bt,">"),xe,ur)}function Wn(f,m){if(f=="keyword"||f=="variable")return F.marked="type",c(Wn);if(m=="<")return c(le(">"),Ne(Bt,">"),xe)}function Wt(f,m){return m=="@"&&c(ve,Wt),f=="spread"?c(Wt):Y&&y(m)?(F.marked="keyword",c(Wt)):Y&&f=="this"?c(or,Rt):G(kt,or,Rt)}function yi(f,m){return f=="variable"?Pr(f,m):Ht(f,m)}function Pr(f,m){if(f=="variable")return C(m),c(Ht)}function Ht(f,m){if(m=="<")return c(le(">"),Ne(Bt,">"),xe,Ht);if(m=="extends"||m=="implements"||Y&&f==",")return m=="implements"&&(F.marked="keyword"),c(Y?Re:ve,Ht);if(f=="{")return c(le("}"),_t,xe)}function _t(f,m){if(f=="async"||f=="variable"&&(m=="static"||m=="get"||m=="set"||Y&&y(m))&&F.stream.match(/^\s+#?[\w$\xa1-\uffff]/,!1))return F.marked="keyword",c(_t);if(f=="variable"||F.style=="keyword")return F.marked="property",c(kr,_t);if(f=="number"||f=="string")return c(kr,_t);if(f=="[")return c(ve,or,Me("]"),kr,_t);if(m=="*")return F.marked="keyword",c(_t);if(Y&&f=="(")return G(ur,_t);if(f==";"||f==",")return c(_t);if(f=="}")return c();if(m=="@")return c(ve,_t)}function kr(f,m){if(m=="!"||m=="?")return c(kr);if(f==":")return c(Re,Rt);if(m=="=")return c(Oe);var U=F.state.lexical.prev,re=U&&U.info=="interface";return G(re?ur:zt)}function Ir(f,m){return m=="*"?(F.marked="keyword",c(Rr,Me(";"))):m=="default"?(F.marked="keyword",c(ve,Me(";"))):f=="{"?c(Ne(zr,"}"),Rr,Me(";")):G(Fe)}function zr(f,m){if(m=="as")return F.marked="keyword",c(Me("variable"));if(f=="variable")return G(Oe,zr)}function fr(f){return f=="string"?c():f=="("?G(ve):f=="."?G(Pe):G(Br,Gt,Rr)}function Br(f,m){return f=="{"?Mt(Br,"}"):(f=="variable"&&C(m),m=="*"&&(F.marked="keyword"),c(sn))}function Gt(f){if(f==",")return c(Br,Gt)}function sn(f,m){if(m=="as")return F.marked="keyword",c(Br)}function Rr(f,m){if(m=="from")return F.marked="keyword",c(ve)}function Je(f){return f=="]"?c():G(Ne(Oe,"]"))}function ye(){return G(le("form"),kt,Me("{"),le("}"),Ne($t,"}"),xe,xe)}function $t(){return G(kt,Rt)}function un(f,m){return f.lastType=="operator"||f.lastType==","||R.test(m.charAt(0))||/[,.]/.test(m.charAt(0))}function Et(f,m,U){return m.tokenize==M&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(m.lastType)||m.lastType=="quasi"&&/\{\s*$/.test(f.string.slice(0,f.pos-(U||0)))}return{startState:function(f){var m={tokenize:M,lastType:"sof",cc:[],lexical:new J((f||0)-te,0,"block",!1),localVars:_.localVars,context:_.localVars&&new j(null,null,!1),indented:f||0};return _.globalVars&&typeof _.globalVars=="object"&&(m.globalVars=_.globalVars),m},token:function(f,m){if(f.sol()&&(m.lexical.hasOwnProperty("align")||(m.lexical.align=!1),m.indented=f.indentation(),p(f,m)),m.tokenize!=z&&f.eatSpace())return null;var U=m.tokenize(f,m);return ue=="comment"?U:(m.lastType=ue=="operator"&&(O=="++"||O=="--")?"incdec":ue,V(m,U,ue,O,f))},indent:function(f,m){if(f.tokenize==z||f.tokenize==X)return b.Pass;if(f.tokenize!=M)return 0;var U=m&&m.charAt(0),re=f.lexical,B;if(!/^\s*else\b/.test(m))for(var ce=f.cc.length-1;ce>=0;--ce){var We=f.cc[ce];if(We==xe)re=re.prev;else if(We!=Or&&We!=Te)break}for(;(re.type=="stat"||re.type=="form")&&(U=="}"||(B=f.cc[f.cc.length-1])&&(B==Pe||B==_e)&&!/^[,\.=+\-*:?[\(]/.test(m));)re=re.prev;oe&&re.type==")"&&re.prev.type=="stat"&&(re=re.prev);var it=re.type,wt=U==it;return it=="vardef"?re.indented+(f.lastType=="operator"||f.lastType==","?re.info.length+1:0):it=="form"&&U=="{"?re.indented:it=="form"?re.indented+te:it=="stat"?re.indented+(un(f,m)?oe||te:0):re.info=="switch"&&!wt&&_.doubleIndentSwitch!=!1?re.indented+(/^(?:case|default)\b/.test(m)?te:2*te):re.align?re.column+(wt?0:1):re.indented+(wt?0:te)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:k?null:"/*",blockCommentEnd:k?null:"*/",blockCommentContinue:k?null:" * ",lineComment:k?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:k?"json":"javascript",jsonldMode:Q,jsonMode:k,expressionAllowed:Et,skipExpression:function(f){V(f,"atom","atom","true",new b.StringStream("",2,null))}}}),b.registerHelper("wordChars","javascript",/[\w$]/),b.defineMIME("text/javascript","javascript"),b.defineMIME("text/ecmascript","javascript"),b.defineMIME("application/javascript","javascript"),b.defineMIME("application/x-javascript","javascript"),b.defineMIME("application/ecmascript","javascript"),b.defineMIME("application/json",{name:"javascript",json:!0}),b.defineMIME("application/x-json",{name:"javascript",json:!0}),b.defineMIME("application/manifest+json",{name:"javascript",json:!0}),b.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),b.defineMIME("text/typescript",{name:"javascript",typescript:!0}),b.defineMIME("application/typescript",{name:"javascript",typescript:!0})})})()),ba.exports}var wa;function Vu(){return wa||(wa=1,(function(ct,xt){(function(b){b(mt(),Ya(),Qa(),Xa())})(function(b){var pe={script:[["lang",/(javascript|babel)/i,"javascript"],["type",/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i,"javascript"],["type",/./,"text/plain"],[null,null,"javascript"]],style:[["lang",/^css$/i,"css"],["type",/^(text\/)?(x-)?(stylesheet|css)$/i,"css"],["type",/./,"text/plain"],[null,null,"css"]]};function _(ne,S,R){var A=ne.current(),$=A.search(S);return $>-1?ne.backUp(A.length-$):A.match(/<\/?$/)&&(ne.backUp(A.length),ne.match(S,!1)||ne.match(A)),R}var te={};function oe(ne){var S=te[ne];return S||(te[ne]=new RegExp("\\s+"+ne+`\\s*=\\s*('|")?([^'"]+)('|")?\\s*`))}function Q(ne,S){var R=ne.match(oe(S));return R?/^\s*(.*?)\s*$/.exec(R[2])[1]:""}function k(ne,S){return new RegExp((S?"^":"")+"</\\s*"+ne+"\\s*>","i")}function I(ne,S){for(var R in ne)for(var A=S[R]||(S[R]=[]),$=ne[R],ue=$.length-1;ue>=0;ue--)A.unshift($[ue])}function Y(ne,S){for(var R=0;R<ne.length;R++){var A=ne[R];if(!A[0]||A[1].test(Q(S,A[0])))return A[2]}}b.defineMode("htmlmixed",function(ne,S){var R=b.getMode(ne,{name:"xml",htmlMode:!0,multilineTagIndentFactor:S.multilineTagIndentFactor,multilineTagIndentPastTag:S.multilineTagIndentPastTag,allowMissingTagName:S.allowMissingTagName}),A={},$=S&&S.tags,ue=S&&S.scriptTypes;if(I(pe,A),$&&I($,A),ue)for(var O=ue.length-1;O>=0;O--)A.script.unshift(["type",ue[O].matches,ue[O].mode]);function w(M,N){var z=R.token(M,N.htmlState),X=/\btag\b/.test(z),q;if(X&&!/[<>\s\/]/.test(M.current())&&(q=N.htmlState.tagName&&N.htmlState.tagName.toLowerCase())&&A.hasOwnProperty(q))N.inTag=q+" ";else if(N.inTag&&X&&/>$/.test(M.current())){var p=/^([\S]+) (.*)/.exec(N.inTag);N.inTag=null;var W=M.current()==">"&&Y(A[p[1]],p[2]),J=b.getMode(ne,W),P=k(p[1],!0),V=k(p[1],!1);N.token=function(F,G){return F.match(P,!1)?(G.token=w,G.localState=G.localMode=null,null):_(F,V,G.localMode.token(F,G.localState))},N.localMode=J,N.localState=b.startState(J,R.indent(N.htmlState,"",""))}else N.inTag&&(N.inTag+=M.current(),M.eol()&&(N.inTag+=" "));return z}return{startState:function(){var M=b.startState(R);return{token:w,inTag:null,localMode:null,localState:null,htmlState:M}},copyState:function(M){var N;return M.localState&&(N=b.copyState(M.localMode,M.localState)),{token:M.token,inTag:M.inTag,localMode:M.localMode,localState:N,htmlState:b.copyState(R,M.htmlState)}},token:function(M,N){return N.token(M,N)},indent:function(M,N,z){return!M.localMode||/^\s*<\//.test(N)?R.indent(M.htmlState,N,z):M.localMode.indent?M.localMode.indent(M.localState,N,z):b.Pass},innerMode:function(M){return{state:M.localState||M.htmlState,mode:M.localMode||R}}}},"xml","javascript","css"),b.defineMIME("text/html","htmlmixed")})})()),ma.exports}Vu();Qa();var Sa={exports:{}},La;function ef(){return La||(La=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(I){return new RegExp("^(("+I.join(")|(")+"))\\b")}var _=pe(["and","or","not","is"]),te=["as","assert","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","lambda","pass","raise","return","try","while","with","yield","in","False","True"],oe=["abs","all","any","bin","bool","bytearray","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip","__import__","NotImplemented","Ellipsis","__debug__"];b.registerHelper("hintWords","python",te.concat(oe).concat(["exec","print"]));function Q(I){return I.scopes[I.scopes.length-1]}b.defineMode("python",function(I,Y){for(var ne="error",S=Y.delimiters||Y.singleDelimiters||/^[\(\)\[\]\{\}@,:`=;\.\\]/,R=[Y.singleOperators,Y.doubleOperators,Y.doubleDelimiters,Y.tripleDelimiters,Y.operators||/^([-+*/%\/&|^]=?|[<>=]+|\/\/=?|\*\*=?|!=|[~!@]|\.\.\.)/],A=0;A<R.length;A++)R[A]||R.splice(A--,1);var $=Y.hangingIndent||I.indentUnit,ue=te,O=oe;Y.extra_keywords!=null&&(ue=ue.concat(Y.extra_keywords)),Y.extra_builtins!=null&&(O=O.concat(Y.extra_builtins));var w=!(Y.version&&Number(Y.version)<3);if(w){var M=Y.identifiers||/^[_A-Za-z\u00A1-\uFFFF][_A-Za-z0-9\u00A1-\uFFFF]*/;ue=ue.concat(["nonlocal","None","aiter","anext","async","await","breakpoint","match","case"]),O=O.concat(["ascii","bytes","exec","print"]);var N=new RegExp(`^(([rbuf]|(br)|(rb)|(fr)|(rf))?('{3}|"{3}|['"]))`,"i")}else{var M=Y.identifiers||/^[_A-Za-z][_A-Za-z0-9]*/;ue=ue.concat(["exec","print"]),O=O.concat(["apply","basestring","buffer","cmp","coerce","execfile","file","intern","long","raw_input","reduce","reload","unichr","unicode","xrange","None"]);var N=new RegExp(`^(([rubf]|(ur)|(br))?('{3}|"{3}|['"]))`,"i")}var z=pe(ue),X=pe(O);function q(T,C){var g=T.sol()&&C.lastToken!="\\";if(g&&(C.indent=T.indentation()),g&&Q(C).type=="py"){var y=Q(C).offset;if(T.eatSpace()){var j=T.indentation();return j>y?P(C):j<y&&F(T,C)&&T.peek()!="#"&&(C.errorToken=!0),null}else{var de=p(T,C);return y>0&&F(T,C)&&(de+=" "+ne),de}}return p(T,C)}function p(T,C,g){if(T.eatSpace())return null;if(!g&&T.match(/^#.*/))return"comment";if(T.match(/^[0-9\.]/,!1)){var y=!1;if(T.match(/^[\d_]*\.\d+(e[\+\-]?\d+)?/i)&&(y=!0),T.match(/^[\d_]+\.\d*/)&&(y=!0),T.match(/^\.\d+/)&&(y=!0),y)return T.eat(/J/i),"number";var j=!1;if(T.match(/^0x[0-9a-f_]+/i)&&(j=!0),T.match(/^0b[01_]+/i)&&(j=!0),T.match(/^0o[0-7_]+/i)&&(j=!0),T.match(/^[1-9][\d_]*(e[\+\-]?[\d_]+)?/)&&(T.eat(/J/i),j=!0),T.match(/^0(?![\dx])/i)&&(j=!0),j)return T.eat(/L/i),"number"}if(T.match(N)){var de=T.current().toLowerCase().indexOf("f")!==-1;return de?(C.tokenize=W(T.current(),C.tokenize),C.tokenize(T,C)):(C.tokenize=J(T.current(),C.tokenize),C.tokenize(T,C))}for(var v=0;v<R.length;v++)if(T.match(R[v]))return"operator";return T.match(S)?"punctuation":C.lastToken=="."&&T.match(M)?"property":T.match(z)||T.match(_)?"keyword":T.match(X)?"builtin":T.match(/^(self|cls)\b/)?"variable-2":T.match(M)?C.lastToken=="def"||C.lastToken=="class"?"def":"variable":(T.next(),g?null:ne)}function W(T,C){for(;"rubf".indexOf(T.charAt(0).toLowerCase())>=0;)T=T.substr(1);var g=T.length==1,y="string";function j(v){return function(d,fe){var Te=p(d,fe,!0);return Te=="punctuation"&&(d.current()=="{"?fe.tokenize=j(v+1):d.current()=="}"&&(v>1?fe.tokenize=j(v-1):fe.tokenize=de)),Te}}function de(v,d){for(;!v.eol();)if(v.eatWhile(/[^'"\{\}\\]/),v.eat("\\")){if(v.next(),g&&v.eol())return y}else{if(v.match(T))return d.tokenize=C,y;if(v.match("{{"))return y;if(v.match("{",!1))return d.tokenize=j(0),v.current()?y:d.tokenize(v,d);if(v.match("}}"))return y;if(v.match("}"))return ne;v.eat(/['"]/)}if(g){if(Y.singleLineStringErrors)return ne;d.tokenize=C}return y}return de.isString=!0,de}function J(T,C){for(;"rubf".indexOf(T.charAt(0).toLowerCase())>=0;)T=T.substr(1);var g=T.length==1,y="string";function j(de,v){for(;!de.eol();)if(de.eatWhile(/[^'"\\]/),de.eat("\\")){if(de.next(),g&&de.eol())return y}else{if(de.match(T))return v.tokenize=C,y;de.eat(/['"]/)}if(g){if(Y.singleLineStringErrors)return ne;v.tokenize=C}return y}return j.isString=!0,j}function P(T){for(;Q(T).type!="py";)T.scopes.pop();T.scopes.push({offset:Q(T).offset+I.indentUnit,type:"py",align:null})}function V(T,C,g){var y=T.match(/^[\s\[\{\(]*(?:#|$)/,!1)?null:T.column()+1;C.scopes.push({offset:C.indent+$,type:g,align:y})}function F(T,C){for(var g=T.indentation();C.scopes.length>1&&Q(C).offset>g;){if(Q(C).type!="py")return!0;C.scopes.pop()}return Q(C).offset!=g}function G(T,C){T.sol()&&(C.beginningOfLine=!0,C.dedent=!1);var g=C.tokenize(T,C),y=T.current();if(C.beginningOfLine&&y=="@")return T.match(M,!1)?"meta":w?"operator":ne;if(/\S/.test(y)&&(C.beginningOfLine=!1),(g=="variable"||g=="builtin")&&C.lastToken=="meta"&&(g="meta"),(y=="pass"||y=="return")&&(C.dedent=!0),y=="lambda"&&(C.lambda=!0),y==":"&&!C.lambda&&Q(C).type=="py"&&T.match(/^\s*(?:#|$)/,!1)&&P(C),y.length==1&&!/string|comment/.test(g)){var j="[({".indexOf(y);if(j!=-1&&V(T,C,"])}".slice(j,j+1)),j="])}".indexOf(y),j!=-1)if(Q(C).type==y)C.indent=C.scopes.pop().offset-$;else return ne}return C.dedent&&T.eol()&&Q(C).type=="py"&&C.scopes.length>1&&C.scopes.pop(),g}var c={startState:function(T){return{tokenize:q,scopes:[{offset:T||0,type:"py",align:null}],indent:T||0,lastToken:null,lambda:!1,dedent:0}},token:function(T,C){var g=C.errorToken;g&&(C.errorToken=!1);var y=G(T,C);return y&&y!="comment"&&(C.lastToken=y=="keyword"||y=="punctuation"?T.current():y),y=="punctuation"&&(y=null),T.eol()&&C.lambda&&(C.lambda=!1),g?y+" "+ne:y},indent:function(T,C){if(T.tokenize!=q)return T.tokenize.isString?b.Pass:0;var g=Q(T),y=g.type==C.charAt(0)||g.type=="py"&&!T.dedent&&/^(else:|elif |except |finally:)/.test(C);return g.align!=null?g.align-(y?1:0):g.offset-(y?$:0)},electricInput:/^\s*([\}\]\)]|else:|elif |except |finally:)$/,closeBrackets:{triples:`'"`},lineComment:"#",fold:"indent"};return c}),b.defineMIME("text/x-python","python");var k=function(I){return I.split(" ")};b.defineMIME("text/x-cython",{name:"python",extra_keywords:k("by cdef cimport cpdef ctypedef enum except extern gil include nogil property public readonly struct union DEF IF ELIF ELSE")})})})()),Sa.exports}ef();var Ta={exports:{}},Ca;function tf(){return Ca||(Ca=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(g,y,j,de,v,d){this.indented=g,this.column=y,this.type=j,this.info=de,this.align=v,this.prev=d}function _(g,y,j,de){var v=g.indented;return g.context&&g.context.type=="statement"&&j!="statement"&&(v=g.context.indented),g.context=new pe(v,y,j,de,null,g.context)}function te(g){var y=g.context.type;return(y==")"||y=="]"||y=="}")&&(g.indented=g.context.indented),g.context=g.context.prev}function oe(g,y,j){if(y.prevToken=="variable"||y.prevToken=="type"||/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(g.string.slice(0,j))||y.typeAtEndOfLine&&g.column()==g.indentation())return!0}function Q(g){for(;;){if(!g||g.type=="top")return!0;if(g.type=="}"&&g.prev.info!="namespace")return!1;g=g.prev}}b.defineMode("clike",function(g,y){var j=g.indentUnit,de=y.statementIndentUnit||j,v=y.dontAlignCalls,d=y.keywords||{},fe=y.types||{},Te=y.builtin||{},le=y.blockKeywords||{},xe=y.defKeywords||{},Me=y.atoms||{},Fe=y.hooks||{},Ce=y.multiLineStrings,ve=y.indentStatements!==!1,Oe=y.indentSwitch!==!1,qe=y.namespaceSeparator,$e=y.isPunctuationChar||/[\[\]{}\(\),;\:\.]/,dt=y.numberStart||/[\d\.]/,Pe=y.number||/^(?:0x[a-f\d]+|0b[01]+|(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?)(u|ll?|l|f)?/i,_e=y.isOperatorChar||/[+\-*&%=<>!?|\/]/,Ue=y.isIdentifierChar||/[\w\$_\xa1-\uffff]/,et=y.isReservedIdentifier||!1,we,Ie;function E(me,De){var be=me.next();if(Fe[be]){var Be=Fe[be](me,De);if(Be!==!1)return Be}if(be=='"'||be=="'")return De.tokenize=ee(be),De.tokenize(me,De);if(dt.test(be)){if(me.backUp(1),me.match(Pe))return"number";me.next()}if($e.test(be))return we=be,null;if(be=="/"){if(me.eat("*"))return De.tokenize=K,K(me,De);if(me.eat("/"))return me.skipToEnd(),"comment"}if(_e.test(be)){for(;!me.match(/^\/[\/*]/,!1)&&me.eat(_e););return"operator"}if(me.eatWhile(Ue),qe)for(;me.match(qe);)me.eatWhile(Ue);var Ne=me.current();return I(d,Ne)?(I(le,Ne)&&(we="newstatement"),I(xe,Ne)&&(Ie=!0),"keyword"):I(fe,Ne)?"type":I(Te,Ne)||et&&et(Ne)?(I(le,Ne)&&(we="newstatement"),"builtin"):I(Me,Ne)?"atom":"variable"}function ee(me){return function(De,be){for(var Be=!1,Ne,Mt=!1;(Ne=De.next())!=null;){if(Ne==me&&!Be){Mt=!0;break}Be=!Be&&Ne=="\\"}return(Mt||!(Be||Ce))&&(be.tokenize=null),"string"}}function K(me,De){for(var be=!1,Be;Be=me.next();){if(Be=="/"&&be){De.tokenize=null;break}be=Be=="*"}return"comment"}function ze(me,De){y.typeFirstDefinitions&&me.eol()&&Q(De.context)&&(De.typeAtEndOfLine=oe(me,De,me.pos))}return{startState:function(me){return{tokenize:null,context:new pe((me||0)-j,0,"top",null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(me,De){var be=De.context;if(me.sol()&&(be.align==null&&(be.align=!1),De.indented=me.indentation(),De.startOfLine=!0),me.eatSpace())return ze(me,De),null;we=Ie=null;var Be=(De.tokenize||E)(me,De);if(Be=="comment"||Be=="meta")return Be;if(be.align==null&&(be.align=!0),we==";"||we==":"||we==","&&me.match(/^\s*(?:\/\/.*)?$/,!1))for(;De.context.type=="statement";)te(De);else if(we=="{")_(De,me.column(),"}");else if(we=="[")_(De,me.column(),"]");else if(we=="(")_(De,me.column(),")");else if(we=="}"){for(;be.type=="statement";)be=te(De);for(be.type=="}"&&(be=te(De));be.type=="statement";)be=te(De)}else we==be.type?te(De):ve&&((be.type=="}"||be.type=="top")&&we!=";"||be.type=="statement"&&we=="newstatement")&&_(De,me.column(),"statement",me.current());if(Be=="variable"&&(De.prevToken=="def"||y.typeFirstDefinitions&&oe(me,De,me.start)&&Q(De.context)&&me.match(/^\s*\(/,!1))&&(Be="def"),Fe.token){var Ne=Fe.token(me,De,Be);Ne!==void 0&&(Be=Ne)}return Be=="def"&&y.styleDefs===!1&&(Be="variable"),De.startOfLine=!1,De.prevToken=Ie?"def":Be||we,ze(me,De),Be},indent:function(me,De){if(me.tokenize!=E&&me.tokenize!=null||me.typeAtEndOfLine&&Q(me.context))return b.Pass;var be=me.context,Be=De&&De.charAt(0),Ne=Be==be.type;if(be.type=="statement"&&Be=="}"&&(be=be.prev),y.dontIndentStatements)for(;be.type=="statement"&&y.dontIndentStatements.test(be.info);)be=be.prev;if(Fe.indent){var Mt=Fe.indent(me,be,De,j);if(typeof Mt=="number")return Mt}var Pt=be.prev&&be.prev.info=="switch";if(y.allmanIndentation&&/[{(]/.test(Be)){for(;be.type!="top"&&be.type!="}";)be=be.prev;return be.indented}return be.type=="statement"?be.indented+(Be=="{"?0:de):be.align&&(!v||be.type!=")")?be.column+(Ne?0:1):be.type==")"&&!Ne?be.indented+de:be.indented+(Ne?0:j)+(!Ne&&Pt&&!/^(?:case|default)\b/.test(De)?j:0)},electricInput:Oe?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:"//",fold:"brace"}});function k(g){for(var y={},j=g.split(" "),de=0;de<j.length;++de)y[j[de]]=!0;return y}function I(g,y){return typeof g=="function"?g(y):g.propertyIsEnumerable(y)}var Y="auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran",ne="alignas alignof and and_eq audit axiom bitand bitor catch class compl concept constexpr const_cast decltype delete dynamic_cast explicit export final friend import module mutable namespace new noexcept not not_eq operator or or_eq override private protected public reinterpret_cast requires static_assert static_cast template this thread_local throw try typeid typename using virtual xor xor_eq",S="bycopy byref in inout oneway out self super atomic nonatomic retain copy readwrite readonly strong weak assign typeof nullable nonnull null_resettable _cmd @interface @implementation @end @protocol @encode @property @synthesize @dynamic @class @public @package @private @protected @required @optional @try @catch @finally @import @selector @encode @defs @synchronized @autoreleasepool @compatibility_alias @available",R="FOUNDATION_EXPORT FOUNDATION_EXTERN NS_INLINE NS_FORMAT_FUNCTION  NS_RETURNS_RETAINEDNS_ERROR_ENUM NS_RETURNS_NOT_RETAINED NS_RETURNS_INNER_POINTER NS_DESIGNATED_INITIALIZER NS_ENUM NS_OPTIONS NS_REQUIRES_NIL_TERMINATION NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_SWIFT_NAME NS_REFINED_FOR_SWIFT",A=k("int long char short double float unsigned signed void bool"),$=k("SEL instancetype id Class Protocol BOOL");function ue(g){return I(A,g)||/.+_t$/.test(g)}function O(g){return ue(g)||I($,g)}var w="case do else for if switch while struct enum union",M="struct enum union";function N(g,y){if(!y.startOfLine)return!1;for(var j,de=null;j=g.peek();){if(j=="\\"&&g.match(/^.$/)){de=N;break}else if(j=="/"&&g.match(/^\/[\/\*]/,!1))break;g.next()}return y.tokenize=de,"meta"}function z(g,y){return y.prevToken=="type"?"type":!1}function X(g){return!g||g.length<2||g[0]!="_"?!1:g[1]=="_"||g[1]!==g[1].toLowerCase()}function q(g){return g.eatWhile(/[\w\.']/),"number"}function p(g,y){if(g.backUp(1),g.match(/^(?:R|u8R|uR|UR|LR)/)){var j=g.match(/^"([^\s\\()]{0,16})\(/);return j?(y.cpp11RawStringDelim=j[1],y.tokenize=P,P(g,y)):!1}return g.match(/^(?:u8|u|U|L)/)?g.match(/^["']/,!1)?"string":!1:(g.next(),!1)}function W(g){var y=/(\w+)::~?(\w+)$/.exec(g);return y&&y[1]==y[2]}function J(g,y){for(var j;(j=g.next())!=null;)if(j=='"'&&!g.eat('"')){y.tokenize=null;break}return"string"}function P(g,y){var j=y.cpp11RawStringDelim.replace(/[^\w\s]/g,"\\$&"),de=g.match(new RegExp(".*?\\)"+j+'"'));return de?y.tokenize=null:g.skipToEnd(),"string"}function V(g,y){typeof g=="string"&&(g=[g]);var j=[];function de(d){if(d)for(var fe in d)d.hasOwnProperty(fe)&&j.push(fe)}de(y.keywords),de(y.types),de(y.builtin),de(y.atoms),j.length&&(y.helperType=g[0],b.registerHelper("hintWords",g[0],j));for(var v=0;v<g.length;++v)b.defineMIME(g[v],y)}V(["text/x-csrc","text/x-c","text/x-chdr"],{name:"clike",keywords:k(Y),types:ue,blockKeywords:k(w),defKeywords:k(M),typeFirstDefinitions:!0,atoms:k("NULL true false"),isReservedIdentifier:X,hooks:{"#":N,"*":z},modeProps:{fold:["brace","include"]}}),V(["text/x-c++src","text/x-c++hdr"],{name:"clike",keywords:k(Y+" "+ne),types:ue,blockKeywords:k(w+" class try catch"),defKeywords:k(M+" class namespace"),typeFirstDefinitions:!0,atoms:k("true false NULL nullptr"),dontIndentStatements:/^template$/,isIdentifierChar:/[\w\$_~\xa1-\uffff]/,isReservedIdentifier:X,hooks:{"#":N,"*":z,u:p,U:p,L:p,R:p,0:q,1:q,2:q,3:q,4:q,5:q,6:q,7:q,8:q,9:q,token:function(g,y,j){if(j=="variable"&&g.peek()=="("&&(y.prevToken==";"||y.prevToken==null||y.prevToken=="}")&&W(g.current()))return"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),V("text/x-java",{name:"clike",keywords:k("abstract assert break case catch class const continue default do else enum extends final finally for goto if implements import instanceof interface native new package private protected public return static strictfp super switch synchronized this throw throws transient try volatile while @interface"),types:k("var byte short int long float double boolean char void Boolean Byte Character Double Float Integer Long Number Object Short String StringBuffer StringBuilder Void"),blockKeywords:k("catch class do else finally for if switch try while"),defKeywords:k("class interface enum @interface"),typeFirstDefinitions:!0,atoms:k("true false null"),number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+\.?\d*|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,hooks:{"@":function(g){return g.match("interface",!1)?!1:(g.eatWhile(/[\w\$_]/),"meta")},'"':function(g,y){return g.match(/""$/)?(y.tokenize=F,y.tokenize(g,y)):!1}},modeProps:{fold:["brace","import"]}}),V("text/x-csharp",{name:"clike",keywords:k("abstract as async await base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in init interface internal is lock namespace new operator out override params private protected public readonly record ref required return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"),types:k("Action Boolean Byte Char DateTime DateTimeOffset Decimal Double Func Guid Int16 Int32 Int64 Object SByte Single String Task TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),blockKeywords:k("catch class do else finally for foreach if struct switch try while"),defKeywords:k("class interface namespace record struct var"),typeFirstDefinitions:!0,atoms:k("true false null"),hooks:{"@":function(g,y){return g.eat('"')?(y.tokenize=J,J(g,y)):(g.eatWhile(/[\w\$_]/),"meta")}}});function F(g,y){for(var j=!1;!g.eol();){if(!j&&g.match('"""')){y.tokenize=null;break}j=g.next()=="\\"&&!j}return"string"}function G(g){return function(y,j){for(var de;de=y.next();)if(de=="*"&&y.eat("/"))if(g==1){j.tokenize=null;break}else return j.tokenize=G(g-1),j.tokenize(y,j);else if(de=="/"&&y.eat("*"))return j.tokenize=G(g+1),j.tokenize(y,j);return"comment"}}V("text/x-scala",{name:"clike",keywords:k("abstract case catch class def do else extends final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try type val var while with yield _ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble"),types:k("AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Int Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:!0,blockKeywords:k("catch class enum do else finally for forSome if match switch try while"),defKeywords:k("class enum def object package trait type val var"),atoms:k("true false null"),indentStatements:!1,indentSwitch:!1,isOperatorChar:/[+\-*&%=<>!?|\/#:@]/,hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},'"':function(g,y){return g.match('""')?(y.tokenize=F,y.tokenize(g,y)):!1},"'":function(g){return g.match(/^(\\[^'\s]+|[^\\'])'/)?"string-2":(g.eatWhile(/[\w\$_\xa1-\uffff]/),"atom")},"=":function(g,y){var j=y.context;return j.type=="}"&&j.align&&g.eat(">")?(y.context=new pe(j.indented,j.column,j.type,j.info,null,j.prev),"operator"):!1},"/":function(g,y){return g.eat("*")?(y.tokenize=G(1),y.tokenize(g,y)):!1}},modeProps:{closeBrackets:{pairs:'()[]{}""',triples:'"'}}});function c(g){return function(y,j){for(var de=!1,v,d=!1;!y.eol();){if(!g&&!de&&y.match('"')){d=!0;break}if(g&&y.match('"""')){d=!0;break}v=y.next(),!de&&v=="$"&&y.match("{")&&y.skipTo("}"),de=!de&&v=="\\"&&!g}return(d||!g)&&(j.tokenize=null),"string"}}V("text/x-kotlin",{name:"clike",keywords:k("package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam value"),types:k("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit"),intendSwitch:!1,indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,blockKeywords:k("catch class do else finally for if where try while enum"),defKeywords:k("class val var object interface fun"),atoms:k("true false null this"),hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},"*":function(g,y){return y.prevToken=="."?"variable":"operator"},'"':function(g,y){return y.tokenize=c(g.match('""')),y.tokenize(g,y)},"/":function(g,y){return g.eat("*")?(y.tokenize=G(1),y.tokenize(g,y)):!1},indent:function(g,y,j,de){var v=j&&j.charAt(0);if((g.prevToken=="}"||g.prevToken==")")&&j=="")return g.indented;if(g.prevToken=="operator"&&j!="}"&&g.context.type!="}"||g.prevToken=="variable"&&v=="."||(g.prevToken=="}"||g.prevToken==")")&&v==".")return de*2+y.indented;if(y.align&&y.type=="}")return y.indented+(g.context.type==(j||"").charAt(0)?0:de)}},modeProps:{closeBrackets:{triples:'"'}}}),V(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:k("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:k("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:k("for while do if else struct"),builtin:k("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:k("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TextureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":N},modeProps:{fold:["brace","include"]}}),V("text/x-nesc",{name:"clike",keywords:k(Y+" as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:ue,blockKeywords:k(w),atoms:k("null true false"),hooks:{"#":N},modeProps:{fold:["brace","include"]}}),V("text/x-objectivec",{name:"clike",keywords:k(Y+" "+S),types:O,builtin:k(R),blockKeywords:k(w+" @synthesize @try @catch @finally @autoreleasepool @synchronized"),defKeywords:k(M+" @interface @implementation @protocol @class"),dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:k("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:X,hooks:{"#":N,"*":z},modeProps:{fold:["brace","include"]}}),V("text/x-objectivec++",{name:"clike",keywords:k(Y+" "+S+" "+ne),types:O,builtin:k(R),blockKeywords:k(w+" @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch"),defKeywords:k(M+" @interface @implementation @protocol @class class namespace"),dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:k("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:X,hooks:{"#":N,"*":z,u:p,U:p,L:p,R:p,0:q,1:q,2:q,3:q,4:q,5:q,6:q,7:q,8:q,9:q,token:function(g,y,j){if(j=="variable"&&g.peek()=="("&&(y.prevToken==";"||y.prevToken==null||y.prevToken=="}")&&W(g.current()))return"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),V("text/x-squirrel",{name:"clike",keywords:k("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:ue,blockKeywords:k("case catch class else for foreach if switch try while"),defKeywords:k("function local class"),typeFirstDefinitions:!0,atoms:k("true false null"),hooks:{"#":N},modeProps:{fold:["brace","include"]}});var T=null;function C(g){return function(y,j){for(var de=!1,v,d=!1;!y.eol();){if(!de&&y.match('"')&&(g=="single"||y.match('""'))){d=!0;break}if(!de&&y.match("``")){T=C(g),d=!0;break}v=y.next(),de=g=="single"&&!de&&v=="\\"}return d&&(j.tokenize=null),"string"}}V("text/x-ceylon",{name:"clike",keywords:k("abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while"),types:function(g){var y=g.charAt(0);return y===y.toUpperCase()&&y!==y.toLowerCase()},blockKeywords:k("case catch class dynamic else finally for function if interface module new object switch try while"),defKeywords:k("class dynamic function interface module object package value"),builtin:k("abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable"),isPunctuationChar:/[\[\]{}\(\),;\:\.`]/,isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:k("true false null larger smaller equal empty finished"),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},'"':function(g,y){return y.tokenize=C(g.match('""')?"triple":"single"),y.tokenize(g,y)},"`":function(g,y){return!T||!g.match("`")?!1:(y.tokenize=T,T=null,y.tokenize(g,y))},"'":function(g){return g.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},token:function(g,y,j){if((j=="variable"||j=="type")&&y.prevToken==".")return"variable-2"}},modeProps:{fold:["brace","import"],closeBrackets:{triples:'"'}}})})})()),Ta.exports}tf();var Da={exports:{}},Ma={exports:{}},Fa;function rf(){return Fa||(Fa=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.modeInfo=[{name:"APL",mime:"text/apl",mode:"apl",ext:["dyalog","apl"]},{name:"PGP",mimes:["application/pgp","application/pgp-encrypted","application/pgp-keys","application/pgp-signature"],mode:"asciiarmor",ext:["asc","pgp","sig"]},{name:"ASN.1",mime:"text/x-ttcn-asn",mode:"asn.1",ext:["asn","asn1"]},{name:"Asterisk",mime:"text/x-asterisk",mode:"asterisk",file:/^extensions\.conf$/i},{name:"Brainfuck",mime:"text/x-brainfuck",mode:"brainfuck",ext:["b","bf"]},{name:"C",mime:"text/x-csrc",mode:"clike",ext:["c","h","ino"]},{name:"C++",mime:"text/x-c++src",mode:"clike",ext:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],alias:["cpp"]},{name:"Cobol",mime:"text/x-cobol",mode:"cobol",ext:["cob","cpy","cbl"]},{name:"C#",mime:"text/x-csharp",mode:"clike",ext:["cs"],alias:["csharp","cs"]},{name:"Clojure",mime:"text/x-clojure",mode:"clojure",ext:["clj","cljc","cljx"]},{name:"ClojureScript",mime:"text/x-clojurescript",mode:"clojure",ext:["cljs"]},{name:"Closure Stylesheets (GSS)",mime:"text/x-gss",mode:"css",ext:["gss"]},{name:"CMake",mime:"text/x-cmake",mode:"cmake",ext:["cmake","cmake.in"],file:/^CMakeLists\.txt$/},{name:"CoffeeScript",mimes:["application/vnd.coffeescript","text/coffeescript","text/x-coffeescript"],mode:"coffeescript",ext:["coffee"],alias:["coffee","coffee-script"]},{name:"Common Lisp",mime:"text/x-common-lisp",mode:"commonlisp",ext:["cl","lisp","el"],alias:["lisp"]},{name:"Cypher",mime:"application/x-cypher-query",mode:"cypher",ext:["cyp","cypher"]},{name:"Cython",mime:"text/x-cython",mode:"python",ext:["pyx","pxd","pxi"]},{name:"Crystal",mime:"text/x-crystal",mode:"crystal",ext:["cr"]},{name:"CSS",mime:"text/css",mode:"css",ext:["css"]},{name:"CQL",mime:"text/x-cassandra",mode:"sql",ext:["cql"]},{name:"D",mime:"text/x-d",mode:"d",ext:["d"]},{name:"Dart",mimes:["application/dart","text/x-dart"],mode:"dart",ext:["dart"]},{name:"diff",mime:"text/x-diff",mode:"diff",ext:["diff","patch"]},{name:"Django",mime:"text/x-django",mode:"django"},{name:"Dockerfile",mime:"text/x-dockerfile",mode:"dockerfile",file:/^Dockerfile$/},{name:"DTD",mime:"application/xml-dtd",mode:"dtd",ext:["dtd"]},{name:"Dylan",mime:"text/x-dylan",mode:"dylan",ext:["dylan","dyl","intr"]},{name:"EBNF",mime:"text/x-ebnf",mode:"ebnf"},{name:"ECL",mime:"text/x-ecl",mode:"ecl",ext:["ecl"]},{name:"edn",mime:"application/edn",mode:"clojure",ext:["edn"]},{name:"Eiffel",mime:"text/x-eiffel",mode:"eiffel",ext:["e"]},{name:"Elm",mime:"text/x-elm",mode:"elm",ext:["elm"]},{name:"Embedded JavaScript",mime:"application/x-ejs",mode:"htmlembedded",ext:["ejs"]},{name:"Embedded Ruby",mime:"application/x-erb",mode:"htmlembedded",ext:["erb"]},{name:"Erlang",mime:"text/x-erlang",mode:"erlang",ext:["erl"]},{name:"Esper",mime:"text/x-esper",mode:"sql"},{name:"Factor",mime:"text/x-factor",mode:"factor",ext:["factor"]},{name:"FCL",mime:"text/x-fcl",mode:"fcl"},{name:"Forth",mime:"text/x-forth",mode:"forth",ext:["forth","fth","4th"]},{name:"Fortran",mime:"text/x-fortran",mode:"fortran",ext:["f","for","f77","f90","f95"]},{name:"F#",mime:"text/x-fsharp",mode:"mllike",ext:["fs"],alias:["fsharp"]},{name:"Gas",mime:"text/x-gas",mode:"gas",ext:["s"]},{name:"Gherkin",mime:"text/x-feature",mode:"gherkin",ext:["feature"]},{name:"GitHub Flavored Markdown",mime:"text/x-gfm",mode:"gfm",file:/^(readme|contributing|history)\.md$/i},{name:"Go",mime:"text/x-go",mode:"go",ext:["go"]},{name:"Groovy",mime:"text/x-groovy",mode:"groovy",ext:["groovy","gradle"],file:/^Jenkinsfile$/},{name:"HAML",mime:"text/x-haml",mode:"haml",ext:["haml"]},{name:"Haskell",mime:"text/x-haskell",mode:"haskell",ext:["hs"]},{name:"Haskell (Literate)",mime:"text/x-literate-haskell",mode:"haskell-literate",ext:["lhs"]},{name:"Haxe",mime:"text/x-haxe",mode:"haxe",ext:["hx"]},{name:"HXML",mime:"text/x-hxml",mode:"haxe",ext:["hxml"]},{name:"ASP.NET",mime:"application/x-aspx",mode:"htmlembedded",ext:["aspx"],alias:["asp","aspx"]},{name:"HTML",mime:"text/html",mode:"htmlmixed",ext:["html","htm","handlebars","hbs"],alias:["xhtml"]},{name:"HTTP",mime:"message/http",mode:"http"},{name:"IDL",mime:"text/x-idl",mode:"idl",ext:["pro"]},{name:"Pug",mime:"text/x-pug",mode:"pug",ext:["jade","pug"],alias:["jade"]},{name:"Java",mime:"text/x-java",mode:"clike",ext:["java"]},{name:"Java Server Pages",mime:"application/x-jsp",mode:"htmlembedded",ext:["jsp"],alias:["jsp"]},{name:"JavaScript",mimes:["text/javascript","text/ecmascript","application/javascript","application/x-javascript","application/ecmascript"],mode:"javascript",ext:["js"],alias:["ecmascript","js","node"]},{name:"JSON",mimes:["application/json","application/x-json"],mode:"javascript",ext:["json","map"],alias:["json5"]},{name:"JSON-LD",mime:"application/ld+json",mode:"javascript",ext:["jsonld"],alias:["jsonld"]},{name:"JSX",mime:"text/jsx",mode:"jsx",ext:["jsx"]},{name:"Jinja2",mime:"text/jinja2",mode:"jinja2",ext:["j2","jinja","jinja2"]},{name:"Julia",mime:"text/x-julia",mode:"julia",ext:["jl"],alias:["jl"]},{name:"Kotlin",mime:"text/x-kotlin",mode:"clike",ext:["kt"]},{name:"LESS",mime:"text/x-less",mode:"css",ext:["less"]},{name:"LiveScript",mime:"text/x-livescript",mode:"livescript",ext:["ls"],alias:["ls"]},{name:"Lua",mime:"text/x-lua",mode:"lua",ext:["lua"]},{name:"Markdown",mime:"text/x-markdown",mode:"markdown",ext:["markdown","md","mkd"]},{name:"mIRC",mime:"text/mirc",mode:"mirc"},{name:"MariaDB SQL",mime:"text/x-mariadb",mode:"sql"},{name:"Mathematica",mime:"text/x-mathematica",mode:"mathematica",ext:["m","nb","wl","wls"]},{name:"Modelica",mime:"text/x-modelica",mode:"modelica",ext:["mo"]},{name:"MUMPS",mime:"text/x-mumps",mode:"mumps",ext:["mps"]},{name:"MS SQL",mime:"text/x-mssql",mode:"sql"},{name:"mbox",mime:"application/mbox",mode:"mbox",ext:["mbox"]},{name:"MySQL",mime:"text/x-mysql",mode:"sql"},{name:"Nginx",mime:"text/x-nginx-conf",mode:"nginx",file:/nginx.*\.conf$/i},{name:"NSIS",mime:"text/x-nsis",mode:"nsis",ext:["nsh","nsi"]},{name:"NTriples",mimes:["application/n-triples","application/n-quads","text/n-triples"],mode:"ntriples",ext:["nt","nq"]},{name:"Objective-C",mime:"text/x-objectivec",mode:"clike",ext:["m"],alias:["objective-c","objc"]},{name:"Objective-C++",mime:"text/x-objectivec++",mode:"clike",ext:["mm"],alias:["objective-c++","objc++"]},{name:"OCaml",mime:"text/x-ocaml",mode:"mllike",ext:["ml","mli","mll","mly"]},{name:"Octave",mime:"text/x-octave",mode:"octave",ext:["m"]},{name:"Oz",mime:"text/x-oz",mode:"oz",ext:["oz"]},{name:"Pascal",mime:"text/x-pascal",mode:"pascal",ext:["p","pas"]},{name:"PEG.js",mime:"null",mode:"pegjs",ext:["jsonld"]},{name:"Perl",mime:"text/x-perl",mode:"perl",ext:["pl","pm"]},{name:"PHP",mimes:["text/x-php","application/x-httpd-php","application/x-httpd-php-open"],mode:"php",ext:["php","php3","php4","php5","php7","phtml"]},{name:"Pig",mime:"text/x-pig",mode:"pig",ext:["pig"]},{name:"Plain Text",mime:"text/plain",mode:"null",ext:["txt","text","conf","def","list","log"]},{name:"PLSQL",mime:"text/x-plsql",mode:"sql",ext:["pls"]},{name:"PostgreSQL",mime:"text/x-pgsql",mode:"sql"},{name:"PowerShell",mime:"application/x-powershell",mode:"powershell",ext:["ps1","psd1","psm1"]},{name:"Properties files",mime:"text/x-properties",mode:"properties",ext:["properties","ini","in"],alias:["ini","properties"]},{name:"ProtoBuf",mime:"text/x-protobuf",mode:"protobuf",ext:["proto"]},{name:"Python",mime:"text/x-python",mode:"python",ext:["BUILD","bzl","py","pyw"],file:/^(BUCK|BUILD)$/},{name:"Puppet",mime:"text/x-puppet",mode:"puppet",ext:["pp"]},{name:"Q",mime:"text/x-q",mode:"q",ext:["q"]},{name:"R",mime:"text/x-rsrc",mode:"r",ext:["r","R"],alias:["rscript"]},{name:"reStructuredText",mime:"text/x-rst",mode:"rst",ext:["rst"],alias:["rst"]},{name:"RPM Changes",mime:"text/x-rpm-changes",mode:"rpm"},{name:"RPM Spec",mime:"text/x-rpm-spec",mode:"rpm",ext:["spec"]},{name:"Ruby",mime:"text/x-ruby",mode:"ruby",ext:["rb"],alias:["jruby","macruby","rake","rb","rbx"]},{name:"Rust",mime:"text/x-rustsrc",mode:"rust",ext:["rs"]},{name:"SAS",mime:"text/x-sas",mode:"sas",ext:["sas"]},{name:"Sass",mime:"text/x-sass",mode:"sass",ext:["sass"]},{name:"Scala",mime:"text/x-scala",mode:"clike",ext:["scala"]},{name:"Scheme",mime:"text/x-scheme",mode:"scheme",ext:["scm","ss"]},{name:"SCSS",mime:"text/x-scss",mode:"css",ext:["scss"]},{name:"Shell",mimes:["text/x-sh","application/x-sh"],mode:"shell",ext:["sh","ksh","bash"],alias:["bash","sh","zsh"],file:/^PKGBUILD$/},{name:"Sieve",mime:"application/sieve",mode:"sieve",ext:["siv","sieve"]},{name:"Slim",mimes:["text/x-slim","application/x-slim"],mode:"slim",ext:["slim"]},{name:"Smalltalk",mime:"text/x-stsrc",mode:"smalltalk",ext:["st"]},{name:"Smarty",mime:"text/x-smarty",mode:"smarty",ext:["tpl"]},{name:"Solr",mime:"text/x-solr",mode:"solr"},{name:"SML",mime:"text/x-sml",mode:"mllike",ext:["sml","sig","fun","smackspec"]},{name:"Soy",mime:"text/x-soy",mode:"soy",ext:["soy"],alias:["closure template"]},{name:"SPARQL",mime:"application/sparql-query",mode:"sparql",ext:["rq","sparql"],alias:["sparul"]},{name:"Spreadsheet",mime:"text/x-spreadsheet",mode:"spreadsheet",alias:["excel","formula"]},{name:"SQL",mime:"text/x-sql",mode:"sql",ext:["sql"]},{name:"SQLite",mime:"text/x-sqlite",mode:"sql"},{name:"Squirrel",mime:"text/x-squirrel",mode:"clike",ext:["nut"]},{name:"Stylus",mime:"text/x-styl",mode:"stylus",ext:["styl"]},{name:"Swift",mime:"text/x-swift",mode:"swift",ext:["swift"]},{name:"sTeX",mime:"text/x-stex",mode:"stex"},{name:"LaTeX",mime:"text/x-latex",mode:"stex",ext:["text","ltx","tex"],alias:["tex"]},{name:"SystemVerilog",mime:"text/x-systemverilog",mode:"verilog",ext:["v","sv","svh"]},{name:"Tcl",mime:"text/x-tcl",mode:"tcl",ext:["tcl"]},{name:"Textile",mime:"text/x-textile",mode:"textile",ext:["textile"]},{name:"TiddlyWiki",mime:"text/x-tiddlywiki",mode:"tiddlywiki"},{name:"Tiki wiki",mime:"text/tiki",mode:"tiki"},{name:"TOML",mime:"text/x-toml",mode:"toml",ext:["toml"]},{name:"Tornado",mime:"text/x-tornado",mode:"tornado"},{name:"troff",mime:"text/troff",mode:"troff",ext:["1","2","3","4","5","6","7","8","9"]},{name:"TTCN",mime:"text/x-ttcn",mode:"ttcn",ext:["ttcn","ttcn3","ttcnpp"]},{name:"TTCN_CFG",mime:"text/x-ttcn-cfg",mode:"ttcn-cfg",ext:["cfg"]},{name:"Turtle",mime:"text/turtle",mode:"turtle",ext:["ttl"]},{name:"TypeScript",mime:"application/typescript",mode:"javascript",ext:["ts"],alias:["ts"]},{name:"TypeScript-JSX",mime:"text/typescript-jsx",mode:"jsx",ext:["tsx"],alias:["tsx"]},{name:"Twig",mime:"text/x-twig",mode:"twig"},{name:"Web IDL",mime:"text/x-webidl",mode:"webidl",ext:["webidl"]},{name:"VB.NET",mime:"text/x-vb",mode:"vb",ext:["vb"]},{name:"VBScript",mime:"text/vbscript",mode:"vbscript",ext:["vbs"]},{name:"Velocity",mime:"text/velocity",mode:"velocity",ext:["vtl"]},{name:"Verilog",mime:"text/x-verilog",mode:"verilog",ext:["v"]},{name:"VHDL",mime:"text/x-vhdl",mode:"vhdl",ext:["vhd","vhdl"]},{name:"Vue.js Component",mimes:["script/x-vue","text/x-vue"],mode:"vue",ext:["vue"]},{name:"XML",mimes:["application/xml","text/xml"],mode:"xml",ext:["xml","xsl","xsd","svg"],alias:["rss","wsdl","xsd"]},{name:"XQuery",mime:"application/xquery",mode:"xquery",ext:["xy","xquery"]},{name:"Yacas",mime:"text/x-yacas",mode:"yacas",ext:["ys"]},{name:"YAML",mimes:["text/x-yaml","text/yaml"],mode:"yaml",ext:["yaml","yml"],alias:["yml"]},{name:"Z80",mime:"text/x-z80",mode:"z80",ext:["z80"]},{name:"mscgen",mime:"text/x-mscgen",mode:"mscgen",ext:["mscgen","mscin","msc"]},{name:"xu",mime:"text/x-xu",mode:"mscgen",ext:["xu"]},{name:"msgenny",mime:"text/x-msgenny",mode:"mscgen",ext:["msgenny"]},{name:"WebAssembly",mime:"text/webassembly",mode:"wast",ext:["wat","wast"]}];for(var pe=0;pe<b.modeInfo.length;pe++){var _=b.modeInfo[pe];_.mimes&&(_.mime=_.mimes[0])}b.findModeByMIME=function(te){te=te.toLowerCase();for(var oe=0;oe<b.modeInfo.length;oe++){var Q=b.modeInfo[oe];if(Q.mime==te)return Q;if(Q.mimes){for(var k=0;k<Q.mimes.length;k++)if(Q.mimes[k]==te)return Q}}if(/\+xml$/.test(te))return b.findModeByMIME("application/xml");if(/\+json$/.test(te))return b.findModeByMIME("application/json")},b.findModeByExtension=function(te){te=te.toLowerCase();for(var oe=0;oe<b.modeInfo.length;oe++){var Q=b.modeInfo[oe];if(Q.ext){for(var k=0;k<Q.ext.length;k++)if(Q.ext[k]==te)return Q}}},b.findModeByFileName=function(te){for(var oe=0;oe<b.modeInfo.length;oe++){var Q=b.modeInfo[oe];if(Q.file&&Q.file.test(te))return Q}var k=te.lastIndexOf("."),I=k>-1&&te.substring(k+1,te.length);if(I)return b.findModeByExtension(I)},b.findModeByName=function(te){te=te.toLowerCase();for(var oe=0;oe<b.modeInfo.length;oe++){var Q=b.modeInfo[oe];if(Q.name.toLowerCase()==te)return Q;if(Q.alias){for(var k=0;k<Q.alias.length;k++)if(Q.alias[k].toLowerCase()==te)return Q}}}})})()),Ma.exports}var Aa;function nf(){return Aa||(Aa=1,(function(ct,xt){(function(b){b(mt(),Ya(),rf())})(function(b){b.defineMode("markdown",function(pe,_){var te=b.getMode(pe,"text/html"),oe=te.name=="null";function Q(v){if(b.findModeByName){var d=b.findModeByName(v);d&&(v=d.mime||d.mimes[0])}var fe=b.getMode(pe,v);return fe.name=="null"?null:fe}_.highlightFormatting===void 0&&(_.highlightFormatting=!1),_.maxBlockquoteDepth===void 0&&(_.maxBlockquoteDepth=0),_.taskLists===void 0&&(_.taskLists=!1),_.strikethrough===void 0&&(_.strikethrough=!1),_.emoji===void 0&&(_.emoji=!1),_.fencedCodeBlockHighlighting===void 0&&(_.fencedCodeBlockHighlighting=!0),_.fencedCodeBlockDefaultMode===void 0&&(_.fencedCodeBlockDefaultMode="text/plain"),_.xml===void 0&&(_.xml=!0),_.tokenTypeOverrides===void 0&&(_.tokenTypeOverrides={});var k={header:"header",code:"comment",quote:"quote",list1:"variable-2",list2:"variable-3",list3:"keyword",hr:"hr",image:"image",imageAltText:"image-alt-text",imageMarker:"image-marker",formatting:"formatting",linkInline:"link",linkEmail:"link",linkText:"link",linkHref:"string",em:"em",strong:"strong",strikethrough:"strikethrough",emoji:"builtin"};for(var I in k)k.hasOwnProperty(I)&&_.tokenTypeOverrides[I]&&(k[I]=_.tokenTypeOverrides[I]);var Y=/^([*\-_])(?:\s*\1){2,}\s*$/,ne=/^(?:[*\-+]|^[0-9]+([.)]))\s+/,S=/^\[(x| )\](?=\s)/i,R=_.allowAtxHeaderWithoutSpace?/^(#+)/:/^(#+)(?: |$)/,A=/^ {0,3}(?:\={1,}|-{2,})\s*$/,$=/^[^#!\[\]*_\\<>` "'(~:]+/,ue=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,O=/^\s*\[[^\]]+?\]:.*$/,w=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/,M="    ";function N(v,d,fe){return d.f=d.inline=fe,fe(v,d)}function z(v,d,fe){return d.f=d.block=fe,fe(v,d)}function X(v){return!v||!/\S/.test(v.string)}function q(v){if(v.linkTitle=!1,v.linkHref=!1,v.linkText=!1,v.em=!1,v.strong=!1,v.strikethrough=!1,v.quote=0,v.indentedCode=!1,v.f==W){var d=oe;if(!d){var fe=b.innerMode(te,v.htmlState);d=fe.mode.name=="xml"&&fe.state.tagStart===null&&!fe.state.context&&fe.state.tokenize.isInText}d&&(v.f=F,v.block=p,v.htmlState=null)}return v.trailingSpace=0,v.trailingSpaceNewLine=!1,v.prevLine=v.thisLine,v.thisLine={stream:null},null}function p(v,d){var fe=v.column()===d.indentation,Te=X(d.prevLine.stream),le=d.indentedCode,xe=d.prevLine.hr,Me=d.list!==!1,Fe=(d.listStack[d.listStack.length-1]||0)+3;d.indentedCode=!1;var Ce=d.indentation;if(d.indentationDiff===null&&(d.indentationDiff=d.indentation,Me)){for(d.list=null;Ce<d.listStack[d.listStack.length-1];)d.listStack.pop(),d.listStack.length?d.indentation=d.listStack[d.listStack.length-1]:d.list=!1;d.list!==!1&&(d.indentationDiff=Ce-d.listStack[d.listStack.length-1])}var ve=!Te&&!xe&&!d.prevLine.header&&(!Me||!le)&&!d.prevLine.fencedCodeEnd,Oe=(d.list===!1||xe||Te)&&d.indentation<=Fe&&v.match(Y),qe=null;if(d.indentationDiff>=4&&(le||d.prevLine.fencedCodeEnd||d.prevLine.header||Te))return v.skipToEnd(),d.indentedCode=!0,k.code;if(v.eatSpace())return null;if(fe&&d.indentation<=Fe&&(qe=v.match(R))&&qe[1].length<=6)return d.quote=0,d.header=qe[1].length,d.thisLine.header=!0,_.highlightFormatting&&(d.formatting="header"),d.f=d.inline,P(d);if(d.indentation<=Fe&&v.eat(">"))return d.quote=fe?1:d.quote+1,_.highlightFormatting&&(d.formatting="quote"),v.eatSpace(),P(d);if(!Oe&&!d.setext&&fe&&d.indentation<=Fe&&(qe=v.match(ne))){var $e=qe[1]?"ol":"ul";return d.indentation=Ce+v.current().length,d.list=!0,d.quote=0,d.listStack.push(d.indentation),d.em=!1,d.strong=!1,d.code=!1,d.strikethrough=!1,_.taskLists&&v.match(S,!1)&&(d.taskList=!0),d.f=d.inline,_.highlightFormatting&&(d.formatting=["list","list-"+$e]),P(d)}else{if(fe&&d.indentation<=Fe&&(qe=v.match(ue,!0)))return d.quote=0,d.fencedEndRE=new RegExp(qe[1]+"+ *$"),d.localMode=_.fencedCodeBlockHighlighting&&Q(qe[2]||_.fencedCodeBlockDefaultMode),d.localMode&&(d.localState=b.startState(d.localMode)),d.f=d.block=J,_.highlightFormatting&&(d.formatting="code-block"),d.code=-1,P(d);if(d.setext||(!ve||!Me)&&!d.quote&&d.list===!1&&!d.code&&!Oe&&!O.test(v.string)&&(qe=v.lookAhead(1))&&(qe=qe.match(A)))return d.setext?(d.header=d.setext,d.setext=0,v.skipToEnd(),_.highlightFormatting&&(d.formatting="header")):(d.header=qe[0].charAt(0)=="="?1:2,d.setext=d.header),d.thisLine.header=!0,d.f=d.inline,P(d);if(Oe)return v.skipToEnd(),d.hr=!0,d.thisLine.hr=!0,k.hr;if(v.peek()==="[")return N(v,d,g)}return N(v,d,d.inline)}function W(v,d){var fe=te.token(v,d.htmlState);if(!oe){var Te=b.innerMode(te,d.htmlState);(Te.mode.name=="xml"&&Te.state.tagStart===null&&!Te.state.context&&Te.state.tokenize.isInText||d.md_inside&&v.current().indexOf(">")>-1)&&(d.f=F,d.block=p,d.htmlState=null)}return fe}function J(v,d){var fe=d.listStack[d.listStack.length-1]||0,Te=d.indentation<fe,le=fe+3;if(d.fencedEndRE&&d.indentation<=le&&(Te||v.match(d.fencedEndRE))){_.highlightFormatting&&(d.formatting="code-block");var xe;return Te||(xe=P(d)),d.localMode=d.localState=null,d.block=p,d.f=F,d.fencedEndRE=null,d.code=0,d.thisLine.fencedCodeEnd=!0,Te?z(v,d,d.block):xe}else return d.localMode?d.localMode.token(v,d.localState):(v.skipToEnd(),k.code)}function P(v){var d=[];if(v.formatting){d.push(k.formatting),typeof v.formatting=="string"&&(v.formatting=[v.formatting]);for(var fe=0;fe<v.formatting.length;fe++)d.push(k.formatting+"-"+v.formatting[fe]),v.formatting[fe]==="header"&&d.push(k.formatting+"-"+v.formatting[fe]+"-"+v.header),v.formatting[fe]==="quote"&&(!_.maxBlockquoteDepth||_.maxBlockquoteDepth>=v.quote?d.push(k.formatting+"-"+v.formatting[fe]+"-"+v.quote):d.push("error"))}if(v.taskOpen)return d.push("meta"),d.length?d.join(" "):null;if(v.taskClosed)return d.push("property"),d.length?d.join(" "):null;if(v.linkHref?d.push(k.linkHref,"url"):(v.strong&&d.push(k.strong),v.em&&d.push(k.em),v.strikethrough&&d.push(k.strikethrough),v.emoji&&d.push(k.emoji),v.linkText&&d.push(k.linkText),v.code&&d.push(k.code),v.image&&d.push(k.image),v.imageAltText&&d.push(k.imageAltText,"link"),v.imageMarker&&d.push(k.imageMarker)),v.header&&d.push(k.header,k.header+"-"+v.header),v.quote&&(d.push(k.quote),!_.maxBlockquoteDepth||_.maxBlockquoteDepth>=v.quote?d.push(k.quote+"-"+v.quote):d.push(k.quote+"-"+_.maxBlockquoteDepth)),v.list!==!1){var Te=(v.listStack.length-1)%3;Te?Te===1?d.push(k.list2):d.push(k.list3):d.push(k.list1)}return v.trailingSpaceNewLine?d.push("trailing-space-new-line"):v.trailingSpace&&d.push("trailing-space-"+(v.trailingSpace%2?"a":"b")),d.length?d.join(" "):null}function V(v,d){if(v.match($,!0))return P(d)}function F(v,d){var fe=d.text(v,d);if(typeof fe<"u")return fe;if(d.list)return d.list=null,P(d);if(d.taskList){var Te=v.match(S,!0)[1]===" ";return Te?d.taskOpen=!0:d.taskClosed=!0,_.highlightFormatting&&(d.formatting="task"),d.taskList=!1,P(d)}if(d.taskOpen=!1,d.taskClosed=!1,d.header&&v.match(/^#+$/,!0))return _.highlightFormatting&&(d.formatting="header"),P(d);var le=v.next();if(d.linkTitle){d.linkTitle=!1;var xe=le;le==="("&&(xe=")"),xe=(xe+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var Me="^\\s*(?:[^"+xe+"\\\\]+|\\\\\\\\|\\\\.)"+xe;if(v.match(new RegExp(Me),!0))return k.linkHref}if(le==="`"){var Fe=d.formatting;_.highlightFormatting&&(d.formatting="code"),v.eatWhile("`");var Ce=v.current().length;if(d.code==0&&(!d.quote||Ce==1))return d.code=Ce,P(d);if(Ce==d.code){var ve=P(d);return d.code=0,ve}else return d.formatting=Fe,P(d)}else if(d.code)return P(d);if(le==="\\"&&(v.next(),_.highlightFormatting)){var Oe=P(d),qe=k.formatting+"-escape";return Oe?Oe+" "+qe:qe}if(le==="!"&&v.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return d.imageMarker=!0,d.image=!0,_.highlightFormatting&&(d.formatting="image"),P(d);if(le==="["&&d.imageMarker&&v.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return d.imageMarker=!1,d.imageAltText=!0,_.highlightFormatting&&(d.formatting="image"),P(d);if(le==="]"&&d.imageAltText){_.highlightFormatting&&(d.formatting="image");var Oe=P(d);return d.imageAltText=!1,d.image=!1,d.inline=d.f=c,Oe}if(le==="["&&!d.image)return d.linkText&&v.match(/^.*?\]/)||(d.linkText=!0,_.highlightFormatting&&(d.formatting="link")),P(d);if(le==="]"&&d.linkText){_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return d.linkText=!1,d.inline=d.f=v.match(/\(.*?\)| ?\[.*?\]/,!1)?c:F,Oe}if(le==="<"&&v.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){d.f=d.inline=G,_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return Oe?Oe+=" ":Oe="",Oe+k.linkInline}if(le==="<"&&v.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){d.f=d.inline=G,_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return Oe?Oe+=" ":Oe="",Oe+k.linkEmail}if(_.xml&&le==="<"&&v.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var $e=v.string.indexOf(">",v.pos);if($e!=-1){var dt=v.string.substring(v.start,$e);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(dt)&&(d.md_inside=!0)}return v.backUp(1),d.htmlState=b.startState(te),z(v,d,W)}if(_.xml&&le==="<"&&v.match(/^\/\w*?>/))return d.md_inside=!1,"tag";if(le==="*"||le==="_"){for(var Pe=1,_e=v.pos==1?" ":v.string.charAt(v.pos-2);Pe<3&&v.eat(le);)Pe++;var Ue=v.peek()||" ",et=!/\s/.test(Ue)&&(!w.test(Ue)||/\s/.test(_e)||w.test(_e)),we=!/\s/.test(_e)&&(!w.test(_e)||/\s/.test(Ue)||w.test(Ue)),Ie=null,E=null;if(Pe%2&&(!d.em&&et&&(le==="*"||!we||w.test(_e))?Ie=!0:d.em==le&&we&&(le==="*"||!et||w.test(Ue))&&(Ie=!1)),Pe>1&&(!d.strong&&et&&(le==="*"||!we||w.test(_e))?E=!0:d.strong==le&&we&&(le==="*"||!et||w.test(Ue))&&(E=!1)),E!=null||Ie!=null){_.highlightFormatting&&(d.formatting=Ie==null?"strong":E==null?"em":"strong em"),Ie===!0&&(d.em=le),E===!0&&(d.strong=le);var ve=P(d);return Ie===!1&&(d.em=!1),E===!1&&(d.strong=!1),ve}}else if(le===" "&&(v.eat("*")||v.eat("_"))){if(v.peek()===" ")return P(d);v.backUp(1)}if(_.strikethrough){if(le==="~"&&v.eatWhile(le)){if(d.strikethrough){_.highlightFormatting&&(d.formatting="strikethrough");var ve=P(d);return d.strikethrough=!1,ve}else if(v.match(/^[^\s]/,!1))return d.strikethrough=!0,_.highlightFormatting&&(d.formatting="strikethrough"),P(d)}else if(le===" "&&v.match("~~",!0)){if(v.peek()===" ")return P(d);v.backUp(2)}}if(_.emoji&&le===":"&&v.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){d.emoji=!0,_.highlightFormatting&&(d.formatting="emoji");var ee=P(d);return d.emoji=!1,ee}return le===" "&&(v.match(/^ +$/,!1)?d.trailingSpace++:d.trailingSpace&&(d.trailingSpaceNewLine=!0)),P(d)}function G(v,d){var fe=v.next();if(fe===">"){d.f=d.inline=F,_.highlightFormatting&&(d.formatting="link");var Te=P(d);return Te?Te+=" ":Te="",Te+k.linkInline}return v.match(/^[^>]+/,!0),k.linkInline}function c(v,d){if(v.eatSpace())return null;var fe=v.next();return fe==="("||fe==="["?(d.f=d.inline=C(fe==="("?")":"]"),_.highlightFormatting&&(d.formatting="link-string"),d.linkHref=!0,P(d)):"error"}var T={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function C(v){return function(d,fe){var Te=d.next();if(Te===v){fe.f=fe.inline=F,_.highlightFormatting&&(fe.formatting="link-string");var le=P(fe);return fe.linkHref=!1,le}return d.match(T[v]),fe.linkHref=!0,P(fe)}}function g(v,d){return v.match(/^([^\]\\]|\\.)*\]:/,!1)?(d.f=y,v.next(),_.highlightFormatting&&(d.formatting="link"),d.linkText=!0,P(d)):N(v,d,F)}function y(v,d){if(v.match("]:",!0)){d.f=d.inline=j,_.highlightFormatting&&(d.formatting="link");var fe=P(d);return d.linkText=!1,fe}return v.match(/^([^\]\\]|\\.)+/,!0),k.linkText}function j(v,d){return v.eatSpace()?null:(v.match(/^[^\s]+/,!0),v.peek()===void 0?d.linkTitle=!0:v.match(/^(?:\s+(?:"(?:[^"\\]|\\.)+"|'(?:[^'\\]|\\.)+'|\((?:[^)\\]|\\.)+\)))?/,!0),d.f=d.inline=F,k.linkHref+" url")}var de={startState:function(){return{f:p,prevLine:{stream:null},thisLine:{stream:null},block:p,htmlState:null,indentation:0,inline:F,text:V,formatting:!1,linkText:!1,linkHref:!1,linkTitle:!1,code:0,em:!1,strong:!1,header:0,setext:0,hr:!1,taskList:!1,list:!1,listStack:[],quote:0,trailingSpace:0,trailingSpaceNewLine:!1,strikethrough:!1,emoji:!1,fencedEndRE:null}},copyState:function(v){return{f:v.f,prevLine:v.prevLine,thisLine:v.thisLine,block:v.block,htmlState:v.htmlState&&b.copyState(te,v.htmlState),indentation:v.indentation,localMode:v.localMode,localState:v.localMode?b.copyState(v.localMode,v.localState):null,inline:v.inline,text:v.text,formatting:!1,linkText:v.linkText,linkTitle:v.linkTitle,linkHref:v.linkHref,code:v.code,em:v.em,strong:v.strong,strikethrough:v.strikethrough,emoji:v.emoji,header:v.header,setext:v.setext,hr:v.hr,taskList:v.taskList,list:v.list,listStack:v.listStack.slice(0),quote:v.quote,indentedCode:v.indentedCode,trailingSpace:v.trailingSpace,trailingSpaceNewLine:v.trailingSpaceNewLine,md_inside:v.md_inside,fencedEndRE:v.fencedEndRE}},token:function(v,d){if(d.formatting=!1,v!=d.thisLine.stream){if(d.header=0,d.hr=!1,v.match(/^\s*$/,!0))return q(d),null;if(d.prevLine=d.thisLine,d.thisLine={stream:v},d.taskList=!1,d.trailingSpace=0,d.trailingSpaceNewLine=!1,!d.localState&&(d.f=d.block,d.f!=W)){var fe=v.match(/^\s*/,!0)[0].replace(/\t/g,M).length;if(d.indentation=fe,d.indentationDiff=null,fe>0)return null}}return d.f(v,d)},innerMode:function(v){return v.block==W?{state:v.htmlState,mode:te}:v.localState?{state:v.localState,mode:v.localMode}:{state:v,mode:de}},indent:function(v,d,fe){return v.block==W&&te.indent?te.indent(v.htmlState,d,fe):v.localState&&v.localMode.indent?v.localMode.indent(v.localState,d,fe):b.Pass},blankLine:q,getType:P,blockCommentStart:"<!--",blockCommentEnd:"-->",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return de},"xml"),b.defineMIME("text/markdown","markdown"),b.defineMIME("text/x-markdown","markdown")})})()),Da.exports}nf();var Na={exports:{}},Ea;function of(){return Ea||(Ea=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineOption("placeholder","",function(I,Y,ne){var S=ne&&ne!=b.Init;if(Y&&!S)I.on("blur",oe),I.on("change",Q),I.on("swapDoc",Q),b.on(I.getInputField(),"compositionupdate",I.state.placeholderCompose=function(){te(I)}),Q(I);else if(!Y&&S){I.off("blur",oe),I.off("change",Q),I.off("swapDoc",Q),b.off(I.getInputField(),"compositionupdate",I.state.placeholderCompose),pe(I);var R=I.getWrapperElement();R.className=R.className.replace(" CodeMirror-empty","")}Y&&!I.hasFocus()&&oe(I)});function pe(I){I.state.placeholder&&(I.state.placeholder.parentNode.removeChild(I.state.placeholder),I.state.placeholder=null)}function _(I){pe(I);var Y=I.state.placeholder=document.createElement("pre");Y.style.cssText="height: 0; overflow: visible",Y.style.direction=I.getOption("direction"),Y.className="CodeMirror-placeholder CodeMirror-line-like";var ne=I.getOption("placeholder");typeof ne=="string"&&(ne=document.createTextNode(ne)),Y.appendChild(ne),I.display.lineSpace.insertBefore(Y,I.display.lineSpace.firstChild)}function te(I){setTimeout(function(){var Y=!1;if(I.lineCount()==1){var ne=I.getInputField();Y=ne.nodeName=="TEXTAREA"?!I.getLine(0).length:!/[^\u200b]/.test(ne.querySelector(".CodeMirror-line").textContent)}Y?_(I):pe(I)},20)}function oe(I){k(I)&&_(I)}function Q(I){var Y=I.getWrapperElement(),ne=k(I);Y.className=Y.className.replace(" CodeMirror-empty","")+(ne?" CodeMirror-empty":""),ne?_(I):pe(I)}function k(I){return I.lineCount()===1&&I.getLine(0)===""}})})()),Na.exports}of();var Oa={exports:{}},Pa;function lf(){return Pa||(Pa=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineSimpleMode=function(S,R){b.defineMode(S,function(A){return b.simpleMode(A,R)})},b.simpleMode=function(S,R){pe(R,"start");var A={},$=R.meta||{},ue=!1;for(var O in R)if(O!=$&&R.hasOwnProperty(O))for(var w=A[O]=[],M=R[O],N=0;N<M.length;N++){var z=M[N];w.push(new oe(z,R)),(z.indent||z.dedent)&&(ue=!0)}var X={startState:function(){return{state:"start",pending:null,local:null,localState:null,indent:ue?[]:null}},copyState:function(p){var W={state:p.state,pending:p.pending,local:p.local,localState:null,indent:p.indent&&p.indent.slice(0)};p.localState&&(W.localState=b.copyState(p.local.mode,p.localState)),p.stack&&(W.stack=p.stack.slice(0));for(var J=p.persistentStates;J;J=J.next)W.persistentStates={mode:J.mode,spec:J.spec,state:J.state==p.localState?W.localState:b.copyState(J.mode,J.state),next:W.persistentStates};return W},token:Q(A,S),innerMode:function(p){return p.local&&{mode:p.local.mode,state:p.localState}},indent:ne(A,$)};if($)for(var q in $)$.hasOwnProperty(q)&&(X[q]=$[q]);return X};function pe(S,R){if(!S.hasOwnProperty(R))throw new Error("Undefined state "+R+" in simple mode")}function _(S,R){if(!S)return/(?:)/;var A="";return S instanceof RegExp?(S.ignoreCase&&(A="i"),S.unicode&&(A+="u"),S=S.source):S=String(S),new RegExp((R===!1?"":"^")+"(?:"+S+")",A)}function te(S){if(!S)return null;if(S.apply)return S;if(typeof S=="string")return S.replace(/\./g," ");for(var R=[],A=0;A<S.length;A++)R.push(S[A]&&S[A].replace(/\./g," "));return R}function oe(S,R){(S.next||S.push)&&pe(R,S.next||S.push),this.regex=_(S.regex),this.token=te(S.token),this.data=S}function Q(S,R){return function(A,$){if($.pending){var ue=$.pending.shift();return $.pending.length==0&&($.pending=null),A.pos+=ue.text.length,ue.token}if($.local)if($.local.end&&A.match($.local.end)){var O=$.local.endToken||null;return $.local=$.localState=null,O}else{var O=$.local.mode.token(A,$.localState),w;return $.local.endScan&&(w=$.local.endScan.exec(A.current()))&&(A.pos=A.start+w.index),O}for(var M=S[$.state],N=0;N<M.length;N++){var z=M[N],X=(!z.data.sol||A.sol())&&A.match(z.regex);if(X){z.data.next?$.state=z.data.next:z.data.push?(($.stack||($.stack=[])).push($.state),$.state=z.data.push):z.data.pop&&$.stack&&$.stack.length&&($.state=$.stack.pop()),z.data.mode&&I(R,$,z.data.mode,z.token),z.data.indent&&$.indent.push(A.indentation()+R.indentUnit),z.data.dedent&&$.indent.pop();var q=z.token;if(q&&q.apply&&(q=q(X)),X.length>2&&z.token&&typeof z.token!="string"){for(var p=2;p<X.length;p++)X[p]&&($.pending||($.pending=[])).push({text:X[p],token:z.token[p-1]});return A.backUp(X[0].length-(X[1]?X[1].length:0)),q[0]}else return q&&q.join?q[0]:q}}return A.next(),null}}function k(S,R){if(S===R)return!0;if(!S||typeof S!="object"||!R||typeof R!="object")return!1;var A=0;for(var $ in S)if(S.hasOwnProperty($)){if(!R.hasOwnProperty($)||!k(S[$],R[$]))return!1;A++}for(var $ in R)R.hasOwnProperty($)&&A--;return A==0}function I(S,R,A,$){var ue;if(A.persistent)for(var O=R.persistentStates;O&&!ue;O=O.next)(A.spec?k(A.spec,O.spec):A.mode==O.mode)&&(ue=O);var w=ue?ue.mode:A.mode||b.getMode(S,A.spec),M=ue?ue.state:b.startState(w);A.persistent&&!ue&&(R.persistentStates={mode:w,spec:A.spec,state:M,next:R.persistentStates}),R.localState=M,R.local={mode:w,end:A.end&&_(A.end),endScan:A.end&&A.forceEnd!==!1&&_(A.end,!1),endToken:$&&$.join?$[$.length-1]:$}}function Y(S,R){for(var A=0;A<R.length;A++)if(R[A]===S)return!0}function ne(S,R){return function(A,$,ue){if(A.local&&A.local.mode.indent)return A.local.mode.indent(A.localState,$,ue);if(A.indent==null||A.local||R.dontIndentStates&&Y(A.state,R.dontIndentStates)>-1)return b.Pass;var O=A.indent.length-1,w=S[A.state];e:for(;;){for(var M=0;M<w.length;M++){var N=w[M];if(N.data.dedent&&N.data.dedentIfLineStart!==!1){var z=N.regex.exec($);if(z&&z[0]){O--,(N.next||N.push)&&(w=S[N.next||N.push]),$=$.slice(z[0].length);continue e}}}break}return O<0?0:A.indent[O]}}})})()),Oa.exports}lf();var Ia={exports:{}},za;function af(){return za||(za=1,(function(ct,xt){(function(b){b(mt())})(function(b){var pe=/MSIE \d/.test(navigator.userAgent)&&(document.documentMode==null||document.documentMode<8),_=b.Pos,te={"(":")>",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<","<":">>",">":"<<"};function oe(S){return S&&S.bracketRegex||/[(){}[\]]/}function Q(S,R,A){var $=S.getLineHandle(R.line),ue=R.ch-1,O=A&&A.afterCursor;O==null&&(O=/(^| )cm-fat-cursor($| )/.test(S.getWrapperElement().className));var w=oe(A),M=!O&&ue>=0&&w.test($.text.charAt(ue))&&te[$.text.charAt(ue)]||w.test($.text.charAt(ue+1))&&te[$.text.charAt(++ue)];if(!M)return null;var N=M.charAt(1)==">"?1:-1;if(A&&A.strict&&N>0!=(ue==R.ch))return null;var z=S.getTokenTypeAt(_(R.line,ue+1)),X=k(S,_(R.line,ue+(N>0?1:0)),N,z,A);return X==null?null:{from:_(R.line,ue),to:X&&X.pos,match:X&&X.ch==M.charAt(0),forward:N>0}}function k(S,R,A,$,ue){for(var O=ue&&ue.maxScanLineLength||1e4,w=ue&&ue.maxScanLines||1e3,M=[],N=oe(ue),z=A>0?Math.min(R.line+w,S.lastLine()+1):Math.max(S.firstLine()-1,R.line-w),X=R.line;X!=z;X+=A){var q=S.getLine(X);if(q){var p=A>0?0:q.length-1,W=A>0?q.length:-1;if(!(q.length>O))for(X==R.line&&(p=R.ch-(A<0?1:0));p!=W;p+=A){var J=q.charAt(p);if(N.test(J)&&($===void 0||(S.getTokenTypeAt(_(X,p+1))||"")==($||""))){var P=te[J];if(P&&P.charAt(1)==">"==A>0)M.push(J);else if(M.length)M.pop();else return{pos:_(X,p),ch:J}}}}}return X-A==(A>0?S.lastLine():S.firstLine())?!1:null}function I(S,R,A){for(var $=S.state.matchBrackets.maxHighlightLineLength||1e3,ue=A&&A.highlightNonMatching,O=[],w=S.listSelections(),M=0;M<w.length;M++){var N=w[M].empty()&&Q(S,w[M].head,A);if(N&&(N.match||ue!==!1)&&S.getLine(N.from.line).length<=$){var z=N.match?"CodeMirror-matchingbracket":"CodeMirror-nonmatchingbracket";O.push(S.markText(N.from,_(N.from.line,N.from.ch+1),{className:z})),N.to&&S.getLine(N.to.line).length<=$&&O.push(S.markText(N.to,_(N.to.line,N.to.ch+1),{className:z}))}}if(O.length){pe&&S.state.focused&&S.focus();var X=function(){S.operation(function(){for(var q=0;q<O.length;q++)O[q].clear()})};if(R)setTimeout(X,800);else return X}}function Y(S){S.operation(function(){S.state.matchBrackets.currentlyHighlighted&&(S.state.matchBrackets.currentlyHighlighted(),S.state.matchBrackets.currentlyHighlighted=null),S.state.matchBrackets.currentlyHighlighted=I(S,!1,S.state.matchBrackets)})}function ne(S){S.state.matchBrackets&&S.state.matchBrackets.currentlyHighlighted&&(S.state.matchBrackets.currentlyHighlighted(),S.state.matchBrackets.currentlyHighlighted=null)}b.defineOption("matchBrackets",!1,function(S,R,A){A&&A!=b.Init&&(S.off("cursorActivity",Y),S.off("focus",Y),S.off("blur",ne),ne(S)),R&&(S.state.matchBrackets=typeof R=="object"?R:{},S.on("cursorActivity",Y),S.on("focus",Y),S.on("blur",ne))}),b.defineExtension("matchBrackets",function(){I(this,!0)}),b.defineExtension("findMatchingBracket",function(S,R,A){return(A||typeof R=="boolean")&&(A?(A.strict=R,R=A):R=R?{strict:!0}:null),Q(this,S,R)}),b.defineExtension("scanForBracket",function(S,R,A,$){return k(this,S,R,A,$)})})})()),Ia.exports}af();var Ba={exports:{}},Ra;function sf(){return Ra||(Ra=1,(function(ct,xt){(function(b){b(mt())})(function(b){var pe={pairs:`()[]{}''""`,closeBefore:`)]}'":;>`,triples:"",explode:"[]{}"},_=b.Pos;b.defineOption("autoCloseBrackets",!1,function(O,w,M){M&&M!=b.Init&&(O.removeKeyMap(oe),O.state.closeBrackets=null),w&&(Q(te(w,"pairs")),O.state.closeBrackets=w,O.addKeyMap(oe))});function te(O,w){return w=="pairs"&&typeof O=="string"?O:typeof O=="object"&&O[w]!=null?O[w]:pe[w]}var oe={Backspace:Y,Enter:ne};function Q(O){for(var w=0;w<O.length;w++){var M=O.charAt(w),N="'"+M+"'";oe[N]||(oe[N]=k(M))}}Q(pe.pairs+"`");function k(O){return function(w){return A(w,O)}}function I(O){var w=O.state.closeBrackets;if(!w||w.override)return w;var M=O.getModeAt(O.getCursor());return M.closeBrackets||w}function Y(O){var w=I(O);if(!w||O.getOption("disableInput"))return b.Pass;for(var M=te(w,"pairs"),N=O.listSelections(),z=0;z<N.length;z++){if(!N[z].empty())return b.Pass;var X=$(O,N[z].head);if(!X||M.indexOf(X)%2!=0)return b.Pass}for(var z=N.length-1;z>=0;z--){var q=N[z].head;O.replaceRange("",_(q.line,q.ch-1),_(q.line,q.ch+1),"+delete")}}function ne(O){var w=I(O),M=w&&te(w,"explode");if(!M||O.getOption("disableInput"))return b.Pass;for(var N=O.listSelections(),z=0;z<N.length;z++){if(!N[z].empty())return b.Pass;var X=$(O,N[z].head);if(!X||M.indexOf(X)%2!=0)return b.Pass}O.operation(function(){var q=O.lineSeparator()||`
`;O.replaceSelection(q+q,null),S(O,-1),N=O.listSelections();for(var p=0;p<N.length;p++){var W=N[p].head.line;O.indentLine(W,null,!0),O.indentLine(W+1,null,!0)}})}function S(O,w){for(var M=[],N=O.listSelections(),z=0,X=0;X<N.length;X++){var q=N[X];q.head==O.getCursor()&&(z=X);var p=q.head.ch||w>0?{line:q.head.line,ch:q.head.ch+w}:{line:q.head.line-1};M.push({anchor:p,head:p})}O.setSelections(M,z)}function R(O){var w=b.cmpPos(O.anchor,O.head)>0;return{anchor:new _(O.anchor.line,O.anchor.ch+(w?-1:1)),head:new _(O.head.line,O.head.ch+(w?1:-1))}}function A(O,w){var M=I(O);if(!M||O.getOption("disableInput"))return b.Pass;var N=te(M,"pairs"),z=N.indexOf(w);if(z==-1)return b.Pass;for(var X=te(M,"closeBefore"),q=te(M,"triples"),p=N.charAt(z+1)==w,W=O.listSelections(),J=z%2==0,P,V=0;V<W.length;V++){var F=W[V],G=F.head,c,T=O.getRange(G,_(G.line,G.ch+1));if(J&&!F.empty())c="surround";else if((p||!J)&&T==w)p&&ue(O,G)?c="both":q.indexOf(w)>=0&&O.getRange(G,_(G.line,G.ch+3))==w+w+w?c="skipThree":c="skip";else if(p&&G.ch>1&&q.indexOf(w)>=0&&O.getRange(_(G.line,G.ch-2),G)==w+w){if(G.ch>2&&/\bstring/.test(O.getTokenTypeAt(_(G.line,G.ch-2))))return b.Pass;c="addFour"}else if(p){var C=G.ch==0?" ":O.getRange(_(G.line,G.ch-1),G);if(!b.isWordChar(T)&&C!=w&&!b.isWordChar(C))c="both";else return b.Pass}else if(J&&(T.length===0||/\s/.test(T)||X.indexOf(T)>-1))c="both";else return b.Pass;if(!P)P=c;else if(P!=c)return b.Pass}var g=z%2?N.charAt(z-1):w,y=z%2?w:N.charAt(z+1);O.operation(function(){if(P=="skip")S(O,1);else if(P=="skipThree")S(O,3);else if(P=="surround"){for(var j=O.getSelections(),de=0;de<j.length;de++)j[de]=g+j[de]+y;O.replaceSelections(j,"around"),j=O.listSelections().slice();for(var de=0;de<j.length;de++)j[de]=R(j[de]);O.setSelections(j)}else P=="both"?(O.replaceSelection(g+y,null),O.triggerElectric(g+y),S(O,-1)):P=="addFour"&&(O.replaceSelection(g+g+g+g,"before"),S(O,1))})}function $(O,w){var M=O.getRange(_(w.line,w.ch-1),_(w.line,w.ch+1));return M.length==2?M:null}function ue(O,w){var M=O.getTokenAt(_(w.line,w.ch+1));return/\bstring/.test(M.type)&&M.start==w.ch&&(w.ch==0||!/\bstring/.test(O.getTokenTypeAt(w)))}})})()),Ba.exports}sf();var Wa={exports:{}},Ha={exports:{}},_a;function Ja(){return _a||(_a=1,(function(ct,xt){(function(b){b(mt())})(function(b){var pe=b.Pos;function _(w){var M=w.flags;return M??(w.ignoreCase?"i":"")+(w.global?"g":"")+(w.multiline?"m":"")}function te(w,M){for(var N=_(w),z=N,X=0;X<M.length;X++)z.indexOf(M.charAt(X))==-1&&(z+=M.charAt(X));return N==z?w:new RegExp(w.source,z)}function oe(w){return/\\s|\\n|\n|\\W|\\D|\[\^/.test(w.source)}function Q(w,M,N){M=te(M,"g");for(var z=N.line,X=N.ch,q=w.lastLine();z<=q;z++,X=0){M.lastIndex=X;var p=w.getLine(z),W=M.exec(p);if(W)return{from:pe(z,W.index),to:pe(z,W.index+W[0].length),match:W}}}function k(w,M,N){if(!oe(M))return Q(w,M,N);M=te(M,"gm");for(var z,X=1,q=N.line,p=w.lastLine();q<=p;){for(var W=0;W<X&&!(q>p);W++){var J=w.getLine(q++);z=z==null?J:z+`
`+J}X=X*2,M.lastIndex=N.ch;var P=M.exec(z);if(P){var V=z.slice(0,P.index).split(`
`),F=P[0].split(`
`),G=N.line+V.length-1,c=V[V.length-1].length;return{from:pe(G,c),to:pe(G+F.length-1,F.length==1?c+F[0].length:F[F.length-1].length),match:P}}}}function I(w,M,N){for(var z,X=0;X<=w.length;){M.lastIndex=X;var q=M.exec(w);if(!q)break;var p=q.index+q[0].length;if(p>w.length-N)break;(!z||p>z.index+z[0].length)&&(z=q),X=q.index+1}return z}function Y(w,M,N){M=te(M,"g");for(var z=N.line,X=N.ch,q=w.firstLine();z>=q;z--,X=-1){var p=w.getLine(z),W=I(p,M,X<0?0:p.length-X);if(W)return{from:pe(z,W.index),to:pe(z,W.index+W[0].length),match:W}}}function ne(w,M,N){if(!oe(M))return Y(w,M,N);M=te(M,"gm");for(var z,X=1,q=w.getLine(N.line).length-N.ch,p=N.line,W=w.firstLine();p>=W;){for(var J=0;J<X&&p>=W;J++){var P=w.getLine(p--);z=z==null?P:P+`
`+z}X*=2;var V=I(z,M,q);if(V){var F=z.slice(0,V.index).split(`
`),G=V[0].split(`
`),c=p+F.length,T=F[F.length-1].length;return{from:pe(c,T),to:pe(c+G.length-1,G.length==1?T+G[0].length:G[G.length-1].length),match:V}}}}var S,R;String.prototype.normalize?(S=function(w){return w.normalize("NFD").toLowerCase()},R=function(w){return w.normalize("NFD")}):(S=function(w){return w.toLowerCase()},R=function(w){return w});function A(w,M,N,z){if(w.length==M.length)return N;for(var X=0,q=N+Math.max(0,w.length-M.length);;){if(X==q)return X;var p=X+q>>1,W=z(w.slice(0,p)).length;if(W==N)return p;W>N?q=p:X=p+1}}function $(w,M,N,z){if(!M.length)return null;var X=z?S:R,q=X(M).split(/\r|\n\r?/);e:for(var p=N.line,W=N.ch,J=w.lastLine()+1-q.length;p<=J;p++,W=0){var P=w.getLine(p).slice(W),V=X(P);if(q.length==1){var F=V.indexOf(q[0]);if(F==-1)continue e;var N=A(P,V,F,X)+W;return{from:pe(p,A(P,V,F,X)+W),to:pe(p,A(P,V,F+q[0].length,X)+W)}}else{var G=V.length-q[0].length;if(V.slice(G)!=q[0])continue e;for(var c=1;c<q.length-1;c++)if(X(w.getLine(p+c))!=q[c])continue e;var T=w.getLine(p+q.length-1),C=X(T),g=q[q.length-1];if(C.slice(0,g.length)!=g)continue e;return{from:pe(p,A(P,V,G,X)+W),to:pe(p+q.length-1,A(T,C,g.length,X))}}}}function ue(w,M,N,z){if(!M.length)return null;var X=z?S:R,q=X(M).split(/\r|\n\r?/);e:for(var p=N.line,W=N.ch,J=w.firstLine()-1+q.length;p>=J;p--,W=-1){var P=w.getLine(p);W>-1&&(P=P.slice(0,W));var V=X(P);if(q.length==1){var F=V.lastIndexOf(q[0]);if(F==-1)continue e;return{from:pe(p,A(P,V,F,X)),to:pe(p,A(P,V,F+q[0].length,X))}}else{var G=q[q.length-1];if(V.slice(0,G.length)!=G)continue e;for(var c=1,N=p-q.length+1;c<q.length-1;c++)if(X(w.getLine(N+c))!=q[c])continue e;var T=w.getLine(p+1-q.length),C=X(T);if(C.slice(C.length-q[0].length)!=q[0])continue e;return{from:pe(p+1-q.length,A(T,C,T.length-q[0].length,X)),to:pe(p,A(P,V,G.length,X))}}}}function O(w,M,N,z){this.atOccurrence=!1,this.afterEmptyMatch=!1,this.doc=w,N=N?w.clipPos(N):pe(0,0),this.pos={from:N,to:N};var X;typeof z=="object"?X=z.caseFold:(X=z,z=null),typeof M=="string"?(X==null&&(X=!1),this.matches=function(q,p){return(q?ue:$)(w,M,p,X)}):(M=te(M,"gm"),!z||z.multiline!==!1?this.matches=function(q,p){return(q?ne:k)(w,M,p)}:this.matches=function(q,p){return(q?Y:Q)(w,M,p)})}O.prototype={findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(w){var M=this.doc.clipPos(w?this.pos.from:this.pos.to);if(this.afterEmptyMatch&&this.atOccurrence&&(M=pe(M.line,M.ch),w?(M.ch--,M.ch<0&&(M.line--,M.ch=(this.doc.getLine(M.line)||"").length)):(M.ch++,M.ch>(this.doc.getLine(M.line)||"").length&&(M.ch=0,M.line++)),b.cmpPos(M,this.doc.clipPos(M))!=0))return this.atOccurrence=!1;var N=this.matches(w,M);if(this.afterEmptyMatch=N&&b.cmpPos(N.from,N.to)==0,N)return this.pos=N,this.atOccurrence=!0,this.pos.match||!0;var z=pe(w?this.doc.firstLine():this.doc.lastLine()+1,0);return this.pos={from:z,to:z},this.atOccurrence=!1},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(w,M){if(this.atOccurrence){var N=b.splitLines(w);this.doc.replaceRange(N,this.pos.from,this.pos.to,M),this.pos.to=pe(this.pos.from.line+N.length-1,N[N.length-1].length+(N.length==1?this.pos.from.ch:0))}}},b.defineExtension("getSearchCursor",function(w,M,N){return new O(this.doc,w,M,N)}),b.defineDocExtension("getSearchCursor",function(w,M,N){return new O(this,w,M,N)}),b.defineExtension("selectMatches",function(w,M){for(var N=[],z=this.getSearchCursor(w,this.getCursor("from"),M);z.findNext()&&!(b.cmpPos(z.to(),this.getCursor("to"))>0);)N.push({anchor:z.from(),head:z.to()});N.length&&this.setSelections(N,0)})})})()),Ha.exports}var qa={exports:{}},ja;function po(){return ja||(ja=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(te,oe,Q){var k=te.getWrapperElement(),I;return I=k.appendChild(document.createElement("div")),Q?I.className="CodeMirror-dialog CodeMirror-dialog-bottom":I.className="CodeMirror-dialog CodeMirror-dialog-top",typeof oe=="string"?I.innerHTML=oe:I.appendChild(oe),b.addClass(k,"dialog-opened"),I}function _(te,oe){te.state.currentNotificationClose&&te.state.currentNotificationClose(),te.state.currentNotificationClose=oe}b.defineExtension("openDialog",function(te,oe,Q){Q||(Q={}),_(this,null);var k=pe(this,te,Q.bottom),I=!1,Y=this;function ne(A){if(typeof A=="string")S.value=A;else{if(I)return;I=!0,b.rmClass(k.parentNode,"dialog-opened"),k.parentNode.removeChild(k),Y.focus(),Q.onClose&&Q.onClose(k)}}var S=k.getElementsByTagName("input")[0],R;return S?(S.focus(),Q.value&&(S.value=Q.value,Q.selectValueOnOpen!==!1&&S.select()),Q.onInput&&b.on(S,"input",function(A){Q.onInput(A,S.value,ne)}),Q.onKeyUp&&b.on(S,"keyup",function(A){Q.onKeyUp(A,S.value,ne)}),b.on(S,"keydown",function(A){Q&&Q.onKeyDown&&Q.onKeyDown(A,S.value,ne)||((A.keyCode==27||Q.closeOnEnter!==!1&&A.keyCode==13)&&(S.blur(),b.e_stop(A),ne()),A.keyCode==13&&oe(S.value,A))}),Q.closeOnBlur!==!1&&b.on(k,"focusout",function(A){A.relatedTarget!==null&&ne()})):(R=k.getElementsByTagName("button")[0])&&(b.on(R,"click",function(){ne(),Y.focus()}),Q.closeOnBlur!==!1&&b.on(R,"blur",ne),R.focus()),ne}),b.defineExtension("openConfirm",function(te,oe,Q){_(this,null);var k=pe(this,te,Q&&Q.bottom),I=k.getElementsByTagName("button"),Y=!1,ne=this,S=1;function R(){Y||(Y=!0,b.rmClass(k.parentNode,"dialog-opened"),k.parentNode.removeChild(k),ne.focus())}I[0].focus();for(var A=0;A<I.length;++A){var $=I[A];(function(ue){b.on($,"click",function(O){b.e_preventDefault(O),R(),ue&&ue(ne)})})(oe[A]),b.on($,"blur",function(){--S,setTimeout(function(){S<=0&&R()},200)}),b.on($,"focus",function(){++S})}}),b.defineExtension("openNotification",function(te,oe){_(this,ne);var Q=pe(this,te,oe&&oe.bottom),k=!1,I,Y=oe&&typeof oe.duration<"u"?oe.duration:5e3;function ne(){k||(k=!0,clearTimeout(I),b.rmClass(Q.parentNode,"dialog-opened"),Q.parentNode.removeChild(Q))}return b.on(Q,"click",function(S){b.e_preventDefault(S),ne()}),Y&&(I=setTimeout(ne,Y)),ne})})})()),qa.exports}var Ka;function uf(){return Ka||(Ka=1,(function(ct,xt){(function(b){b(mt(),Ja(),po())})(function(b){b.defineOption("search",{bottom:!1});function pe(p,W){return typeof p=="string"?p=new RegExp(p.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),W?"gi":"g"):p.global||(p=new RegExp(p.source,p.ignoreCase?"gi":"g")),{token:function(J){p.lastIndex=J.pos;var P=p.exec(J.string);if(P&&P.index==J.pos)return J.pos+=P[0].length||1,"searching";P?J.pos=P.index:J.skipToEnd()}}}function _(){this.posFrom=this.posTo=this.lastQuery=this.query=null,this.overlay=null}function te(p){return p.state.search||(p.state.search=new _)}function oe(p){return typeof p=="string"&&p==p.toLowerCase()}function Q(p,W,J){return p.getSearchCursor(W,J,{caseFold:oe(W),multiline:!0})}function k(p,W,J,P,V){p.openDialog(W,P,{value:J,selectValueOnOpen:!0,closeOnEnter:!1,onClose:function(){ue(p)},onKeyDown:V,bottom:p.options.search.bottom})}function I(p,W,J,P,V){p.openDialog?p.openDialog(W,V,{value:P,selectValueOnOpen:!0,bottom:p.options.search.bottom}):V(prompt(J,P))}function Y(p,W,J,P){p.openConfirm?p.openConfirm(W,P):confirm(J)&&P[0]()}function ne(p){return p.replace(/\\([nrt\\])/g,function(W,J){return J=="n"?`
`:J=="r"?"\r":J=="t"?"    ":J=="\\"?"\\":W})}function S(p){var W=p.match(/^\/(.*)\/([a-z]*)$/);if(W)try{p=new RegExp(W[1],W[2].indexOf("i")==-1?"":"i")}catch{}else p=ne(p);return(typeof p=="string"?p=="":p.test(""))&&(p=/x^/),p}function R(p,W,J){W.queryText=J,W.query=S(J),p.removeOverlay(W.overlay,oe(W.query)),W.overlay=pe(W.query,oe(W.query)),p.addOverlay(W.overlay),p.showMatchesOnScrollbar&&(W.annotate&&(W.annotate.clear(),W.annotate=null),W.annotate=p.showMatchesOnScrollbar(W.query,oe(W.query)))}function A(p,W,J,P){var V=te(p);if(V.query)return $(p,W);var F=p.getSelection()||V.lastQuery;if(F instanceof RegExp&&F.source=="x^"&&(F=null),J&&p.openDialog){var G=null,c=function(T,C){b.e_stop(C),T&&(T!=V.queryText&&(R(p,V,T),V.posFrom=V.posTo=p.getCursor()),G&&(G.style.opacity=1),$(p,C.shiftKey,function(g,y){var j;y.line<3&&document.querySelector&&(j=p.display.wrapper.querySelector(".CodeMirror-dialog"))&&j.getBoundingClientRect().bottom-4>p.cursorCoords(y,"window").top&&((G=j).style.opacity=.4)}))};k(p,w(p),F,c,function(T,C){var g=b.keyName(T),y=p.getOption("extraKeys"),j=y&&y[g]||b.keyMap[p.getOption("keyMap")][g];j=="findNext"||j=="findPrev"||j=="findPersistentNext"||j=="findPersistentPrev"?(b.e_stop(T),R(p,te(p),C),p.execCommand(j)):(j=="find"||j=="findPersistent")&&(b.e_stop(T),c(C,T))}),P&&F&&(R(p,V,F),$(p,W))}else I(p,w(p),"Search for:",F,function(T){T&&!V.query&&p.operation(function(){R(p,V,T),V.posFrom=V.posTo=p.getCursor(),$(p,W)})})}function $(p,W,J){p.operation(function(){var P=te(p),V=Q(p,P.query,W?P.posFrom:P.posTo);!V.find(W)&&(V=Q(p,P.query,W?b.Pos(p.lastLine()):b.Pos(p.firstLine(),0)),!V.find(W))||(p.setSelection(V.from(),V.to()),p.scrollIntoView({from:V.from(),to:V.to()},20),P.posFrom=V.from(),P.posTo=V.to(),J&&J(V.from(),V.to()))})}function ue(p){p.operation(function(){var W=te(p);W.lastQuery=W.query,W.query&&(W.query=W.queryText=null,p.removeOverlay(W.overlay),W.annotate&&(W.annotate.clear(),W.annotate=null))})}function O(p,W){var J=p?document.createElement(p):document.createDocumentFragment();for(var P in W)J[P]=W[P];for(var V=2;V<arguments.length;V++){var F=arguments[V];J.appendChild(typeof F=="string"?document.createTextNode(F):F)}return J}function w(p){var W=O("label",{className:"CodeMirror-search-label"},p.phrase("Search:"),O("input",{type:"text",style:"width: 10em",className:"CodeMirror-search-field",id:"CodeMirror-search-field"}));return W.setAttribute("for","CodeMirror-search-field"),O("",null,W," ",O("span",{style:"color: #666",className:"CodeMirror-search-hint"},p.phrase("(Use /re/ syntax for regexp search)")))}function M(p){return O("",null," ",O("input",{type:"text",style:"width: 10em",className:"CodeMirror-search-field"})," ",O("span",{style:"color: #666",className:"CodeMirror-search-hint"},p.phrase("(Use /re/ syntax for regexp search)")))}function N(p){return O("",null,O("span",{className:"CodeMirror-search-label"},p.phrase("With:"))," ",O("input",{type:"text",style:"width: 10em",className:"CodeMirror-search-field"}))}function z(p){return O("",null,O("span",{className:"CodeMirror-search-label"},p.phrase("Replace?"))," ",O("button",{},p.phrase("Yes"))," ",O("button",{},p.phrase("No"))," ",O("button",{},p.phrase("All"))," ",O("button",{},p.phrase("Stop")))}function X(p,W,J){p.operation(function(){for(var P=Q(p,W);P.findNext();)if(typeof W!="string"){var V=p.getRange(P.from(),P.to()).match(W);P.replace(J.replace(/\$(\d)/g,function(F,G){return V[G]}))}else P.replace(J)})}function q(p,W){if(!p.getOption("readOnly")){var J=p.getSelection()||te(p).lastQuery,P=W?p.phrase("Replace all:"):p.phrase("Replace:"),V=O("",null,O("span",{className:"CodeMirror-search-label"},P),M(p));I(p,V,P,J,function(F){F&&(F=S(F),I(p,N(p),p.phrase("Replace with:"),"",function(G){if(G=ne(G),W)X(p,F,G);else{ue(p);var c=Q(p,F,p.getCursor("from")),T=function(){var g=c.from(),y;!(y=c.findNext())&&(c=Q(p,F),!(y=c.findNext())||g&&c.from().line==g.line&&c.from().ch==g.ch)||(p.setSelection(c.from(),c.to()),p.scrollIntoView({from:c.from(),to:c.to()}),Y(p,z(p),p.phrase("Replace?"),[function(){C(y)},T,function(){X(p,F,G)}]))},C=function(g){c.replace(typeof F=="string"?G:G.replace(/\$(\d)/g,function(y,j){return g[j]})),T()};T()}}))})}}b.commands.find=function(p){ue(p),A(p)},b.commands.findPersistent=function(p){ue(p),A(p,!1,!0)},b.commands.findPersistentNext=function(p){A(p,!1,!0,!0)},b.commands.findPersistentPrev=function(p){A(p,!0,!0,!0)},b.commands.findNext=A,b.commands.findPrev=function(p){A(p,!0)},b.commands.clearSearch=ue,b.commands.replace=q,b.commands.replaceAll=function(p){q(p,!0)}})})()),Wa.exports}uf();Ja();var Ua={exports:{}},Ga;function ff(){return Ga||(Ga=1,(function(ct,xt){(function(b){b(mt(),po())})(function(b){b.defineOption("search",{bottom:!1});function pe(oe,Q,k,I,Y){oe.openDialog?oe.openDialog(Q,Y,{value:I,selectValueOnOpen:!0,bottom:oe.options.search.bottom}):Y(prompt(k,I))}function _(oe){return oe.phrase("Jump to line:")+' <input type="text" style="width: 10em" class="CodeMirror-search-field"/> <span style="color: #888" class="CodeMirror-search-hint">'+oe.phrase("(Use line:column or scroll% syntax)")+"</span>"}function te(oe,Q){var k=Number(Q);return/^[-+]/.test(Q)?oe.getCursor().line+k:k-1}b.commands.jumpToLine=function(oe){var Q=oe.getCursor();pe(oe,_(oe),oe.phrase("Jump to line:"),Q.line+1+":"+Q.ch,function(k){if(k){var I;if(I=/^\s*([\+\-]?\d+)\s*\:\s*(\d+)\s*$/.exec(k))oe.setCursor(te(oe,I[1]),Number(I[2]));else if(I=/^\s*([\+\-]?\d+(\.\d+)?)\%\s*/.exec(k)){var Y=Math.round(oe.lineCount()*Number(I[1])/100);/^[-+]/.test(I[1])&&(Y=Q.line+Y+1),oe.setCursor(Y-1,Q.ch)}else(I=/^\s*\:?\s*([\+\-]?\d+)\s*/.exec(k))&&oe.setCursor(te(oe,I[1]),Q.ch)}})},b.keyMap.default["Alt-G"]="jumpToLine"})})()),Ua.exports}ff();po();export{df as default};
scripts/node_modules/playwright-core/lib/vite/recorder/assets/codicon-DCmgc-ay.ttf
Binary files differ
scripts/node_modules/playwright-core/lib/vite/recorder/assets/index-4ZiSSCmn.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
:root{color-scheme:light dark}body{--transparent-blue: #2196F355;--light-pink: #ff69b460;--gray: #888888;--sidebar-width: 250px;--box-shadow: rgba(0, 0, 0, .133) 0px 1.6px 3.6px 0px, rgba(0, 0, 0, .11) 0px .3px .9px 0px}html,body{width:100%;height:100%;padding:0;margin:0;overflow:hidden;display:flex;overscroll-behavior-x:none}#root{width:100%;height:100%;display:flex}body,dialog{background-color:var(--vscode-panel-background);color:var(--vscode-foreground);font-family:var(--vscode-font-family);font-weight:var(--vscode-font-weight);font-size:var(--vscode-font-size);-webkit-font-smoothing:antialiased}a{color:var(--vscode-textLink-foreground)}dialog{border:none;padding:0;box-shadow:var(--box-shadow);line-height:28px;max-width:400px}dialog .title{display:flex;align-items:center;margin:0;padding:0 5px;height:32px;background-color:var(--vscode-sideBar-background);max-width:400px}dialog .title .codicon{margin-right:3px}dialog .body{padding:10px;text-align:center}.button{color:var(--vscode-button-foreground);background:var(--vscode-button-background);margin:10px;border:none;height:28px;min-width:40px;cursor:pointer;-webkit-user-select:none;user-select:none}.button:focus{outline:1px solid var(--vscode-focusBorder)}.button:hover{background:var(--vscode-button-hoverBackground)}.button.secondary{color:var(--vscode-button-secondaryForeground);background:var(--vscode-button-secondaryBackground)}.button.secondary:hover{background:var(--vscode-button-secondaryHoverBackground)}*{box-sizing:border-box;min-width:0;min-height:0}*[hidden],.hidden{display:none!important}.invisible{visibility:hidden!important}svg{fill:currentColor}.vbox{display:flex;flex-direction:column;flex:auto;position:relative}.fill{position:absolute;top:0;right:0;bottom:0;left:0}.hbox{display:flex;flex:auto;position:relative}.spacer{flex:auto}.codicon-check{color:var(--vscode-charts-green)}.codicon-error{color:var(--vscode-errorForeground)}.codicon-warning{color:var(--vscode-list-warningForeground)}.codicon-circle-outline{color:var(--vscode-disabledForeground)}input[type=text],input[type=search]{color:var(--vscode-input-foreground);background-color:var(--vscode-input-background);border:none;outline:none}.codicon-loading{animation:spin 1s infinite linear}::placeholder{color:var(--vscode-input-placeholderForeground)}@keyframes spin{to{transform:rotate(360deg)}}@font-face{font-family:codicon;src:url(/assets/codicon-DCmgc-ay.ttf) format("truetype")}.codicon{font: 16px/1 codicon;flex:none;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.codicon-add:before{content:"î© "}.codicon-plus:before{content:"î© "}.codicon-gist-new:before{content:"î© "}.codicon-repo-create:before{content:"î© "}.codicon-lightbulb:before{content:"î©¡"}.codicon-light-bulb:before{content:"î©¡"}.codicon-repo:before{content:"î©¢"}.codicon-repo-delete:before{content:"î©¢"}.codicon-gist-fork:before{content:"î©£"}.codicon-repo-forked:before{content:"î©£"}.codicon-git-pull-request:before{content:""}.codicon-git-pull-request-abandoned:before{content:""}.codicon-record-keys:before{content:"î©¥"}.codicon-keyboard:before{content:"î©¥"}.codicon-tag:before{content:""}.codicon-git-pull-request-label:before{content:""}.codicon-tag-add:before{content:""}.codicon-tag-remove:before{content:""}.codicon-person:before{content:"î©§"}.codicon-person-follow:before{content:"î©§"}.codicon-person-outline:before{content:"î©§"}.codicon-person-filled:before{content:"î©§"}.codicon-git-branch:before{content:""}.codicon-git-branch-create:before{content:""}.codicon-git-branch-delete:before{content:""}.codicon-source-control:before{content:""}.codicon-mirror:before{content:"î©©"}.codicon-mirror-public:before{content:"î©©"}.codicon-star:before{content:""}.codicon-star-add:before{content:""}.codicon-star-delete:before{content:""}.codicon-star-empty:before{content:""}.codicon-comment:before{content:"î©«"}.codicon-comment-add:before{content:"î©«"}.codicon-alert:before{content:""}.codicon-warning:before{content:""}.codicon-search:before{content:"î©­"}.codicon-search-save:before{content:"î©­"}.codicon-log-out:before{content:"î©®"}.codicon-sign-out:before{content:"î©®"}.codicon-log-in:before{content:""}.codicon-sign-in:before{content:""}.codicon-eye:before{content:"î©°"}.codicon-eye-unwatch:before{content:"î©°"}.codicon-eye-watch:before{content:"î©°"}.codicon-circle-filled:before{content:""}.codicon-primitive-dot:before{content:""}.codicon-close-dirty:before{content:""}.codicon-debug-breakpoint:before{content:""}.codicon-debug-breakpoint-disabled:before{content:""}.codicon-debug-hint:before{content:""}.codicon-terminal-decoration-success:before{content:""}.codicon-primitive-square:before{content:""}.codicon-edit:before{content:""}.codicon-pencil:before{content:""}.codicon-info:before{content:"î©´"}.codicon-issue-opened:before{content:"î©´"}.codicon-gist-private:before{content:""}.codicon-git-fork-private:before{content:""}.codicon-lock:before{content:""}.codicon-mirror-private:before{content:""}.codicon-close:before{content:"î©¶"}.codicon-remove-close:before{content:"î©¶"}.codicon-x:before{content:"î©¶"}.codicon-repo-sync:before{content:"î©·"}.codicon-sync:before{content:"î©·"}.codicon-clone:before{content:""}.codicon-desktop-download:before{content:""}.codicon-beaker:before{content:""}.codicon-microscope:before{content:""}.codicon-vm:before{content:""}.codicon-device-desktop:before{content:""}.codicon-file:before{content:"î©»"}.codicon-file-text:before{content:"î©»"}.codicon-more:before{content:""}.codicon-ellipsis:before{content:""}.codicon-kebab-horizontal:before{content:""}.codicon-mail-reply:before{content:""}.codicon-reply:before{content:""}.codicon-organization:before{content:""}.codicon-organization-filled:before{content:""}.codicon-organization-outline:before{content:""}.codicon-new-file:before{content:"î©¿"}.codicon-file-add:before{content:"î©¿"}.codicon-new-folder:before{content:""}.codicon-file-directory-create:before{content:""}.codicon-trash:before{content:""}.codicon-trashcan:before{content:""}.codicon-history:before{content:""}.codicon-clock:before{content:""}.codicon-folder:before{content:""}.codicon-file-directory:before{content:""}.codicon-symbol-folder:before{content:""}.codicon-logo-github:before{content:""}.codicon-mark-github:before{content:""}.codicon-github:before{content:""}.codicon-terminal:before{content:""}.codicon-console:before{content:""}.codicon-repl:before{content:""}.codicon-zap:before{content:""}.codicon-symbol-event:before{content:""}.codicon-error:before{content:""}.codicon-stop:before{content:""}.codicon-variable:before{content:""}.codicon-symbol-variable:before{content:""}.codicon-array:before{content:""}.codicon-symbol-array:before{content:""}.codicon-symbol-module:before{content:""}.codicon-symbol-package:before{content:""}.codicon-symbol-namespace:before{content:""}.codicon-symbol-object:before{content:""}.codicon-symbol-method:before{content:""}.codicon-symbol-function:before{content:""}.codicon-symbol-constructor:before{content:""}.codicon-symbol-boolean:before{content:""}.codicon-symbol-null:before{content:""}.codicon-symbol-numeric:before{content:""}.codicon-symbol-number:before{content:""}.codicon-symbol-structure:before{content:""}.codicon-symbol-struct:before{content:""}.codicon-symbol-parameter:before{content:""}.codicon-symbol-type-parameter:before{content:""}.codicon-symbol-key:before{content:""}.codicon-symbol-text:before{content:""}.codicon-symbol-reference:before{content:""}.codicon-go-to-file:before{content:""}.codicon-symbol-enum:before{content:""}.codicon-symbol-value:before{content:""}.codicon-symbol-ruler:before{content:""}.codicon-symbol-unit:before{content:""}.codicon-activate-breakpoints:before{content:""}.codicon-archive:before{content:""}.codicon-arrow-both:before{content:""}.codicon-arrow-down:before{content:""}.codicon-arrow-left:before{content:""}.codicon-arrow-right:before{content:""}.codicon-arrow-small-down:before{content:""}.codicon-arrow-small-left:before{content:""}.codicon-arrow-small-right:before{content:""}.codicon-arrow-small-up:before{content:""}.codicon-arrow-up:before{content:""}.codicon-bell:before{content:""}.codicon-bold:before{content:""}.codicon-book:before{content:""}.codicon-bookmark:before{content:""}.codicon-debug-breakpoint-conditional-unverified:before{content:""}.codicon-debug-breakpoint-conditional:before{content:""}.codicon-debug-breakpoint-conditional-disabled:before{content:""}.codicon-debug-breakpoint-data-unverified:before{content:""}.codicon-debug-breakpoint-data:before{content:""}.codicon-debug-breakpoint-data-disabled:before{content:""}.codicon-debug-breakpoint-log-unverified:before{content:""}.codicon-debug-breakpoint-log:before{content:""}.codicon-debug-breakpoint-log-disabled:before{content:""}.codicon-briefcase:before{content:""}.codicon-broadcast:before{content:""}.codicon-browser:before{content:""}.codicon-bug:before{content:""}.codicon-calendar:before{content:""}.codicon-case-sensitive:before{content:""}.codicon-check:before{content:""}.codicon-checklist:before{content:""}.codicon-chevron-down:before{content:""}.codicon-chevron-left:before{content:""}.codicon-chevron-right:before{content:""}.codicon-chevron-up:before{content:""}.codicon-chrome-close:before{content:""}.codicon-chrome-maximize:before{content:""}.codicon-chrome-minimize:before{content:""}.codicon-chrome-restore:before{content:""}.codicon-circle-outline:before{content:""}.codicon-circle:before{content:""}.codicon-debug-breakpoint-unverified:before{content:""}.codicon-terminal-decoration-incomplete:before{content:""}.codicon-circle-slash:before{content:""}.codicon-circuit-board:before{content:""}.codicon-clear-all:before{content:""}.codicon-clippy:before{content:""}.codicon-close-all:before{content:""}.codicon-cloud-download:before{content:""}.codicon-cloud-upload:before{content:""}.codicon-code:before{content:""}.codicon-collapse-all:before{content:""}.codicon-color-mode:before{content:""}.codicon-comment-discussion:before{content:""}.codicon-credit-card:before{content:""}.codicon-dash:before{content:""}.codicon-dashboard:before{content:""}.codicon-database:before{content:""}.codicon-debug-continue:before{content:""}.codicon-debug-disconnect:before{content:""}.codicon-debug-pause:before{content:""}.codicon-debug-restart:before{content:""}.codicon-debug-start:before{content:""}.codicon-debug-step-into:before{content:""}.codicon-debug-step-out:before{content:""}.codicon-debug-step-over:before{content:""}.codicon-debug-stop:before{content:""}.codicon-debug:before{content:""}.codicon-device-camera-video:before{content:""}.codicon-device-camera:before{content:""}.codicon-device-mobile:before{content:""}.codicon-diff-added:before{content:""}.codicon-diff-ignored:before{content:""}.codicon-diff-modified:before{content:""}.codicon-diff-removed:before{content:""}.codicon-diff-renamed:before{content:"î« "}.codicon-diff:before{content:"î«¡"}.codicon-diff-sidebyside:before{content:"î«¡"}.codicon-discard:before{content:"î«¢"}.codicon-editor-layout:before{content:"î«£"}.codicon-empty-window:before{content:""}.codicon-exclude:before{content:"î«¥"}.codicon-extensions:before{content:""}.codicon-eye-closed:before{content:"î«§"}.codicon-file-binary:before{content:""}.codicon-file-code:before{content:"î«©"}.codicon-file-media:before{content:""}.codicon-file-pdf:before{content:"î««"}.codicon-file-submodule:before{content:""}.codicon-file-symlink-directory:before{content:"î«­"}.codicon-file-symlink-file:before{content:"î«®"}.codicon-file-zip:before{content:""}.codicon-files:before{content:"î«°"}.codicon-filter:before{content:""}.codicon-flame:before{content:""}.codicon-fold-down:before{content:""}.codicon-fold-up:before{content:"î«´"}.codicon-fold:before{content:""}.codicon-folder-active:before{content:"î«¶"}.codicon-folder-opened:before{content:"î«·"}.codicon-gear:before{content:""}.codicon-gift:before{content:""}.codicon-gist-secret:before{content:""}.codicon-gist:before{content:"î«»"}.codicon-git-commit:before{content:""}.codicon-git-compare:before{content:""}.codicon-compare-changes:before{content:""}.codicon-git-merge:before{content:""}.codicon-github-action:before{content:"î«¿"}.codicon-github-alt:before{content:""}.codicon-globe:before{content:""}.codicon-grabber:before{content:""}.codicon-graph:before{content:""}.codicon-gripper:before{content:""}.codicon-heart:before{content:""}.codicon-home:before{content:""}.codicon-horizontal-rule:before{content:""}.codicon-hubot:before{content:""}.codicon-inbox:before{content:""}.codicon-issue-reopened:before{content:""}.codicon-issues:before{content:""}.codicon-italic:before{content:""}.codicon-jersey:before{content:""}.codicon-json:before{content:""}.codicon-kebab-vertical:before{content:""}.codicon-key:before{content:""}.codicon-law:before{content:""}.codicon-lightbulb-autofix:before{content:""}.codicon-link-external:before{content:""}.codicon-link:before{content:""}.codicon-list-ordered:before{content:""}.codicon-list-unordered:before{content:""}.codicon-live-share:before{content:""}.codicon-loading:before{content:""}.codicon-location:before{content:""}.codicon-mail-read:before{content:""}.codicon-mail:before{content:""}.codicon-markdown:before{content:""}.codicon-megaphone:before{content:""}.codicon-mention:before{content:""}.codicon-milestone:before{content:""}.codicon-git-pull-request-milestone:before{content:""}.codicon-mortar-board:before{content:""}.codicon-move:before{content:""}.codicon-multiple-windows:before{content:""}.codicon-mute:before{content:""}.codicon-no-newline:before{content:""}.codicon-note:before{content:""}.codicon-octoface:before{content:""}.codicon-open-preview:before{content:""}.codicon-package:before{content:""}.codicon-paintcan:before{content:""}.codicon-pin:before{content:""}.codicon-play:before{content:""}.codicon-run:before{content:""}.codicon-plug:before{content:""}.codicon-preserve-case:before{content:""}.codicon-preview:before{content:""}.codicon-project:before{content:""}.codicon-pulse:before{content:""}.codicon-question:before{content:""}.codicon-quote:before{content:""}.codicon-radio-tower:before{content:""}.codicon-reactions:before{content:""}.codicon-references:before{content:""}.codicon-refresh:before{content:""}.codicon-regex:before{content:""}.codicon-remote-explorer:before{content:""}.codicon-remote:before{content:""}.codicon-remove:before{content:""}.codicon-replace-all:before{content:""}.codicon-replace:before{content:""}.codicon-repo-clone:before{content:""}.codicon-repo-force-push:before{content:""}.codicon-repo-pull:before{content:""}.codicon-repo-push:before{content:""}.codicon-report:before{content:""}.codicon-request-changes:before{content:""}.codicon-rocket:before{content:""}.codicon-root-folder-opened:before{content:""}.codicon-root-folder:before{content:""}.codicon-rss:before{content:""}.codicon-ruby:before{content:""}.codicon-save-all:before{content:""}.codicon-save-as:before{content:""}.codicon-save:before{content:""}.codicon-screen-full:before{content:""}.codicon-screen-normal:before{content:""}.codicon-search-stop:before{content:""}.codicon-server:before{content:""}.codicon-settings-gear:before{content:""}.codicon-settings:before{content:""}.codicon-shield:before{content:""}.codicon-smiley:before{content:""}.codicon-sort-precedence:before{content:""}.codicon-split-horizontal:before{content:""}.codicon-split-vertical:before{content:""}.codicon-squirrel:before{content:""}.codicon-star-full:before{content:""}.codicon-star-half:before{content:""}.codicon-symbol-class:before{content:""}.codicon-symbol-color:before{content:""}.codicon-symbol-constant:before{content:""}.codicon-symbol-enum-member:before{content:""}.codicon-symbol-field:before{content:""}.codicon-symbol-file:before{content:"î­ "}.codicon-symbol-interface:before{content:"î­¡"}.codicon-symbol-keyword:before{content:"î­¢"}.codicon-symbol-misc:before{content:"î­£"}.codicon-symbol-operator:before{content:"î­¤"}.codicon-symbol-property:before{content:"î­¥"}.codicon-wrench:before{content:"î­¥"}.codicon-wrench-subaction:before{content:"î­¥"}.codicon-symbol-snippet:before{content:"î­¦"}.codicon-tasklist:before{content:"î­§"}.codicon-telescope:before{content:"î­¨"}.codicon-text-size:before{content:"î­©"}.codicon-three-bars:before{content:"î­ª"}.codicon-thumbsdown:before{content:"î­«"}.codicon-thumbsup:before{content:"î­¬"}.codicon-tools:before{content:"î­­"}.codicon-triangle-down:before{content:"î­®"}.codicon-triangle-left:before{content:"î­¯"}.codicon-triangle-right:before{content:"î­°"}.codicon-triangle-up:before{content:"î­±"}.codicon-twitter:before{content:"î­²"}.codicon-unfold:before{content:"î­³"}.codicon-unlock:before{content:"î­´"}.codicon-unmute:before{content:"î­µ"}.codicon-unverified:before{content:"î­¶"}.codicon-verified:before{content:"î­·"}.codicon-versions:before{content:"î­¸"}.codicon-vm-active:before{content:"î­¹"}.codicon-vm-outline:before{content:"î­º"}.codicon-vm-running:before{content:"î­»"}.codicon-watch:before{content:"î­¼"}.codicon-whitespace:before{content:"î­½"}.codicon-whole-word:before{content:"î­¾"}.codicon-window:before{content:"î­¿"}.codicon-word-wrap:before{content:""}.codicon-zoom-in:before{content:""}.codicon-zoom-out:before{content:""}.codicon-list-filter:before{content:""}.codicon-list-flat:before{content:""}.codicon-list-selection:before{content:""}.codicon-selection:before{content:""}.codicon-list-tree:before{content:""}.codicon-debug-breakpoint-function-unverified:before{content:""}.codicon-debug-breakpoint-function:before{content:""}.codicon-debug-breakpoint-function-disabled:before{content:""}.codicon-debug-stackframe-active:before{content:""}.codicon-circle-small-filled:before{content:""}.codicon-debug-stackframe-dot:before{content:""}.codicon-terminal-decoration-mark:before{content:""}.codicon-debug-stackframe:before{content:""}.codicon-debug-stackframe-focused:before{content:""}.codicon-debug-breakpoint-unsupported:before{content:""}.codicon-symbol-string:before{content:""}.codicon-debug-reverse-continue:before{content:""}.codicon-debug-step-back:before{content:""}.codicon-debug-restart-frame:before{content:""}.codicon-debug-alt:before{content:""}.codicon-call-incoming:before{content:""}.codicon-call-outgoing:before{content:""}.codicon-menu:before{content:""}.codicon-expand-all:before{content:""}.codicon-feedback:before{content:""}.codicon-git-pull-request-reviewer:before{content:""}.codicon-group-by-ref-type:before{content:""}.codicon-ungroup-by-ref-type:before{content:""}.codicon-account:before{content:""}.codicon-git-pull-request-assignee:before{content:""}.codicon-bell-dot:before{content:""}.codicon-debug-console:before{content:""}.codicon-library:before{content:""}.codicon-output:before{content:""}.codicon-run-all:before{content:""}.codicon-sync-ignored:before{content:""}.codicon-pinned:before{content:"î® "}.codicon-github-inverted:before{content:""}.codicon-server-process:before{content:""}.codicon-server-environment:before{content:""}.codicon-pass:before{content:""}.codicon-issue-closed:before{content:""}.codicon-stop-circle:before{content:""}.codicon-play-circle:before{content:""}.codicon-record:before{content:"î®§"}.codicon-debug-alt-small:before{content:""}.codicon-vm-connect:before{content:""}.codicon-cloud:before{content:""}.codicon-merge:before{content:""}.codicon-export:before{content:""}.codicon-graph-left:before{content:"î®­"}.codicon-magnet:before{content:"î®®"}.codicon-notebook:before{content:""}.codicon-redo:before{content:"î®°"}.codicon-check-all:before{content:"î®±"}.codicon-pinned-dirty:before{content:""}.codicon-pass-filled:before{content:""}.codicon-circle-large-filled:before{content:"î®´"}.codicon-circle-large:before{content:""}.codicon-circle-large-outline:before{content:""}.codicon-combine:before{content:"î®¶"}.codicon-gather:before{content:"î®¶"}.codicon-table:before{content:"î®·"}.codicon-variable-group:before{content:""}.codicon-type-hierarchy:before{content:""}.codicon-type-hierarchy-sub:before{content:""}.codicon-type-hierarchy-super:before{content:"î®»"}.codicon-git-pull-request-create:before{content:""}.codicon-run-above:before{content:""}.codicon-run-below:before{content:""}.codicon-notebook-template:before{content:""}.codicon-debug-rerun:before{content:""}.codicon-workspace-trusted:before{content:""}.codicon-workspace-untrusted:before{content:""}.codicon-workspace-unknown:before{content:""}.codicon-terminal-cmd:before{content:""}.codicon-terminal-debian:before{content:""}.codicon-terminal-linux:before{content:""}.codicon-terminal-powershell:before{content:""}.codicon-terminal-tmux:before{content:""}.codicon-terminal-ubuntu:before{content:""}.codicon-terminal-bash:before{content:""}.codicon-arrow-swap:before{content:""}.codicon-copy:before{content:""}.codicon-person-add:before{content:""}.codicon-filter-filled:before{content:""}.codicon-wand:before{content:""}.codicon-debug-line-by-line:before{content:""}.codicon-inspect:before{content:""}.codicon-layers:before{content:""}.codicon-layers-dot:before{content:""}.codicon-layers-active:before{content:""}.codicon-compass:before{content:""}.codicon-compass-dot:before{content:""}.codicon-compass-active:before{content:""}.codicon-azure:before{content:""}.codicon-issue-draft:before{content:""}.codicon-git-pull-request-closed:before{content:""}.codicon-git-pull-request-draft:before{content:""}.codicon-debug-all:before{content:""}.codicon-debug-coverage:before{content:""}.codicon-run-errors:before{content:""}.codicon-folder-library:before{content:""}.codicon-debug-continue-small:before{content:""}.codicon-beaker-stop:before{content:""}.codicon-graph-line:before{content:""}.codicon-graph-scatter:before{content:""}.codicon-pie-chart:before{content:""}.codicon-bracket:before{content:""}.codicon-bracket-dot:before{content:""}.codicon-bracket-error:before{content:""}.codicon-lock-small:before{content:""}.codicon-azure-devops:before{content:""}.codicon-verified-filled:before{content:""}.codicon-newline:before{content:""}.codicon-layout:before{content:""}.codicon-layout-activitybar-left:before{content:""}.codicon-layout-activitybar-right:before{content:""}.codicon-layout-panel-left:before{content:""}.codicon-layout-panel-center:before{content:""}.codicon-layout-panel-justify:before{content:""}.codicon-layout-panel-right:before{content:""}.codicon-layout-panel:before{content:""}.codicon-layout-sidebar-left:before{content:""}.codicon-layout-sidebar-right:before{content:""}.codicon-layout-statusbar:before{content:""}.codicon-layout-menubar:before{content:""}.codicon-layout-centered:before{content:""}.codicon-target:before{content:""}.codicon-indent:before{content:""}.codicon-record-small:before{content:""}.codicon-error-small:before{content:""}.codicon-terminal-decoration-error:before{content:""}.codicon-arrow-circle-down:before{content:""}.codicon-arrow-circle-left:before{content:""}.codicon-arrow-circle-right:before{content:""}.codicon-arrow-circle-up:before{content:""}.codicon-layout-sidebar-right-off:before{content:""}.codicon-layout-panel-off:before{content:""}.codicon-layout-sidebar-left-off:before{content:""}.codicon-blank:before{content:""}.codicon-heart-filled:before{content:""}.codicon-map:before{content:""}.codicon-map-horizontal:before{content:""}.codicon-fold-horizontal:before{content:""}.codicon-map-filled:before{content:""}.codicon-map-horizontal-filled:before{content:""}.codicon-fold-horizontal-filled:before{content:""}.codicon-circle-small:before{content:""}.codicon-bell-slash:before{content:""}.codicon-bell-slash-dot:before{content:""}.codicon-comment-unresolved:before{content:""}.codicon-git-pull-request-go-to-changes:before{content:""}.codicon-git-pull-request-new-changes:before{content:""}.codicon-search-fuzzy:before{content:""}.codicon-comment-draft:before{content:""}.codicon-send:before{content:""}.codicon-sparkle:before{content:""}.codicon-insert:before{content:""}.codicon-mic:before{content:""}.codicon-thumbsdown-filled:before{content:""}.codicon-thumbsup-filled:before{content:""}.codicon-coffee:before{content:""}.codicon-snake:before{content:""}.codicon-game:before{content:""}.codicon-vr:before{content:""}.codicon-chip:before{content:""}.codicon-piano:before{content:""}.codicon-music:before{content:""}.codicon-mic-filled:before{content:""}.codicon-repo-fetch:before{content:""}.codicon-copilot:before{content:""}.codicon-lightbulb-sparkle:before{content:""}.codicon-robot:before{content:"î° "}.codicon-sparkle-filled:before{content:"î°¡"}.codicon-diff-single:before{content:"î°¢"}.codicon-diff-multiple:before{content:"î°£"}.codicon-surround-with:before{content:"î°¤"}.codicon-share:before{content:"î°¥"}.codicon-git-stash:before{content:"î°¦"}.codicon-git-stash-apply:before{content:"î°§"}.codicon-git-stash-pop:before{content:"î°¨"}.codicon-vscode:before{content:"î°©"}.codicon-vscode-insiders:before{content:"î°ª"}.codicon-code-oss:before{content:"î°«"}.codicon-run-coverage:before{content:"î°¬"}.codicon-run-all-coverage:before{content:"î°­"}.codicon-coverage:before{content:"î°®"}.codicon-github-project:before{content:"î°¯"}.codicon-map-vertical:before{content:"î°°"}.codicon-fold-vertical:before{content:"î°°"}.codicon-map-vertical-filled:before{content:"î°±"}.codicon-fold-vertical-filled:before{content:"î°±"}.codicon-go-to-search:before{content:"î°²"}.codicon-percentage:before{content:"î°³"}.codicon-sort-percentage:before{content:"î°³"}.codicon-attach:before{content:"î°´"}.codicon-git-fetch:before{content:""}.cm-wrapper{line-height:18px}.cm-wrapper,.cm-wrapper>div{width:100%;height:100%}.CodeMirror span.cm-meta{color:var(--vscode-editor-foreground)}.CodeMirror span.cm-number{color:var(--vscode-debugTokenExpression-number)}.CodeMirror span.cm-keyword,.CodeMirror span.cm-builtin{color:var(--vscode-debugTokenExpression-name)}.CodeMirror span.cm-operator{color:var(--vscode-editor-foreground)}.CodeMirror span.cm-string,.CodeMirror span.cm-string-2{color:var(--vscode-debugTokenExpression-string)}.CodeMirror span.cm-error{color:var(--vscode-errorForeground)}.CodeMirror span.cm-def,.CodeMirror span.cm-tag{color:#0070c1}.CodeMirror span.cm-comment,.CodeMirror span.cm-link{color:green}.CodeMirror span.cm-variable,.CodeMirror span.cm-variable-2,.CodeMirror span.cm-atom{color:#0070c1}.CodeMirror span.cm-property{color:#795e26}.CodeMirror span.cm-qualifier,.CodeMirror span.cm-attribute{color:#001080}.CodeMirror span.cm-variable-3,.CodeMirror span.cm-type{color:#267f99}:root.dark-mode .CodeMirror span.cm-def,:root.dark-mode .CodeMirror span.cm-tag{color:var(--vscode-debugView-valueChangedHighlight)}:root.dark-mode .CodeMirror span.cm-comment,:root.dark-mode .CodeMirror span.cm-link{color:#6a9955}:root.dark-mode .CodeMirror span.cm-variable,:root.dark-mode .CodeMirror span.cm-variable-2,:root.dark-mode .CodeMirror span.cm-atom{color:#4fc1ff}:root.dark-mode .CodeMirror span.cm-property{color:#dcdcaa}:root.dark-mode .CodeMirror span.cm-qualifier,:root.dark-mode .CodeMirror span.cm-attribute{color:#9cdcfe}:root.dark-mode .CodeMirror span.cm-variable-3,:root.dark-mode .CodeMirror span.cm-type{color:#4ec9b0}.CodeMirror span.cm-bracket{color:var(--vscode-editorBracketHighlight-foreground3)}.CodeMirror-cursor{border-left:1px solid var(--vscode-editor-foreground)!important}.CodeMirror div.CodeMirror-selected{background:var(--vscode-terminal-inactiveSelectionBackground)}.CodeMirror .CodeMirror-gutters{z-index:0;background:1px solid var(--vscode-editorGroup-border);border-right:none}.CodeMirror .CodeMirror-gutter-elt{background-color:var(--vscode-editorGutter-background)}.CodeMirror .CodeMirror-gutterwrapper{border-right:1px solid var(--vscode-editorGroup-border);color:var(--vscode-editorLineNumber-foreground)}.CodeMirror .CodeMirror-matchingbracket{background-color:var(--vscode-editorBracketPairGuide-background1);color:var(--vscode-editorBracketHighlight-foreground1)!important}.CodeMirror{font-family:var(--vscode-editor-font-family)!important;color:var(--vscode-editor-foreground)!important;background-color:var(--vscode-editor-background)!important;font-weight:var(--vscode-editor-font-weight)!important;font-size:var(--vscode-editor-font-size)!important}.CodeMirror .source-line-running{background-color:var(--vscode-editor-selectionBackground);z-index:2}.CodeMirror .source-line-paused{background-color:var(--vscode-editor-selectionHighlightBackground);z-index:2}.CodeMirror .source-line-error-widget{background-color:var(--vscode-inputValidation-errorBackground);white-space:pre-wrap;margin:3px 10px;padding:5px}.CodeMirror span.cm-link,span.cm-linkified{color:var(--vscode-textLink-foreground);text-decoration:underline;cursor:pointer}.CodeMirror .source-line-error-underline{text-decoration:underline;text-decoration-color:var(--vscode-errorForeground);text-decoration-style:wavy}.CodeMirror-placeholder{color:var(--vscode-input-placeholderForeground)!important}.CodeMirror-dialog-top{padding-top:8px!important}.split-view{display:flex;flex:auto;position:relative}.split-view.vertical{flex-direction:column}.split-view.vertical.sidebar-first{flex-direction:column-reverse}.split-view.horizontal{flex-direction:row}.split-view.horizontal.sidebar-first{flex-direction:row-reverse}.split-view-main{display:flex;flex:auto}.split-view-sidebar{display:flex;flex:none}.split-view.vertical:not(.sidebar-first)>.split-view-sidebar{border-top:1px solid var(--vscode-panel-border)}.split-view.horizontal:not(.sidebar-first)>.split-view-sidebar{border-left:1px solid var(--vscode-panel-border)}.split-view.vertical.sidebar-first>.split-view-sidebar{border-bottom:1px solid var(--vscode-panel-border)}.split-view.horizontal.sidebar-first>.split-view-sidebar{border-right:1px solid var(--vscode-panel-border)}.split-view-resizer{position:absolute;z-index:100}.split-view.vertical>.split-view-resizer{left:0;right:0;height:12px;cursor:ns-resize}.split-view.horizontal>.split-view-resizer{top:0;bottom:0;width:12px;cursor:ew-resize}.tabbed-pane{display:flex;flex:auto;overflow:hidden}.tabbed-pane .toolbar{background-color:var(--vscode-sideBar-background)}.tabbed-pane .tab-content{display:flex;flex:auto;overflow:hidden;position:relative;flex-direction:column}.tabbed-pane-tab{padding:2px 6px 0;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-bottom:2px solid transparent;outline:none;height:100%}.tabbed-pane-tab-label{max-width:250px;white-space:pre;overflow:hidden;text-overflow:ellipsis;display:inline-block}.tabbed-pane-tab.selected{background-color:var(--vscode-tab-activeBackground)}.tabbed-pane-tab-counter{padding:0 4px;background:var(--vscode-menu-separatorBackground);border-radius:8px;height:16px;margin-left:4px;line-height:16px;min-width:18px;display:flex;align-items:center;justify-content:center}.tabbed-pane-tab-counter.error{background:var(--vscode-list-errorForeground);color:var(--vscode-button-foreground)}.toolbar{position:relative;display:flex;color:var(--vscode-sideBarTitle-foreground);min-height:30px;align-items:center;flex:none;padding-right:4px}.toolbar.toolbar-sidebar-background{background-color:var(--vscode-sideBar-background)}.toolbar:not(.no-shadow):after{content:"";display:block;position:absolute;pointer-events:none;top:0;bottom:0;left:-2px;right:-2px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px;z-index:100}.toolbar.no-min-height{min-height:0}.toolbar input{padding:0 5px;line-height:24px;outline:none;margin:0 4px}.toolbar select{background:none;outline:none;padding:3px;margin:2px}.toolbar option{background-color:var(--vscode-tab-activeBackground)}.toolbar input,.toolbar select{border:none;color:var(--vscode-input-foreground);background-color:var(--vscode-input-background)}:root{--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #616161;--vscode-disabledForeground: rgba(97, 97, 97, .5);--vscode-errorForeground: #a1260d;--vscode-descriptionForeground: #717171;--vscode-icon-foreground: #424242;--vscode-focusBorder: #0090f1;--vscode-textSeparator-foreground: rgba(0, 0, 0, .18);--vscode-textLink-foreground: #006ab1;--vscode-textLink-activeForeground: #006ab1;--vscode-textPreformat-foreground: #a31515;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(220, 220, 220, .4);--vscode-widget-shadow: rgba(0, 0, 0, .16);--vscode-input-background: #ffffff;--vscode-input-foreground: #616161;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(184, 184, 184, .31);--vscode-inputOption-activeBackground: rgba(0, 144, 241, .2);--vscode-inputOption-activeForeground: #000000;--vscode-input-placeholderForeground: #767676;--vscode-inputValidation-infoBackground: #d6ecf2;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #f6f5d2;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #f2dede;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #ffffff;--vscode-dropdown-border: #cecece;--vscode-checkbox-background: #ffffff;--vscode-checkbox-border: #cecece;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #007acc;--vscode-button-hoverBackground: #0062a3;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #5f6a79;--vscode-button-secondaryHoverBackground: #4c5561;--vscode-badge-background: #c4c4c4;--vscode-badge-foreground: #333333;--vscode-scrollbar-shadow: #dddddd;--vscode-scrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #e51400;--vscode-editorWarning-foreground: #bf8803;--vscode-editorInfo-foreground: #1a85ff;--vscode-editorHint-foreground: #6c6c6c;--vscode-sash-hoverBorder: #0090f1;--vscode-editor-background: #ffffff;--vscode-editor-foreground: #000000;--vscode-editorStickyScroll-background: #ffffff;--vscode-editorStickyScrollHover-background: #f0f0f0;--vscode-editorWidget-background: #f3f3f3;--vscode-editorWidget-foreground: #616161;--vscode-editorWidget-border: #c8c8c8;--vscode-quickInput-background: #f3f3f3;--vscode-quickInput-foreground: #616161;--vscode-quickInputTitle-background: rgba(0, 0, 0, .06);--vscode-pickerGroup-foreground: #0066bf;--vscode-pickerGroup-border: #cccedb;--vscode-keybindingLabel-background: rgba(221, 221, 221, .4);--vscode-keybindingLabel-foreground: #555555;--vscode-keybindingLabel-border: rgba(204, 204, 204, .4);--vscode-keybindingLabel-bottomBorder: rgba(187, 187, 187, .4);--vscode-editor-selectionBackground: #add6ff;--vscode-editor-inactiveSelectionBackground: #e5ebf1;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .5);--vscode-editor-findMatchBackground: #a8ac94;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(180, 180, 180, .3);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(173, 214, 255, .15);--vscode-editorHoverWidget-background: #f3f3f3;--vscode-editorHoverWidget-foreground: #616161;--vscode-editorHoverWidget-border: #c8c8c8;--vscode-editorHoverWidget-statusBarBackground: #e7e7e7;--vscode-editorLink-activeForeground: #0000ff;--vscode-editorInlayHint-foreground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-background: rgba(196, 196, 196, .3);--vscode-editorInlayHint-typeForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-typeBackground: rgba(196, 196, 196, .3);--vscode-editorInlayHint-parameterForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-parameterBackground: rgba(196, 196, 196, .3);--vscode-editorLightBulb-foreground: #ddb100;--vscode-editorLightBulbAutoFix-foreground: #007acc;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .4);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .3);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(34, 34, 34, .2);--vscode-list-focusOutline: #0090f1;--vscode-list-focusAndSelectionOutline: #90c2f9;--vscode-list-activeSelectionBackground: #0060c0;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #e4e6f1;--vscode-list-hoverBackground: #e8e8e8;--vscode-list-dropBackground: #d6ebff;--vscode-list-highlightForeground: #0066bf;--vscode-list-focusHighlightForeground: #bbe7ff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #b01011;--vscode-list-warningForeground: #855f00;--vscode-listFilterWidget-background: #f3f3f3;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .16);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #a9a9a9;--vscode-tree-tableColumnsBorder: rgba(97, 97, 97, .13);--vscode-tree-tableOddRowsBackground: rgba(97, 97, 97, .04);--vscode-list-deemphasizedForeground: #8e8e90;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #0060c0;--vscode-menu-foreground: #616161;--vscode-menu-background: #ffffff;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #0060c0;--vscode-menu-separatorBackground: #d4d4d4;--vscode-toolbar-hoverBackground: rgba(184, 184, 184, .31);--vscode-toolbar-activeBackground: rgba(166, 166, 166, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(10, 50, 100, .2);--vscode-editor-snippetFinalTabstopHighlightBorder: rgba(10, 50, 100, .5);--vscode-breadcrumb-foreground: rgba(97, 97, 97, .8);--vscode-breadcrumb-background: #ffffff;--vscode-breadcrumb-focusForeground: #4e4e4e;--vscode-breadcrumb-activeSelectionForeground: #4e4e4e;--vscode-breadcrumbPicker-background: #f3f3f3;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #c9c9c9;--vscode-minimap-selectionHighlight: #add6ff;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #bf8803;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(100, 100, 100, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(0, 0, 0, .3);--vscode-problemsErrorIcon-foreground: #e51400;--vscode-problemsWarningIcon-foreground: #bf8803;--vscode-problemsInfoIcon-foreground: #1a85ff;--vscode-charts-foreground: #616161;--vscode-charts-lines: rgba(97, 97, 97, .5);--vscode-charts-red: #e51400;--vscode-charts-blue: #1a85ff;--vscode-charts-yellow: #bf8803;--vscode-charts-orange: #d18616;--vscode-charts-green: #388a34;--vscode-charts-purple: #652d90;--vscode-editor-lineHighlightBorder: #eeeeee;--vscode-editor-rangeHighlightBackground: rgba(253, 255, 0, .2);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #000000;--vscode-editorWhitespace-foreground: rgba(51, 51, 51, .2);--vscode-editorIndentGuide-background: #d3d3d3;--vscode-editorIndentGuide-activeBackground: #939393;--vscode-editorLineNumber-foreground: #237893;--vscode-editorActiveLineNumber-foreground: #0b216f;--vscode-editorLineNumber-activeForeground: #0b216f;--vscode-editorRuler-foreground: #d3d3d3;--vscode-editorCodeLens-foreground: #919191;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #b9b9b9;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #ffffff;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .47);--vscode-editorGhostText-foreground: rgba(0, 0, 0, .47);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #bf8803;--vscode-editorOverviewRuler-infoForeground: #1a85ff;--vscode-editorBracketHighlight-foreground1: #0431fa;--vscode-editorBracketHighlight-foreground2: #319331;--vscode-editorBracketHighlight-foreground3: #7b3814;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #cea33d;--vscode-editorUnicodeHighlight-background: rgba(206, 163, 61, .08);--vscode-symbolIcon-arrayForeground: #616161;--vscode-symbolIcon-booleanForeground: #616161;--vscode-symbolIcon-classForeground: #d67e00;--vscode-symbolIcon-colorForeground: #616161;--vscode-symbolIcon-constantForeground: #616161;--vscode-symbolIcon-constructorForeground: #652d90;--vscode-symbolIcon-enumeratorForeground: #d67e00;--vscode-symbolIcon-enumeratorMemberForeground: #007acc;--vscode-symbolIcon-eventForeground: #d67e00;--vscode-symbolIcon-fieldForeground: #007acc;--vscode-symbolIcon-fileForeground: #616161;--vscode-symbolIcon-folderForeground: #616161;--vscode-symbolIcon-functionForeground: #652d90;--vscode-symbolIcon-interfaceForeground: #007acc;--vscode-symbolIcon-keyForeground: #616161;--vscode-symbolIcon-keywordForeground: #616161;--vscode-symbolIcon-methodForeground: #652d90;--vscode-symbolIcon-moduleForeground: #616161;--vscode-symbolIcon-namespaceForeground: #616161;--vscode-symbolIcon-nullForeground: #616161;--vscode-symbolIcon-numberForeground: #616161;--vscode-symbolIcon-objectForeground: #616161;--vscode-symbolIcon-operatorForeground: #616161;--vscode-symbolIcon-packageForeground: #616161;--vscode-symbolIcon-propertyForeground: #616161;--vscode-symbolIcon-referenceForeground: #616161;--vscode-symbolIcon-snippetForeground: #616161;--vscode-symbolIcon-stringForeground: #616161;--vscode-symbolIcon-structForeground: #616161;--vscode-symbolIcon-textForeground: #616161;--vscode-symbolIcon-typeParameterForeground: #616161;--vscode-symbolIcon-unitForeground: #616161;--vscode-symbolIcon-variableForeground: #007acc;--vscode-editorHoverWidget-highlightForeground: #0066bf;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(173, 214, 255, .3);--vscode-editorGutter-foldingControlForeground: #424242;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .25);--vscode-editor-wordHighlightStrongBackground: rgba(14, 99, 156, .25);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(26, 133, 255, .1);--vscode-peekViewTitleLabel-foreground: #000000;--vscode-peekViewTitleDescription-foreground: #616161;--vscode-peekView-border: #1a85ff;--vscode-peekViewResult-background: #f3f3f3;--vscode-peekViewResult-lineForeground: #646465;--vscode-peekViewResult-fileForeground: #1e1e1e;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #6c6c6c;--vscode-peekViewEditor-background: #f2f8fc;--vscode-peekViewEditorGutter-background: #f2f8fc;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(245, 216, 2, .87);--vscode-editorMarkerNavigationError-background: #e51400;--vscode-editorMarkerNavigationError-headerBackground: rgba(229, 20, 0, .1);--vscode-editorMarkerNavigationWarning-background: #bf8803;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(191, 136, 3, .1);--vscode-editorMarkerNavigationInfo-background: #1a85ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(26, 133, 255, .1);--vscode-editorMarkerNavigation-background: #ffffff;--vscode-editorSuggestWidget-background: #f3f3f3;--vscode-editorSuggestWidget-border: #c8c8c8;--vscode-editorSuggestWidget-foreground: #000000;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #0060c0;--vscode-editorSuggestWidget-highlightForeground: #0066bf;--vscode-editorSuggestWidget-focusHighlightForeground: #bbe7ff;--vscode-editorSuggestWidgetStatus-foreground: rgba(0, 0, 0, .5);--vscode-tab-activeBackground: #ffffff;--vscode-tab-unfocusedActiveBackground: #ffffff;--vscode-tab-inactiveBackground: #ececec;--vscode-tab-unfocusedInactiveBackground: #ececec;--vscode-tab-activeForeground: #333333;--vscode-tab-inactiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedActiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedInactiveForeground: rgba(51, 51, 51, .35);--vscode-tab-border: #f3f3f3;--vscode-tab-lastPinnedBorder: rgba(97, 97, 97, .19);--vscode-tab-activeModifiedBorder: #33aaee;--vscode-tab-inactiveModifiedBorder: rgba(51, 170, 238, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 170, 238, .7);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 170, 238, .25);--vscode-editorPane-background: #ffffff;--vscode-editorGroupHeader-tabsBackground: #f3f3f3;--vscode-editorGroupHeader-noTabsBackground: #ffffff;--vscode-editorGroup-border: #e7e7e7;--vscode-editorGroup-dropBackground: rgba(38, 119, 203, .18);--vscode-editorGroup-dropIntoPromptForeground: #616161;--vscode-editorGroup-dropIntoPromptBackground: #f3f3f3;--vscode-sideBySideEditor-horizontalBorder: #e7e7e7;--vscode-sideBySideEditor-verticalBorder: #e7e7e7;--vscode-panel-background: #ffffff;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #424242;--vscode-panelTitle-inactiveForeground: rgba(66, 66, 66, .75);--vscode-panelTitle-activeBorder: #424242;--vscode-panelInput-border: #dddddd;--vscode-panel-dropBorder: #424242;--vscode-panelSection-dropBackground: rgba(38, 119, 203, .18);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #004386;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #1a85ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #725102;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #2c2c2c;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #f3f3f3;--vscode-sideBarTitle-foreground: #6f6f6f;--vscode-sideBar-dropBackground: rgba(38, 119, 203, .18);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(97, 97, 97, .19);--vscode-titleBar-activeForeground: #333333;--vscode-titleBar-inactiveForeground: rgba(51, 51, 51, .6);--vscode-titleBar-activeBackground: #dddddd;--vscode-titleBar-inactiveBackground: rgba(221, 221, 221, .6);--vscode-menubar-selectionForeground: #333333;--vscode-menubar-selectionBackground: rgba(184, 184, 184, .31);--vscode-notifications-foreground: #616161;--vscode-notifications-background: #f3f3f3;--vscode-notificationLink-foreground: #006ab1;--vscode-notificationCenterHeader-background: #e7e7e7;--vscode-notifications-border: #e7e7e7;--vscode-notificationsErrorIcon-foreground: #e51400;--vscode-notificationsWarningIcon-foreground: #bf8803;--vscode-notificationsInfoIcon-foreground: #1a85ff;--vscode-commandCenter-foreground: #333333;--vscode-commandCenter-activeForeground: #333333;--vscode-commandCenter-activeBackground: rgba(184, 184, 184, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(97, 97, 97, .5);--vscode-editorCommentsWidget-unresolvedBorder: #1a85ff;--vscode-editorCommentsWidget-rangeBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(26, 133, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(26, 133, 255, .4);--vscode-editorGutter-commentRangeForeground: #d5d8e9;--vscode-debugToolBar-background: #f3f3f3;--vscode-debugIcon-startForeground: #388a34;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 102, .45);--vscode-editor-focusedStackFrameHighlightBackground: rgba(206, 231, 206, .45);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .4);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #444444;--vscode-settings-modifiedItemIndicator: #66afe0;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #ffffff;--vscode-settings-dropdownBorder: #cecece;--vscode-settings-dropdownListBorder: #c8c8c8;--vscode-settings-checkboxBackground: #ffffff;--vscode-settings-checkboxBorder: #cecece;--vscode-settings-textInputBackground: #ffffff;--vscode-settings-textInputForeground: #616161;--vscode-settings-textInputBorder: #cecece;--vscode-settings-numberInputBackground: #ffffff;--vscode-settings-numberInputForeground: #616161;--vscode-settings-numberInputBorder: #cecece;--vscode-settings-focusedRowBackground: rgba(232, 232, 232, .6);--vscode-settings-rowHoverBackground: rgba(232, 232, 232, .3);--vscode-settings-focusedRowBorder: rgba(0, 0, 0, .12);--vscode-terminal-foreground: #333333;--vscode-terminal-selectionBackground: #add6ff;--vscode-terminal-inactiveSelectionBackground: #e5ebf1;--vscode-terminalCommandDecoration-defaultBackground: rgba(0, 0, 0, .25);--vscode-terminalCommandDecoration-successBackground: #2090d3;--vscode-terminalCommandDecoration-errorBackground: #e51400;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #a8ac94;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(38, 119, 203, .18);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #e51400;--vscode-testing-peekHeaderBackground: rgba(229, 20, 0, .1);--vscode-testing-message\.error\.decorationForeground: #e51400;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(0, 0, 0, .5);--vscode-welcomePage-tileBackground: #f3f3f3;--vscode-welcomePage-tileHoverBackground: #dbdbdb;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .16);--vscode-welcomePage-progress\.background: #ffffff;--vscode-welcomePage-progress\.foreground: #006ab1;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #f1dfde;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(0, 0, 0, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #2090d3;--vscode-editorGutter-addedBackground: #48985d;--vscode-editorGutter-deletedBackground: #e51400;--vscode-minimapGutter-modifiedBackground: #2090d3;--vscode-minimapGutter-addedBackground: #48985d;--vscode-minimapGutter-deletedBackground: #e51400;--vscode-editorOverviewRuler-modifiedForeground: rgba(32, 144, 211, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 152, 93, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(229, 20, 0, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #be8700;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #e8e8e8;--vscode-notebook-focusedEditorBorder: #0090f1;--vscode-notebookStatusSuccessIcon-foreground: #388a34;--vscode-notebookStatusErrorIcon-foreground: #a1260d;--vscode-notebookStatusRunningIcon-foreground: #616161;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: rgba(200, 221, 241, .31);--vscode-notebook-selectedCellBorder: #e8e8e8;--vscode-notebook-focusedCellBorder: #0090f1;--vscode-notebook-inactiveFocusedCellBorder: #e8e8e8;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(0, 0, 0, .08);--vscode-notebook-cellInsertionIndicator: #0090f1;--vscode-notebookScrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-notebook-symbolHighlightBackground: rgba(253, 255, 0, .2);--vscode-notebook-cellEditorBackground: #f3f3f3;--vscode-notebook-editorBackground: #ffffff;--vscode-keybindingTable-headerBackground: rgba(97, 97, 97, .04);--vscode-keybindingTable-rowsBackground: rgba(97, 97, 97, .04);--vscode-scm-providerBorder: #c8c8c8;--vscode-searchEditor-textInputBorder: #cecece;--vscode-debugTokenExpression-name: #9b46b0;--vscode-debugTokenExpression-value: rgba(108, 108, 108, .8);--vscode-debugTokenExpression-string: #a31515;--vscode-debugTokenExpression-boolean: #0000ff;--vscode-debugTokenExpression-number: #098658;--vscode-debugTokenExpression-error: #e51400;--vscode-debugView-exceptionLabelForeground: #ffffff;--vscode-debugView-exceptionLabelBackground: #a31515;--vscode-debugView-stateLabelForeground: #616161;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #1a85ff;--vscode-debugConsole-warningForeground: #bf8803;--vscode-debugConsole-errorForeground: #a1260d;--vscode-debugConsole-sourceForeground: #616161;--vscode-debugConsoleInputIcon-foreground: #616161;--vscode-debugIcon-pauseForeground: #007acc;--vscode-debugIcon-stopForeground: #a1260d;--vscode-debugIcon-disconnectForeground: #a1260d;--vscode-debugIcon-restartForeground: #388a34;--vscode-debugIcon-stepOverForeground: #007acc;--vscode-debugIcon-stepIntoForeground: #007acc;--vscode-debugIcon-stepOutForeground: #007acc;--vscode-debugIcon-continueForeground: #007acc;--vscode-debugIcon-stepBackForeground: #007acc;--vscode-extensionButton-prominentBackground: #007acc;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #0062a3;--vscode-extensionIcon-starForeground: #df6100;--vscode-extensionIcon-verifiedForeground: #006ab1;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #b51e78;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #00bc00;--vscode-terminal-ansiYellow: #949800;--vscode-terminal-ansiBlue: #0451a5;--vscode-terminal-ansiMagenta: #bc05bc;--vscode-terminal-ansiCyan: #0598bc;--vscode-terminal-ansiWhite: #555555;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #cd3131;--vscode-terminal-ansiBrightGreen: #14ce14;--vscode-terminal-ansiBrightYellow: #b5ba00;--vscode-terminal-ansiBrightBlue: #0451a5;--vscode-terminal-ansiBrightMagenta: #bc05bc;--vscode-terminal-ansiBrightCyan: #0598bc;--vscode-terminal-ansiBrightWhite: #a5a5a5;--vscode-interactive-activeCodeBorder: #1a85ff;--vscode-interactive-inactiveCodeBorder: #e4e6f1;--vscode-gitDecoration-addedResourceForeground: #587c0c;--vscode-gitDecoration-modifiedResourceForeground: #895503;--vscode-gitDecoration-deletedResourceForeground: #ad0707;--vscode-gitDecoration-renamedResourceForeground: #007100;--vscode-gitDecoration-untrackedResourceForeground: #007100;--vscode-gitDecoration-ignoredResourceForeground: #8e8e90;--vscode-gitDecoration-stageModifiedResourceForeground: #895503;--vscode-gitDecoration-stageDeletedResourceForeground: #ad0707;--vscode-gitDecoration-conflictingResourceForeground: #ad0707;--vscode-gitDecoration-submoduleResourceForeground: #1258a7}:root.light-mode{color-scheme:light}:root.dark-mode{color-scheme:dark;--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #cccccc;--vscode-disabledForeground: rgba(204, 204, 204, .5);--vscode-errorForeground: #f48771;--vscode-descriptionForeground: rgba(204, 204, 204, .7);--vscode-icon-foreground: #c5c5c5;--vscode-focusBorder: #007fd4;--vscode-textSeparator-foreground: rgba(255, 255, 255, .18);--vscode-textLink-foreground: #3794ff;--vscode-textLink-activeForeground: #3794ff;--vscode-textPreformat-foreground: #d7ba7d;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(10, 10, 10, .4);--vscode-widget-shadow: rgba(0, 0, 0, .36);--vscode-input-background: #3c3c3c;--vscode-input-foreground: #cccccc;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(90, 93, 94, .5);--vscode-inputOption-activeBackground: rgba(0, 127, 212, .4);--vscode-inputOption-activeForeground: #ffffff;--vscode-input-placeholderForeground: #a6a6a6;--vscode-inputValidation-infoBackground: #063b49;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #352a05;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #5a1d1d;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #3c3c3c;--vscode-dropdown-foreground: #f0f0f0;--vscode-dropdown-border: #3c3c3c;--vscode-checkbox-background: #3c3c3c;--vscode-checkbox-foreground: #f0f0f0;--vscode-checkbox-border: #3c3c3c;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #0e639c;--vscode-button-hoverBackground: #1177bb;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #3a3d41;--vscode-button-secondaryHoverBackground: #45494e;--vscode-badge-background: #4d4d4d;--vscode-badge-foreground: #ffffff;--vscode-scrollbar-shadow: #000000;--vscode-scrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #f14c4c;--vscode-editorWarning-foreground: #cca700;--vscode-editorInfo-foreground: #3794ff;--vscode-editorHint-foreground: rgba(238, 238, 238, .7);--vscode-sash-hoverBorder: #007fd4;--vscode-editor-background: #1e1e1e;--vscode-editor-foreground: #d4d4d4;--vscode-editorStickyScroll-background: #1e1e1e;--vscode-editorStickyScrollHover-background: #2a2d2e;--vscode-editorWidget-background: #252526;--vscode-editorWidget-foreground: #cccccc;--vscode-editorWidget-border: #454545;--vscode-quickInput-background: #252526;--vscode-quickInput-foreground: #cccccc;--vscode-quickInputTitle-background: rgba(255, 255, 255, .1);--vscode-pickerGroup-foreground: #3794ff;--vscode-pickerGroup-border: #3f3f46;--vscode-keybindingLabel-background: rgba(128, 128, 128, .17);--vscode-keybindingLabel-foreground: #cccccc;--vscode-keybindingLabel-border: rgba(51, 51, 51, .6);--vscode-keybindingLabel-bottomBorder: rgba(68, 68, 68, .6);--vscode-editor-selectionBackground: #264f78;--vscode-editor-inactiveSelectionBackground: #3a3d41;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .15);--vscode-editor-findMatchBackground: #515c6a;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(58, 61, 65, .4);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(38, 79, 120, .25);--vscode-editorHoverWidget-background: #252526;--vscode-editorHoverWidget-foreground: #cccccc;--vscode-editorHoverWidget-border: #454545;--vscode-editorHoverWidget-statusBarBackground: #2c2c2d;--vscode-editorLink-activeForeground: #4e94ce;--vscode-editorInlayHint-foreground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-background: rgba(77, 77, 77, .6);--vscode-editorInlayHint-typeForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-typeBackground: rgba(77, 77, 77, .6);--vscode-editorInlayHint-parameterForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-parameterBackground: rgba(77, 77, 77, .6);--vscode-editorLightBulb-foreground: #ffcc00;--vscode-editorLightBulbAutoFix-foreground: #75beff;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .2);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .4);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(204, 204, 204, .2);--vscode-list-focusOutline: #007fd4;--vscode-list-activeSelectionBackground: #04395e;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #37373d;--vscode-list-hoverBackground: #2a2d2e;--vscode-list-dropBackground: #383b3d;--vscode-list-highlightForeground: #2aaaff;--vscode-list-focusHighlightForeground: #2aaaff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #f88070;--vscode-list-warningForeground: #cca700;--vscode-listFilterWidget-background: #252526;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .36);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #585858;--vscode-tree-tableColumnsBorder: rgba(204, 204, 204, .13);--vscode-tree-tableOddRowsBackground: rgba(204, 204, 204, .04);--vscode-list-deemphasizedForeground: #8c8c8c;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #04395e;--vscode-menu-foreground: #cccccc;--vscode-menu-background: #303031;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #04395e;--vscode-menu-separatorBackground: #606060;--vscode-toolbar-hoverBackground: rgba(90, 93, 94, .31);--vscode-toolbar-activeBackground: rgba(99, 102, 103, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(124, 124, 124, .3);--vscode-editor-snippetFinalTabstopHighlightBorder: #525252;--vscode-breadcrumb-foreground: rgba(204, 204, 204, .8);--vscode-breadcrumb-background: #1e1e1e;--vscode-breadcrumb-focusForeground: #e0e0e0;--vscode-breadcrumb-activeSelectionForeground: #e0e0e0;--vscode-breadcrumbPicker-background: #252526;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #676767;--vscode-minimap-selectionHighlight: #264f78;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #cca700;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(121, 121, 121, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(191, 191, 191, .2);--vscode-problemsErrorIcon-foreground: #f14c4c;--vscode-problemsWarningIcon-foreground: #cca700;--vscode-problemsInfoIcon-foreground: #3794ff;--vscode-charts-foreground: #cccccc;--vscode-charts-lines: rgba(204, 204, 204, .5);--vscode-charts-red: #f14c4c;--vscode-charts-blue: #3794ff;--vscode-charts-yellow: #cca700;--vscode-charts-orange: #d18616;--vscode-charts-green: #89d185;--vscode-charts-purple: #b180d7;--vscode-editor-lineHighlightBorder: #282828;--vscode-editor-rangeHighlightBackground: rgba(255, 255, 255, .04);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #aeafad;--vscode-editorWhitespace-foreground: rgba(227, 228, 226, .16);--vscode-editorIndentGuide-background: #404040;--vscode-editorIndentGuide-activeBackground: #707070;--vscode-editorLineNumber-foreground: #858585;--vscode-editorActiveLineNumber-foreground: #c6c6c6;--vscode-editorLineNumber-activeForeground: #c6c6c6;--vscode-editorRuler-foreground: #5a5a5a;--vscode-editorCodeLens-foreground: #999999;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #888888;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #1e1e1e;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .67);--vscode-editorGhostText-foreground: rgba(255, 255, 255, .34);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #cca700;--vscode-editorOverviewRuler-infoForeground: #3794ff;--vscode-editorBracketHighlight-foreground1: #ffd700;--vscode-editorBracketHighlight-foreground2: #da70d6;--vscode-editorBracketHighlight-foreground3: #179fff;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #bd9b03;--vscode-editorUnicodeHighlight-background: rgba(189, 155, 3, .15);--vscode-symbolIcon-arrayForeground: #cccccc;--vscode-symbolIcon-booleanForeground: #cccccc;--vscode-symbolIcon-classForeground: #ee9d28;--vscode-symbolIcon-colorForeground: #cccccc;--vscode-symbolIcon-constantForeground: #cccccc;--vscode-symbolIcon-constructorForeground: #b180d7;--vscode-symbolIcon-enumeratorForeground: #ee9d28;--vscode-symbolIcon-enumeratorMemberForeground: #75beff;--vscode-symbolIcon-eventForeground: #ee9d28;--vscode-symbolIcon-fieldForeground: #75beff;--vscode-symbolIcon-fileForeground: #cccccc;--vscode-symbolIcon-folderForeground: #cccccc;--vscode-symbolIcon-functionForeground: #b180d7;--vscode-symbolIcon-interfaceForeground: #75beff;--vscode-symbolIcon-keyForeground: #cccccc;--vscode-symbolIcon-keywordForeground: #cccccc;--vscode-symbolIcon-methodForeground: #b180d7;--vscode-symbolIcon-moduleForeground: #cccccc;--vscode-symbolIcon-namespaceForeground: #cccccc;--vscode-symbolIcon-nullForeground: #cccccc;--vscode-symbolIcon-numberForeground: #cccccc;--vscode-symbolIcon-objectForeground: #cccccc;--vscode-symbolIcon-operatorForeground: #cccccc;--vscode-symbolIcon-packageForeground: #cccccc;--vscode-symbolIcon-propertyForeground: #cccccc;--vscode-symbolIcon-referenceForeground: #cccccc;--vscode-symbolIcon-snippetForeground: #cccccc;--vscode-symbolIcon-stringForeground: #cccccc;--vscode-symbolIcon-structForeground: #cccccc;--vscode-symbolIcon-textForeground: #cccccc;--vscode-symbolIcon-typeParameterForeground: #cccccc;--vscode-symbolIcon-unitForeground: #cccccc;--vscode-symbolIcon-variableForeground: #75beff;--vscode-editorHoverWidget-highlightForeground: #2aaaff;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(38, 79, 120, .3);--vscode-editorGutter-foldingControlForeground: #c5c5c5;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .72);--vscode-editor-wordHighlightStrongBackground: rgba(0, 73, 114, .72);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(55, 148, 255, .1);--vscode-peekViewTitleLabel-foreground: #ffffff;--vscode-peekViewTitleDescription-foreground: rgba(204, 204, 204, .7);--vscode-peekView-border: #3794ff;--vscode-peekViewResult-background: #252526;--vscode-peekViewResult-lineForeground: #bbbbbb;--vscode-peekViewResult-fileForeground: #ffffff;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #ffffff;--vscode-peekViewEditor-background: #001f33;--vscode-peekViewEditorGutter-background: #001f33;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(255, 143, 0, .6);--vscode-editorMarkerNavigationError-background: #f14c4c;--vscode-editorMarkerNavigationError-headerBackground: rgba(241, 76, 76, .1);--vscode-editorMarkerNavigationWarning-background: #cca700;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(204, 167, 0, .1);--vscode-editorMarkerNavigationInfo-background: #3794ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(55, 148, 255, .1);--vscode-editorMarkerNavigation-background: #1e1e1e;--vscode-editorSuggestWidget-background: #252526;--vscode-editorSuggestWidget-border: #454545;--vscode-editorSuggestWidget-foreground: #d4d4d4;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #04395e;--vscode-editorSuggestWidget-highlightForeground: #2aaaff;--vscode-editorSuggestWidget-focusHighlightForeground: #2aaaff;--vscode-editorSuggestWidgetStatus-foreground: rgba(212, 212, 212, .5);--vscode-tab-activeBackground: #1e1e1e;--vscode-tab-unfocusedActiveBackground: #1e1e1e;--vscode-tab-inactiveBackground: #2d2d2d;--vscode-tab-unfocusedInactiveBackground: #2d2d2d;--vscode-tab-activeForeground: #ffffff;--vscode-tab-inactiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedActiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedInactiveForeground: rgba(255, 255, 255, .25);--vscode-tab-border: #252526;--vscode-tab-lastPinnedBorder: rgba(204, 204, 204, .2);--vscode-tab-activeModifiedBorder: #3399cc;--vscode-tab-inactiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 153, 204, .25);--vscode-editorPane-background: #1e1e1e;--vscode-editorGroupHeader-tabsBackground: #252526;--vscode-editorGroupHeader-noTabsBackground: #1e1e1e;--vscode-editorGroup-border: #444444;--vscode-editorGroup-dropBackground: rgba(83, 89, 93, .5);--vscode-editorGroup-dropIntoPromptForeground: #cccccc;--vscode-editorGroup-dropIntoPromptBackground: #252526;--vscode-sideBySideEditor-horizontalBorder: #444444;--vscode-sideBySideEditor-verticalBorder: #444444;--vscode-panel-background: #1e1e1e;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #e7e7e7;--vscode-panelTitle-inactiveForeground: rgba(231, 231, 231, .6);--vscode-panelTitle-activeBorder: #e7e7e7;--vscode-panel-dropBorder: #e7e7e7;--vscode-panelSection-dropBackground: rgba(83, 89, 93, .5);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #04395e;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #3794ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #7a6400;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #333333;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #252526;--vscode-sideBarTitle-foreground: #bbbbbb;--vscode-sideBar-dropBackground: rgba(83, 89, 93, .5);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(204, 204, 204, .2);--vscode-titleBar-activeForeground: #cccccc;--vscode-titleBar-inactiveForeground: rgba(204, 204, 204, .6);--vscode-titleBar-activeBackground: #3c3c3c;--vscode-titleBar-inactiveBackground: rgba(60, 60, 60, .6);--vscode-menubar-selectionForeground: #cccccc;--vscode-menubar-selectionBackground: rgba(90, 93, 94, .31);--vscode-notifications-foreground: #cccccc;--vscode-notifications-background: #252526;--vscode-notificationLink-foreground: #3794ff;--vscode-notificationCenterHeader-background: #303031;--vscode-notifications-border: #303031;--vscode-notificationsErrorIcon-foreground: #f14c4c;--vscode-notificationsWarningIcon-foreground: #cca700;--vscode-notificationsInfoIcon-foreground: #3794ff;--vscode-commandCenter-foreground: #cccccc;--vscode-commandCenter-activeForeground: #cccccc;--vscode-commandCenter-activeBackground: rgba(90, 93, 94, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(204, 204, 204, .5);--vscode-editorCommentsWidget-unresolvedBorder: #3794ff;--vscode-editorCommentsWidget-rangeBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(55, 148, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(55, 148, 255, .4);--vscode-editorGutter-commentRangeForeground: #37373d;--vscode-debugToolBar-background: #333333;--vscode-debugIcon-startForeground: #89d185;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 0, .2);--vscode-editor-focusedStackFrameHighlightBackground: rgba(122, 189, 122, .3);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .2);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #e7e7e7;--vscode-settings-modifiedItemIndicator: #0c7d9d;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #3c3c3c;--vscode-settings-dropdownForeground: #f0f0f0;--vscode-settings-dropdownBorder: #3c3c3c;--vscode-settings-dropdownListBorder: #454545;--vscode-settings-checkboxBackground: #3c3c3c;--vscode-settings-checkboxForeground: #f0f0f0;--vscode-settings-checkboxBorder: #3c3c3c;--vscode-settings-textInputBackground: #3c3c3c;--vscode-settings-textInputForeground: #cccccc;--vscode-settings-numberInputBackground: #3c3c3c;--vscode-settings-numberInputForeground: #cccccc;--vscode-settings-focusedRowBackground: rgba(42, 45, 46, .6);--vscode-settings-rowHoverBackground: rgba(42, 45, 46, .3);--vscode-settings-focusedRowBorder: rgba(255, 255, 255, .12);--vscode-terminal-foreground: #cccccc;--vscode-terminal-selectionBackground: #264f78;--vscode-terminal-inactiveSelectionBackground: #3a3d41;--vscode-terminalCommandDecoration-defaultBackground: rgba(255, 255, 255, .25);--vscode-terminalCommandDecoration-successBackground: #1b81a8;--vscode-terminalCommandDecoration-errorBackground: #f14c4c;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #515c6a;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(83, 89, 93, .5);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #f14c4c;--vscode-testing-peekHeaderBackground: rgba(241, 76, 76, .1);--vscode-testing-message\.error\.decorationForeground: #f14c4c;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(212, 212, 212, .5);--vscode-welcomePage-tileBackground: #252526;--vscode-welcomePage-tileHoverBackground: #2c2c2d;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .36);--vscode-welcomePage-progress\.background: #3c3c3c;--vscode-welcomePage-progress\.foreground: #3794ff;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #420b0d;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(255, 255, 255, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #1b81a8;--vscode-editorGutter-addedBackground: #487e02;--vscode-editorGutter-deletedBackground: #f14c4c;--vscode-minimapGutter-modifiedBackground: #1b81a8;--vscode-minimapGutter-addedBackground: #487e02;--vscode-minimapGutter-deletedBackground: #f14c4c;--vscode-editorOverviewRuler-modifiedForeground: rgba(27, 129, 168, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 126, 2, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(241, 76, 76, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #ffcc00;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #37373d;--vscode-notebook-focusedEditorBorder: #007fd4;--vscode-notebookStatusSuccessIcon-foreground: #89d185;--vscode-notebookStatusErrorIcon-foreground: #f48771;--vscode-notebookStatusRunningIcon-foreground: #cccccc;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: #37373d;--vscode-notebook-selectedCellBorder: #37373d;--vscode-notebook-focusedCellBorder: #007fd4;--vscode-notebook-inactiveFocusedCellBorder: #37373d;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(255, 255, 255, .15);--vscode-notebook-cellInsertionIndicator: #007fd4;--vscode-notebookScrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-notebook-symbolHighlightBackground: rgba(255, 255, 255, .04);--vscode-notebook-cellEditorBackground: #252526;--vscode-notebook-editorBackground: #1e1e1e;--vscode-keybindingTable-headerBackground: rgba(204, 204, 204, .04);--vscode-keybindingTable-rowsBackground: rgba(204, 204, 204, .04);--vscode-scm-providerBorder: #454545;--vscode-debugTokenExpression-name: #c586c0;--vscode-debugTokenExpression-value: rgba(204, 204, 204, .6);--vscode-debugTokenExpression-string: #ce9178;--vscode-debugTokenExpression-boolean: #4e94ce;--vscode-debugTokenExpression-number: #b5cea8;--vscode-debugTokenExpression-error: #f48771;--vscode-debugView-exceptionLabelForeground: #cccccc;--vscode-debugView-exceptionLabelBackground: #6c2022;--vscode-debugView-stateLabelForeground: #cccccc;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #3794ff;--vscode-debugConsole-warningForeground: #cca700;--vscode-debugConsole-errorForeground: #f48771;--vscode-debugConsole-sourceForeground: #cccccc;--vscode-debugConsoleInputIcon-foreground: #cccccc;--vscode-debugIcon-pauseForeground: #75beff;--vscode-debugIcon-stopForeground: #f48771;--vscode-debugIcon-disconnectForeground: #f48771;--vscode-debugIcon-restartForeground: #89d185;--vscode-debugIcon-stepOverForeground: #75beff;--vscode-debugIcon-stepIntoForeground: #75beff;--vscode-debugIcon-stepOutForeground: #75beff;--vscode-debugIcon-continueForeground: #75beff;--vscode-debugIcon-stepBackForeground: #75beff;--vscode-extensionButton-prominentBackground: #0e639c;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #1177bb;--vscode-extensionIcon-starForeground: #ff8e00;--vscode-extensionIcon-verifiedForeground: #3794ff;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #d758b3;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #0dbc79;--vscode-terminal-ansiYellow: #e5e510;--vscode-terminal-ansiBlue: #2472c8;--vscode-terminal-ansiMagenta: #bc3fbc;--vscode-terminal-ansiCyan: #11a8cd;--vscode-terminal-ansiWhite: #e5e5e5;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #f14c4c;--vscode-terminal-ansiBrightGreen: #23d18b;--vscode-terminal-ansiBrightYellow: #f5f543;--vscode-terminal-ansiBrightBlue: #3b8eea;--vscode-terminal-ansiBrightMagenta: #d670d6;--vscode-terminal-ansiBrightCyan: #29b8db;--vscode-terminal-ansiBrightWhite: #e5e5e5;--vscode-interactive-activeCodeBorder: #3794ff;--vscode-interactive-inactiveCodeBorder: #37373d;--vscode-gitDecoration-addedResourceForeground: #81b88b;--vscode-gitDecoration-modifiedResourceForeground: #e2c08d;--vscode-gitDecoration-deletedResourceForeground: #c74e39;--vscode-gitDecoration-renamedResourceForeground: #73c991;--vscode-gitDecoration-untrackedResourceForeground: #73c991;--vscode-gitDecoration-ignoredResourceForeground: #8c8c8c;--vscode-gitDecoration-stageModifiedResourceForeground: #e2c08d;--vscode-gitDecoration-stageDeletedResourceForeground: #c74e39;--vscode-gitDecoration-conflictingResourceForeground: #e4676b;--vscode-gitDecoration-submoduleResourceForeground: #8db9e2}.toolbar-button{position:relative;flex:none;border:none;outline:none;color:var(--vscode-sideBarTitle-foreground);background:transparent;padding:4px;cursor:pointer;display:inline-flex;align-items:center;border-radius:4px}.toolbar-button:disabled{color:var(--vscode-disabledForeground)!important;cursor:default}.toolbar-button:not(:disabled):hover{background-color:var(--vscode-toolbar-hoverBackground)}.toolbar-button:not(:disabled):active{background-color:var(--vscode-toolbar-activeBackground)}.toolbar-button.toggled{color:var(--vscode-notificationLink-foreground)}.toolbar-button-error-badge{position:absolute;top:2px;right:2px;width:7px;height:7px;border-radius:50%;background-color:var(--vscode-notificationsErrorIcon-foreground)}.toolbar-separator{flex:none;background-color:var(--vscode-menu-separatorBackground);width:1px;padding:0;margin:5px 4px;height:16px}.call-log{display:flex;flex-direction:column;flex:auto;line-height:20px;white-space:pre;overflow:auto}.call-log-message{flex:none;padding:3px 0 3px 36px;display:flex;align-items:center}.call-log-call{display:flex;flex:none;flex-direction:column;border-top:1px solid var(--vscode-panel-border)}.call-log-call-header{height:24px;display:flex;align-items:center;padding:0 2px;z-index:2}.call-log-call .codicon{padding:0 4px;flex:none}.call-log .codicon-check{color:#21a945;font-weight:700}.call-log-call.error{background-color:var(--vscode-inputValidation-errorBackground);border-top:1px solid var(--vscode-panel-border)}.call-log-call.error .call-log-call-header,.call-log-message.error,.call-log .codicon-error{color:var(--vscode-errorForeground)}.call-log-details{flex:0 1 auto;overflow-x:hidden;text-overflow:ellipsis}.call-log-url{color:var(--vscode-charts-blue)}.call-log-selector{color:var(--vscode-charts-orange);white-space:nowrap}.call-log-time{flex:none;margin-left:4px;color:var(--gray)}.call-log-call .codicon.preview{visibility:hidden;color:var(--vscode-sideBarTitle-foreground);cursor:pointer}.call-log-call .codicon.preview:hover{color:inherit}.call-log-call:hover .codicon.preview{visibility:visible}.recorder{display:flex;flex-direction:column;flex:auto}.recorder-chooser{border:none;background:none;outline:none;color:var(--vscode-sideBarTitle-foreground);min-width:100px}.recorder .codicon{font-size:16px}.recorder .codicon.circle-large-filled,.recorder .codicon.stop-circle{font-size:15px}.recorder .toolbar-button.toggled.stop-circle{color:#a1260d}:root.dark-mode .recorder .toolbar-button.toggled.stop-circle{color:#f48771}.recorder .toolbar-button:not([disabled]) .codicon-debug-continue,.recorder .toolbar-button:not([disabled]) .codicon-debug-step-over{color:#01bb01}.recorder .toolbar-button:not([disabled]):hover .codicon-debug-continue,.recorder .toolbar-button:not([disabled]):hover .codicon-debug-step-over{color:#41ca1e}.recorder .selector-input{flex:auto}.setting{display:flex;align-items:center}.setting-theme{display:grid;margin-left:22px}.setting label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;cursor:pointer}.setting input{margin-right:5px;flex-shrink:0}
scripts/node_modules/playwright-core/lib/vite/recorder/assets/index-Bq-mQf8S.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,193 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/codeMirrorModule-DeBYQozu.js","assets/codeMirrorModule-DYBRYzYX.css"])))=>i.map(i=>d[i]);
(function(){const l=document.createElement("link").relList;if(l&&l.supports&&l.supports("modulepreload"))return;for(const c of document.querySelectorAll('link[rel="modulepreload"]'))s(c);new MutationObserver(c=>{for(const o of c)if(o.type==="childList")for(const h of o.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&s(h)}).observe(document,{childList:!0,subtree:!0});function a(c){const o={};return c.integrity&&(o.integrity=c.integrity),c.referrerPolicy&&(o.referrerPolicy=c.referrerPolicy),c.crossOrigin==="use-credentials"?o.credentials="include":c.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(c){if(c.ep)return;c.ep=!0;const o=a(c);fetch(c.href,o)}})();function b1(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}var lf={exports:{}},Oa={};/**
 * @license React
 * react-jsx-runtime.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var Wm;function S1(){if(Wm)return Oa;Wm=1;var u=Symbol.for("react.transitional.element"),l=Symbol.for("react.fragment");function a(s,c,o){var h=null;if(o!==void 0&&(h=""+o),c.key!==void 0&&(h=""+c.key),"key"in c){o={};for(var m in c)m!=="key"&&(o[m]=c[m])}else o=c;return c=o.ref,{$$typeof:u,type:s,key:h,ref:c!==void 0?c:null,props:o}}return Oa.Fragment=l,Oa.jsx=a,Oa.jsxs=a,Oa}var Im;function T1(){return Im||(Im=1,lf.exports=S1()),lf.exports}var X=T1(),af={exports:{}},ue={};/**
 * @license React
 * react.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var Fm;function E1(){if(Fm)return ue;Fm=1;var u=Symbol.for("react.transitional.element"),l=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),c=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),h=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),g=Symbol.for("react.memo"),b=Symbol.for("react.lazy"),v=Symbol.for("react.activity"),O=Symbol.iterator;function E(_){return _===null||typeof _!="object"?null:(_=O&&_[O]||_["@@iterator"],typeof _=="function"?_:null)}var x={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},S=Object.assign,w={};function M(_,Y,J){this.props=_,this.context=Y,this.refs=w,this.updater=J||x}M.prototype.isReactComponent={},M.prototype.setState=function(_,Y){if(typeof _!="object"&&typeof _!="function"&&_!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,_,Y,"setState")},M.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function R(){}R.prototype=M.prototype;function K(_,Y,J){this.props=_,this.context=Y,this.refs=w,this.updater=J||x}var Q=K.prototype=new R;Q.constructor=K,S(Q,M.prototype),Q.isPureReactComponent=!0;var Z=Array.isArray;function W(){}var k={H:null,A:null,T:null,S:null},V=Object.prototype.hasOwnProperty;function U(_,Y,J){var F=J.ref;return{$$typeof:u,type:_,key:Y,ref:F!==void 0?F:null,props:J}}function ae(_,Y){return U(_.type,Y,_.props)}function te(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function $(_){var Y={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(J){return Y[J]})}var ee=/\/+/g;function we(_,Y){return typeof _=="object"&&_!==null&&_.key!=null?$(""+_.key):Y.toString(36)}function se(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(W,W):(_.status="pending",_.then(function(Y){_.status==="pending"&&(_.status="fulfilled",_.value=Y)},function(Y){_.status==="pending"&&(_.status="rejected",_.reason=Y)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function D(_,Y,J,F,re){var me=typeof _;(me==="undefined"||me==="boolean")&&(_=null);var Ae=!1;if(_===null)Ae=!0;else switch(me){case"bigint":case"string":case"number":Ae=!0;break;case"object":switch(_.$$typeof){case u:case l:Ae=!0;break;case b:return Ae=_._init,D(Ae(_._payload),Y,J,F,re)}}if(Ae)return re=re(_),Ae=F===""?"."+we(_,0):F,Z(re)?(J="",Ae!=null&&(J=Ae.replace(ee,"$&/")+"/"),D(re,Y,J,"",function(Di){return Di})):re!=null&&(te(re)&&(re=ae(re,J+(re.key==null||_&&_.key===re.key?"":(""+re.key).replace(ee,"$&/")+"/")+Ae)),Y.push(re)),1;Ae=0;var rt=F===""?".":F+":";if(Z(_))for(var Ye=0;Ye<_.length;Ye++)F=_[Ye],me=rt+we(F,Ye),Ae+=D(F,Y,J,me,re);else if(Ye=E(_),typeof Ye=="function")for(_=Ye.call(_),Ye=0;!(F=_.next()).done;)F=F.value,me=rt+we(F,Ye++),Ae+=D(F,Y,J,me,re);else if(me==="object"){if(typeof _.then=="function")return D(se(_),Y,J,F,re);throw Y=String(_),Error("Objects are not valid as a React child (found: "+(Y==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":Y)+"). If you meant to render a collection of children, use an array instead.")}return Ae}function G(_,Y,J){if(_==null)return _;var F=[],re=0;return D(_,F,"","",function(me){return Y.call(J,me,re++)}),F}function ne(_){if(_._status===-1){var Y=_._result;Y=Y(),Y.then(function(J){(_._status===0||_._status===-1)&&(_._status=1,_._result=J)},function(J){(_._status===0||_._status===-1)&&(_._status=2,_._result=J)}),_._status===-1&&(_._status=0,_._result=Y)}if(_._status===1)return _._result.default;throw _._result}var de=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var Y=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(Y))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},Ne={map:G,forEach:function(_,Y,J){G(_,function(){Y.apply(this,arguments)},J)},count:function(_){var Y=0;return G(_,function(){Y++}),Y},toArray:function(_){return G(_,function(Y){return Y})||[]},only:function(_){if(!te(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return ue.Activity=v,ue.Children=Ne,ue.Component=M,ue.Fragment=a,ue.Profiler=c,ue.PureComponent=K,ue.StrictMode=s,ue.Suspense=p,ue.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=k,ue.__COMPILER_RUNTIME={__proto__:null,c:function(_){return k.H.useMemoCache(_)}},ue.cache=function(_){return function(){return _.apply(null,arguments)}},ue.cacheSignal=function(){return null},ue.cloneElement=function(_,Y,J){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var F=S({},_.props),re=_.key;if(Y!=null)for(me in Y.key!==void 0&&(re=""+Y.key),Y)!V.call(Y,me)||me==="key"||me==="__self"||me==="__source"||me==="ref"&&Y.ref===void 0||(F[me]=Y[me]);var me=arguments.length-2;if(me===1)F.children=J;else if(1<me){for(var Ae=Array(me),rt=0;rt<me;rt++)Ae[rt]=arguments[rt+2];F.children=Ae}return U(_.type,re,F)},ue.createContext=function(_){return _={$$typeof:h,_currentValue:_,_currentValue2:_,_threadCount:0,Provider:null,Consumer:null},_.Provider=_,_.Consumer={$$typeof:o,_context:_},_},ue.createElement=function(_,Y,J){var F,re={},me=null;if(Y!=null)for(F in Y.key!==void 0&&(me=""+Y.key),Y)V.call(Y,F)&&F!=="key"&&F!=="__self"&&F!=="__source"&&(re[F]=Y[F]);var Ae=arguments.length-2;if(Ae===1)re.children=J;else if(1<Ae){for(var rt=Array(Ae),Ye=0;Ye<Ae;Ye++)rt[Ye]=arguments[Ye+2];re.children=rt}if(_&&_.defaultProps)for(F in Ae=_.defaultProps,Ae)re[F]===void 0&&(re[F]=Ae[F]);return U(_,me,re)},ue.createRef=function(){return{current:null}},ue.forwardRef=function(_){return{$$typeof:m,render:_}},ue.isValidElement=te,ue.lazy=function(_){return{$$typeof:b,_payload:{_status:-1,_result:_},_init:ne}},ue.memo=function(_,Y){return{$$typeof:g,type:_,compare:Y===void 0?null:Y}},ue.startTransition=function(_){var Y=k.T,J={};k.T=J;try{var F=_(),re=k.S;re!==null&&re(J,F),typeof F=="object"&&F!==null&&typeof F.then=="function"&&F.then(W,de)}catch(me){de(me)}finally{Y!==null&&J.types!==null&&(Y.types=J.types),k.T=Y}},ue.unstable_useCacheRefresh=function(){return k.H.useCacheRefresh()},ue.use=function(_){return k.H.use(_)},ue.useActionState=function(_,Y,J){return k.H.useActionState(_,Y,J)},ue.useCallback=function(_,Y){return k.H.useCallback(_,Y)},ue.useContext=function(_){return k.H.useContext(_)},ue.useDebugValue=function(){},ue.useDeferredValue=function(_,Y){return k.H.useDeferredValue(_,Y)},ue.useEffect=function(_,Y){return k.H.useEffect(_,Y)},ue.useEffectEvent=function(_){return k.H.useEffectEvent(_)},ue.useId=function(){return k.H.useId()},ue.useImperativeHandle=function(_,Y,J){return k.H.useImperativeHandle(_,Y,J)},ue.useInsertionEffect=function(_,Y){return k.H.useInsertionEffect(_,Y)},ue.useLayoutEffect=function(_,Y){return k.H.useLayoutEffect(_,Y)},ue.useMemo=function(_,Y){return k.H.useMemo(_,Y)},ue.useOptimistic=function(_,Y){return k.H.useOptimistic(_,Y)},ue.useReducer=function(_,Y,J){return k.H.useReducer(_,Y,J)},ue.useRef=function(_){return k.H.useRef(_)},ue.useState=function(_){return k.H.useState(_)},ue.useSyncExternalStore=function(_,Y,J){return k.H.useSyncExternalStore(_,Y,J)},ue.useTransition=function(){return k.H.useTransition()},ue.version="19.2.1",ue}var Pm;function xf(){return Pm||(Pm=1,af.exports=E1()),af.exports}var he=xf();const An=b1(he);function Mg(){const u=An.useRef(null),[l]=Sf(u);return[l,u]}function Sf(u){const[l,a]=An.useState(new DOMRect(0,0,10,10)),s=An.useCallback(()=>{const c=u==null?void 0:u.current;c&&a(c.getBoundingClientRect())},[u]);return An.useLayoutEffect(()=>{const c=u==null?void 0:u.current;if(!c)return;s();const o=new ResizeObserver(s);return o.observe(c),window.addEventListener("resize",s),()=>{o.disconnect(),window.removeEventListener("resize",s)}},[s,u]),[l,s]}function eg(u){const l=document.createElement("textarea");l.style.position="absolute",l.style.zIndex="-1000",l.value=u,document.body.appendChild(l),l.select(),document.execCommand("copy"),l.remove()}function pu(u,l){u&&(l=Tl.getObject(u,l));const[a,s]=An.useState(l),c=An.useCallback(o=>{u?Tl.setObject(u,o):s(o)},[u,s]);return An.useEffect(()=>{if(u){const o=()=>s(Tl.getObject(u,l));return Tl.onChangeEmitter.addEventListener(u,o),()=>Tl.onChangeEmitter.removeEventListener(u,o)}},[l,u]),[a,c]}class w1{constructor(){this.onChangeEmitter=new EventTarget}getString(l,a){return localStorage[l]||a}setString(l,a){var s;localStorage[l]=a,this.onChangeEmitter.dispatchEvent(new Event(l)),(s=window.saveSettings)==null||s.call(window)}getObject(l,a){if(!localStorage[l])return a;try{return JSON.parse(localStorage[l])}catch{return a}}setObject(l,a){var s;localStorage[l]=JSON.stringify(a),this.onChangeEmitter.dispatchEvent(new Event(l)),(s=window.saveSettings)==null||s.call(window)}}const Tl=new w1;function Ol(...u){return u.filter(Boolean).join(" ")}const tg="\\u0000-\\u0020\\u007f-\\u009f",A1=new RegExp("(?:[a-zA-Z][a-zA-Z0-9+.-]{2,}:\\/\\/|www\\.)[^\\s"+tg+'"]{2,}[^\\s'+tg+`"')}\\],:;.!?]`,"ug"),O1="system",Cg="theme",_1=[{label:"Dark mode",value:"dark-mode"},{label:"Light mode",value:"light-mode"},{label:"System",value:"system"}],zg=window.matchMedia("(prefers-color-scheme: dark)");function N1(){document.playwrightThemeInitialized||(document.playwrightThemeInitialized=!0,document.defaultView.addEventListener("focus",u=>{u.target.document.nodeType===Node.DOCUMENT_NODE&&document.body.classList.remove("inactive")},!1),document.defaultView.addEventListener("blur",u=>{document.body.classList.add("inactive")},!1),Tf(Ef()),zg.addEventListener("change",()=>{Tf(Ef())}))}const M1=new Set;function Tf(u){const l=C1(),a=u==="system"?zg.matches?"dark-mode":"light-mode":u;if(l!==a){l&&document.documentElement.classList.remove(l),document.documentElement.classList.add(a);for(const s of M1)s(a)}}function Ef(){return Tl.getString(Cg,O1)}function C1(){return document.documentElement.classList.contains("dark-mode")?"dark-mode":document.documentElement.classList.contains("light-mode")?"light-mode":null}function z1(){const[u,l]=An.useState(Ef());return An.useEffect(()=>{Tl.setString(Cg,u),Tf(u)},[u]),[u,l]}var sf={exports:{}},_a={},uf={exports:{}},cf={};/**
 * @license React
 * scheduler.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var ng;function x1(){return ng||(ng=1,(function(u){function l(D,G){var ne=D.length;D.push(G);e:for(;0<ne;){var de=ne-1>>>1,Ne=D[de];if(0<c(Ne,G))D[de]=G,D[ne]=Ne,ne=de;else break e}}function a(D){return D.length===0?null:D[0]}function s(D){if(D.length===0)return null;var G=D[0],ne=D.pop();if(ne!==G){D[0]=ne;e:for(var de=0,Ne=D.length,_=Ne>>>1;de<_;){var Y=2*(de+1)-1,J=D[Y],F=Y+1,re=D[F];if(0>c(J,ne))F<Ne&&0>c(re,J)?(D[de]=re,D[F]=ne,de=F):(D[de]=J,D[Y]=ne,de=Y);else if(F<Ne&&0>c(re,ne))D[de]=re,D[F]=ne,de=F;else break e}}return G}function c(D,G){var ne=D.sortIndex-G.sortIndex;return ne!==0?ne:D.id-G.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;u.unstable_now=function(){return o.now()}}else{var h=Date,m=h.now();u.unstable_now=function(){return h.now()-m}}var p=[],g=[],b=1,v=null,O=3,E=!1,x=!1,S=!1,w=!1,M=typeof setTimeout=="function"?setTimeout:null,R=typeof clearTimeout=="function"?clearTimeout:null,K=typeof setImmediate<"u"?setImmediate:null;function Q(D){for(var G=a(g);G!==null;){if(G.callback===null)s(g);else if(G.startTime<=D)s(g),G.sortIndex=G.expirationTime,l(p,G);else break;G=a(g)}}function Z(D){if(S=!1,Q(D),!x)if(a(p)!==null)x=!0,W||(W=!0,$());else{var G=a(g);G!==null&&se(Z,G.startTime-D)}}var W=!1,k=-1,V=5,U=-1;function ae(){return w?!0:!(u.unstable_now()-U<V)}function te(){if(w=!1,W){var D=u.unstable_now();U=D;var G=!0;try{e:{x=!1,S&&(S=!1,R(k),k=-1),E=!0;var ne=O;try{t:{for(Q(D),v=a(p);v!==null&&!(v.expirationTime>D&&ae());){var de=v.callback;if(typeof de=="function"){v.callback=null,O=v.priorityLevel;var Ne=de(v.expirationTime<=D);if(D=u.unstable_now(),typeof Ne=="function"){v.callback=Ne,Q(D),G=!0;break t}v===a(p)&&s(p),Q(D)}else s(p);v=a(p)}if(v!==null)G=!0;else{var _=a(g);_!==null&&se(Z,_.startTime-D),G=!1}}break e}finally{v=null,O=ne,E=!1}G=void 0}}finally{G?$():W=!1}}}var $;if(typeof K=="function")$=function(){K(te)};else if(typeof MessageChannel<"u"){var ee=new MessageChannel,we=ee.port2;ee.port1.onmessage=te,$=function(){we.postMessage(null)}}else $=function(){M(te,0)};function se(D,G){k=M(function(){D(u.unstable_now())},G)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(D){D.callback=null},u.unstable_forceFrameRate=function(D){0>D||125<D?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):V=0<D?Math.floor(1e3/D):5},u.unstable_getCurrentPriorityLevel=function(){return O},u.unstable_next=function(D){switch(O){case 1:case 2:case 3:var G=3;break;default:G=O}var ne=O;O=G;try{return D()}finally{O=ne}},u.unstable_requestPaint=function(){w=!0},u.unstable_runWithPriority=function(D,G){switch(D){case 1:case 2:case 3:case 4:case 5:break;default:D=3}var ne=O;O=D;try{return G()}finally{O=ne}},u.unstable_scheduleCallback=function(D,G,ne){var de=u.unstable_now();switch(typeof ne=="object"&&ne!==null?(ne=ne.delay,ne=typeof ne=="number"&&0<ne?de+ne:de):ne=de,D){case 1:var Ne=-1;break;case 2:Ne=250;break;case 5:Ne=1073741823;break;case 4:Ne=1e4;break;default:Ne=5e3}return Ne=ne+Ne,D={id:b++,callback:G,priorityLevel:D,startTime:ne,expirationTime:Ne,sortIndex:-1},ne>de?(D.sortIndex=ne,l(g,D),a(p)===null&&D===a(g)&&(S?(R(k),k=-1):S=!0,se(Z,ne-de))):(D.sortIndex=Ne,l(p,D),x||E||(x=!0,W||(W=!0,$()))),D},u.unstable_shouldYield=ae,u.unstable_wrapCallback=function(D){var G=O;return function(){var ne=O;O=G;try{return D.apply(this,arguments)}finally{O=ne}}}})(cf)),cf}var lg;function D1(){return lg||(lg=1,uf.exports=x1()),uf.exports}var rf={exports:{}},st={};/**
 * @license React
 * react-dom.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var ig;function L1(){if(ig)return st;ig=1;var u=xf();function l(p){var g="https://react.dev/errors/"+p;if(1<arguments.length){g+="?args[]="+encodeURIComponent(arguments[1]);for(var b=2;b<arguments.length;b++)g+="&args[]="+encodeURIComponent(arguments[b])}return"Minified React error #"+p+"; visit "+g+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function a(){}var s={d:{f:a,r:function(){throw Error(l(522))},D:a,C:a,L:a,m:a,X:a,S:a,M:a},p:0,findDOMNode:null},c=Symbol.for("react.portal");function o(p,g,b){var v=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:c,key:v==null?null:""+v,children:p,containerInfo:g,implementation:b}}var h=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function m(p,g){if(p==="font")return"";if(typeof g=="string")return g==="use-credentials"?g:""}return st.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=s,st.createPortal=function(p,g){var b=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!g||g.nodeType!==1&&g.nodeType!==9&&g.nodeType!==11)throw Error(l(299));return o(p,g,null,b)},st.flushSync=function(p){var g=h.T,b=s.p;try{if(h.T=null,s.p=2,p)return p()}finally{h.T=g,s.p=b,s.d.f()}},st.preconnect=function(p,g){typeof p=="string"&&(g?(g=g.crossOrigin,g=typeof g=="string"?g==="use-credentials"?g:"":void 0):g=null,s.d.C(p,g))},st.prefetchDNS=function(p){typeof p=="string"&&s.d.D(p)},st.preinit=function(p,g){if(typeof p=="string"&&g&&typeof g.as=="string"){var b=g.as,v=m(b,g.crossOrigin),O=typeof g.integrity=="string"?g.integrity:void 0,E=typeof g.fetchPriority=="string"?g.fetchPriority:void 0;b==="style"?s.d.S(p,typeof g.precedence=="string"?g.precedence:void 0,{crossOrigin:v,integrity:O,fetchPriority:E}):b==="script"&&s.d.X(p,{crossOrigin:v,integrity:O,fetchPriority:E,nonce:typeof g.nonce=="string"?g.nonce:void 0})}},st.preinitModule=function(p,g){if(typeof p=="string")if(typeof g=="object"&&g!==null){if(g.as==null||g.as==="script"){var b=m(g.as,g.crossOrigin);s.d.M(p,{crossOrigin:b,integrity:typeof g.integrity=="string"?g.integrity:void 0,nonce:typeof g.nonce=="string"?g.nonce:void 0})}}else g==null&&s.d.M(p)},st.preload=function(p,g){if(typeof p=="string"&&typeof g=="object"&&g!==null&&typeof g.as=="string"){var b=g.as,v=m(b,g.crossOrigin);s.d.L(p,b,{crossOrigin:v,integrity:typeof g.integrity=="string"?g.integrity:void 0,nonce:typeof g.nonce=="string"?g.nonce:void 0,type:typeof g.type=="string"?g.type:void 0,fetchPriority:typeof g.fetchPriority=="string"?g.fetchPriority:void 0,referrerPolicy:typeof g.referrerPolicy=="string"?g.referrerPolicy:void 0,imageSrcSet:typeof g.imageSrcSet=="string"?g.imageSrcSet:void 0,imageSizes:typeof g.imageSizes=="string"?g.imageSizes:void 0,media:typeof g.media=="string"?g.media:void 0})}},st.preloadModule=function(p,g){if(typeof p=="string")if(g){var b=m(g.as,g.crossOrigin);s.d.m(p,{as:typeof g.as=="string"&&g.as!=="script"?g.as:void 0,crossOrigin:b,integrity:typeof g.integrity=="string"?g.integrity:void 0})}else s.d.m(p)},st.requestFormReset=function(p){s.d.r(p)},st.unstable_batchedUpdates=function(p,g){return p(g)},st.useFormState=function(p,g,b){return h.H.useFormState(p,g,b)},st.useFormStatus=function(){return h.H.useHostTransitionStatus()},st.version="19.2.1",st}var ag;function U1(){if(ag)return rf.exports;ag=1;function u(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(l){console.error(l)}}return u(),rf.exports=L1(),rf.exports}/**
 * @license React
 * react-dom-client.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var sg;function R1(){if(sg)return _a;sg=1;var u=D1(),l=xf(),a=U1();function s(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function c(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,(t.flags&4098)!==0&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function h(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function m(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function p(e){if(o(e)!==e)throw Error(s(188))}function g(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(s(188));return t!==e?null:e}for(var n=e,i=t;;){var r=n.return;if(r===null)break;var f=r.alternate;if(f===null){if(i=r.return,i!==null){n=i;continue}break}if(r.child===f.child){for(f=r.child;f;){if(f===n)return p(r),e;if(f===i)return p(r),t;f=f.sibling}throw Error(s(188))}if(n.return!==i.return)n=r,i=f;else{for(var d=!1,y=r.child;y;){if(y===n){d=!0,n=r,i=f;break}if(y===i){d=!0,i=r,n=f;break}y=y.sibling}if(!d){for(y=f.child;y;){if(y===n){d=!0,n=f,i=r;break}if(y===i){d=!0,i=f,n=r;break}y=y.sibling}if(!d)throw Error(s(189))}}if(n.alternate!==i)throw Error(s(190))}if(n.tag!==3)throw Error(s(188));return n.stateNode.current===n?e:t}function b(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=b(e),t!==null)return t;e=e.sibling}return null}var v=Object.assign,O=Symbol.for("react.element"),E=Symbol.for("react.transitional.element"),x=Symbol.for("react.portal"),S=Symbol.for("react.fragment"),w=Symbol.for("react.strict_mode"),M=Symbol.for("react.profiler"),R=Symbol.for("react.consumer"),K=Symbol.for("react.context"),Q=Symbol.for("react.forward_ref"),Z=Symbol.for("react.suspense"),W=Symbol.for("react.suspense_list"),k=Symbol.for("react.memo"),V=Symbol.for("react.lazy"),U=Symbol.for("react.activity"),ae=Symbol.for("react.memo_cache_sentinel"),te=Symbol.iterator;function $(e){return e===null||typeof e!="object"?null:(e=te&&e[te]||e["@@iterator"],typeof e=="function"?e:null)}var ee=Symbol.for("react.client.reference");function we(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===ee?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case S:return"Fragment";case M:return"Profiler";case w:return"StrictMode";case Z:return"Suspense";case W:return"SuspenseList";case U:return"Activity"}if(typeof e=="object")switch(e.$$typeof){case x:return"Portal";case K:return e.displayName||"Context";case R:return(e._context.displayName||"Context")+".Consumer";case Q:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case k:return t=e.displayName||null,t!==null?t:we(e.type)||"Memo";case V:t=e._payload,e=e._init;try{return we(e(t))}catch{}}return null}var se=Array.isArray,D=l.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,G=a.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ne={pending:!1,data:null,method:null,action:null},de=[],Ne=-1;function _(e){return{current:e}}function Y(e){0>Ne||(e.current=de[Ne],de[Ne]=null,Ne--)}function J(e,t){Ne++,de[Ne]=e.current,e.current=t}var F=_(null),re=_(null),me=_(null),Ae=_(null);function rt(e,t){switch(J(me,t),J(re,e),J(F,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?bm(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=bm(t),e=Sm(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}Y(F),J(F,e)}function Ye(){Y(F),Y(re),Y(me)}function Di(e){e.memoizedState!==null&&J(Ae,e);var t=F.current,n=Sm(t,e.type);t!==n&&(J(re,e),J(F,n))}function ka(e){re.current===e&&(Y(F),Y(re)),Ae.current===e&&(Y(Ae),Ta._currentValue=ne)}var qu,Zf;function nl(e){if(qu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);qu=t&&t[1]||"",Zf=-1<n.stack.indexOf(`
    at`)?" (<anonymous>)":-1<n.stack.indexOf("@")?"@unknown:0:0":""}return`
`+qu+e+Zf}var Hu=!1;function Yu(e,t){if(!e||Hu)return"";Hu=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var i={DetermineComponentFrameRoot:function(){try{if(t){var H=function(){throw Error()};if(Object.defineProperty(H.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(H,[])}catch(j){var L=j}Reflect.construct(e,[],H)}else{try{H.call()}catch(j){L=j}e.call(H.prototype)}}else{try{throw Error()}catch(j){L=j}(H=e())&&typeof H.catch=="function"&&H.catch(function(){})}}catch(j){if(j&&L&&typeof j.stack=="string")return[j.stack,L.stack]}return[null,null]}};i.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var r=Object.getOwnPropertyDescriptor(i.DetermineComponentFrameRoot,"name");r&&r.configurable&&Object.defineProperty(i.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var f=i.DetermineComponentFrameRoot(),d=f[0],y=f[1];if(d&&y){var T=d.split(`
`),z=y.split(`
`);for(r=i=0;i<T.length&&!T[i].includes("DetermineComponentFrameRoot");)i++;for(;r<z.length&&!z[r].includes("DetermineComponentFrameRoot");)r++;if(i===T.length||r===z.length)for(i=T.length-1,r=z.length-1;1<=i&&0<=r&&T[i]!==z[r];)r--;for(;1<=i&&0<=r;i--,r--)if(T[i]!==z[r]){if(i!==1||r!==1)do if(i--,r--,0>r||T[i]!==z[r]){var B=`
`+T[i].replace(" at new "," at ");return e.displayName&&B.includes("<anonymous>")&&(B=B.replace("<anonymous>",e.displayName)),B}while(1<=i&&0<=r);break}}}finally{Hu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?nl(n):""}function Wp(e,t){switch(e.tag){case 26:case 27:case 5:return nl(e.type);case 16:return nl("Lazy");case 13:return e.child!==t&&t!==null?nl("Suspense Fallback"):nl("Suspense");case 19:return nl("SuspenseList");case 0:case 15:return Yu(e.type,!1);case 11:return Yu(e.type.render,!1);case 1:return Yu(e.type,!0);case 31:return nl("Activity");default:return""}}function Jf(e){try{var t="",n=null;do t+=Wp(e,n),n=e,e=e.return;while(e);return t}catch(i){return`
Error generating stack: `+i.message+`
`+i.stack}}var $u=Object.prototype.hasOwnProperty,Ku=u.unstable_scheduleCallback,Gu=u.unstable_cancelCallback,Ip=u.unstable_shouldYield,Fp=u.unstable_requestPaint,Et=u.unstable_now,Pp=u.unstable_getCurrentPriorityLevel,Wf=u.unstable_ImmediatePriority,If=u.unstable_UserBlockingPriority,qa=u.unstable_NormalPriority,ey=u.unstable_LowPriority,Ff=u.unstable_IdlePriority,ty=u.log,ny=u.unstable_setDisableYieldValue,Li=null,wt=null;function _n(e){if(typeof ty=="function"&&ny(e),wt&&typeof wt.setStrictMode=="function")try{wt.setStrictMode(Li,e)}catch{}}var At=Math.clz32?Math.clz32:ay,ly=Math.log,iy=Math.LN2;function ay(e){return e>>>=0,e===0?32:31-(ly(e)/iy|0)|0}var Ha=256,Ya=262144,$a=4194304;function ll(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ka(e,t,n){var i=e.pendingLanes;if(i===0)return 0;var r=0,f=e.suspendedLanes,d=e.pingedLanes;e=e.warmLanes;var y=i&134217727;return y!==0?(i=y&~f,i!==0?r=ll(i):(d&=y,d!==0?r=ll(d):n||(n=y&~e,n!==0&&(r=ll(n))))):(y=i&~f,y!==0?r=ll(y):d!==0?r=ll(d):n||(n=i&~e,n!==0&&(r=ll(n)))),r===0?0:t!==0&&t!==r&&(t&f)===0&&(f=r&-r,n=t&-t,f>=n||f===32&&(n&4194048)!==0)?t:r}function Ui(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function sy(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Pf(){var e=$a;return $a<<=1,($a&62914560)===0&&($a=4194304),e}function Vu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Ri(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function uy(e,t,n,i,r,f){var d=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var y=e.entanglements,T=e.expirationTimes,z=e.hiddenUpdates;for(n=d&~n;0<n;){var B=31-At(n),H=1<<B;y[B]=0,T[B]=-1;var L=z[B];if(L!==null)for(z[B]=null,B=0;B<L.length;B++){var j=L[B];j!==null&&(j.lane&=-536870913)}n&=~H}i!==0&&eo(e,i,0),f!==0&&r===0&&e.tag!==0&&(e.suspendedLanes|=f&~(d&~t))}function eo(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var i=31-At(t);e.entangledLanes|=t,e.entanglements[i]=e.entanglements[i]|1073741824|n&261930}function to(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var i=31-At(n),r=1<<i;r&t|e[i]&t&&(e[i]|=t),n&=~r}}function no(e,t){var n=t&-t;return n=(n&42)!==0?1:Qu(n),(n&(e.suspendedLanes|t))!==0?0:n}function Qu(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function Xu(e){return e&=-e,2<e?8<e?(e&134217727)!==0?32:268435456:8:2}function lo(){var e=G.p;return e!==0?e:(e=window.event,e===void 0?32:Km(e.type))}function io(e,t){var n=G.p;try{return G.p=e,t()}finally{G.p=n}}var Nn=Math.random().toString(36).slice(2),tt="__reactFiber$"+Nn,ht="__reactProps$"+Nn,Cl="__reactContainer$"+Nn,Zu="__reactEvents$"+Nn,cy="__reactListeners$"+Nn,ry="__reactHandles$"+Nn,ao="__reactResources$"+Nn,ji="__reactMarker$"+Nn;function Ju(e){delete e[tt],delete e[ht],delete e[Zu],delete e[cy],delete e[ry]}function zl(e){var t=e[tt];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Cl]||n[tt]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Nm(e);e!==null;){if(n=e[tt])return n;e=Nm(e)}return t}e=n,n=e.parentNode}return null}function xl(e){if(e=e[tt]||e[Cl]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function Bi(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(s(33))}function Dl(e){var t=e[ao];return t||(t=e[ao]={hoistableStyles:new Map,hoistableScripts:new Map}),t}function Pe(e){e[ji]=!0}var so=new Set,uo={};function il(e,t){Ll(e,t),Ll(e+"Capture",t)}function Ll(e,t){for(uo[e]=t,e=0;e<t.length;e++)so.add(t[e])}var fy=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),co={},ro={};function oy(e){return $u.call(ro,e)?!0:$u.call(co,e)?!1:fy.test(e)?ro[e]=!0:(co[e]=!0,!1)}function Ga(e,t,n){if(oy(t))if(n===null)e.removeAttribute(t);else{switch(typeof n){case"undefined":case"function":case"symbol":e.removeAttribute(t);return;case"boolean":var i=t.toLowerCase().slice(0,5);if(i!=="data-"&&i!=="aria-"){e.removeAttribute(t);return}}e.setAttribute(t,""+n)}}function Va(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(t);return}e.setAttribute(t,""+n)}}function ln(e,t,n,i){if(i===null)e.removeAttribute(n);else{switch(typeof i){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(n);return}e.setAttributeNS(t,n,""+i)}}function Ut(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function fo(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function hy(e,t,n){var i=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&typeof i<"u"&&typeof i.get=="function"&&typeof i.set=="function"){var r=i.get,f=i.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return r.call(this)},set:function(d){n=""+d,f.call(this,d)}}),Object.defineProperty(e,t,{enumerable:i.enumerable}),{getValue:function(){return n},setValue:function(d){n=""+d},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Wu(e){if(!e._valueTracker){var t=fo(e)?"checked":"value";e._valueTracker=hy(e,t,""+e[t])}}function oo(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),i="";return e&&(i=fo(e)?e.checked?"true":"false":e.value),e=i,e!==n?(t.setValue(e),!0):!1}function Qa(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var dy=/[\n"\\]/g;function Rt(e){return e.replace(dy,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Iu(e,t,n,i,r,f,d,y){e.name="",d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.type=d:e.removeAttribute("type"),t!=null?d==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Ut(t)):e.value!==""+Ut(t)&&(e.value=""+Ut(t)):d!=="submit"&&d!=="reset"||e.removeAttribute("value"),t!=null?Fu(e,d,Ut(t)):n!=null?Fu(e,d,Ut(n)):i!=null&&e.removeAttribute("value"),r==null&&f!=null&&(e.defaultChecked=!!f),r!=null&&(e.checked=r&&typeof r!="function"&&typeof r!="symbol"),y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"?e.name=""+Ut(y):e.removeAttribute("name")}function ho(e,t,n,i,r,f,d,y){if(f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(e.type=f),t!=null||n!=null){if(!(f!=="submit"&&f!=="reset"||t!=null)){Wu(e);return}n=n!=null?""+Ut(n):"",t=t!=null?""+Ut(t):n,y||t===e.value||(e.value=t),e.defaultValue=t}i=i??r,i=typeof i!="function"&&typeof i!="symbol"&&!!i,e.checked=y?e.checked:!!i,e.defaultChecked=!!i,d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"&&(e.name=d),Wu(e)}function Fu(e,t,n){t==="number"&&Qa(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function Ul(e,t,n,i){if(e=e.options,t){t={};for(var r=0;r<n.length;r++)t["$"+n[r]]=!0;for(n=0;n<e.length;n++)r=t.hasOwnProperty("$"+e[n].value),e[n].selected!==r&&(e[n].selected=r),r&&i&&(e[n].defaultSelected=!0)}else{for(n=""+Ut(n),t=null,r=0;r<e.length;r++){if(e[r].value===n){e[r].selected=!0,i&&(e[r].defaultSelected=!0);return}t!==null||e[r].disabled||(t=e[r])}t!==null&&(t.selected=!0)}}function mo(e,t,n){if(t!=null&&(t=""+Ut(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n!=null?""+Ut(n):""}function go(e,t,n,i){if(t==null){if(i!=null){if(n!=null)throw Error(s(92));if(se(i)){if(1<i.length)throw Error(s(93));i=i[0]}n=i}n==null&&(n=""),t=n}n=Ut(t),e.defaultValue=n,i=e.textContent,i===n&&i!==""&&i!==null&&(e.value=i),Wu(e)}function Rl(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var my=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function po(e,t,n){var i=t.indexOf("--")===0;n==null||typeof n=="boolean"||n===""?i?e.setProperty(t,""):t==="float"?e.cssFloat="":e[t]="":i?e.setProperty(t,n):typeof n!="number"||n===0||my.has(t)?t==="float"?e.cssFloat=n:e[t]=(""+n).trim():e[t]=n+"px"}function yo(e,t,n){if(t!=null&&typeof t!="object")throw Error(s(62));if(e=e.style,n!=null){for(var i in n)!n.hasOwnProperty(i)||t!=null&&t.hasOwnProperty(i)||(i.indexOf("--")===0?e.setProperty(i,""):i==="float"?e.cssFloat="":e[i]="");for(var r in t)i=t[r],t.hasOwnProperty(r)&&n[r]!==i&&po(e,r,i)}else for(var f in t)t.hasOwnProperty(f)&&po(e,f,t[f])}function Pu(e){if(e.indexOf("-")===-1)return!1;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var gy=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),py=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Xa(e){return py.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function an(){}var ec=null;function tc(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var jl=null,Bl=null;function vo(e){var t=xl(e);if(t&&(e=t.stateNode)){var n=e[ht]||null;e:switch(e=t.stateNode,t.type){case"input":if(Iu(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll('input[name="'+Rt(""+t)+'"][type="radio"]'),t=0;t<n.length;t++){var i=n[t];if(i!==e&&i.form===e.form){var r=i[ht]||null;if(!r)throw Error(s(90));Iu(i,r.value,r.defaultValue,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name)}}for(t=0;t<n.length;t++)i=n[t],i.form===e.form&&oo(i)}break e;case"textarea":mo(e,n.value,n.defaultValue);break e;case"select":t=n.value,t!=null&&Ul(e,!!n.multiple,t,!1)}}}var nc=!1;function bo(e,t,n){if(nc)return e(t,n);nc=!0;try{var i=e(t);return i}finally{if(nc=!1,(jl!==null||Bl!==null)&&(Us(),jl&&(t=jl,e=Bl,Bl=jl=null,vo(t),e)))for(t=0;t<e.length;t++)vo(e[t])}}function ki(e,t){var n=e.stateNode;if(n===null)return null;var i=n[ht]||null;if(i===null)return null;n=i[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(i=!i.disabled)||(e=e.type,i=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!i;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(s(231,t,typeof n));return n}var sn=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),lc=!1;if(sn)try{var qi={};Object.defineProperty(qi,"passive",{get:function(){lc=!0}}),window.addEventListener("test",qi,qi),window.removeEventListener("test",qi,qi)}catch{lc=!1}var Mn=null,ic=null,Za=null;function So(){if(Za)return Za;var e,t=ic,n=t.length,i,r="value"in Mn?Mn.value:Mn.textContent,f=r.length;for(e=0;e<n&&t[e]===r[e];e++);var d=n-e;for(i=1;i<=d&&t[n-i]===r[f-i];i++);return Za=r.slice(e,1<i?1-i:void 0)}function Ja(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Wa(){return!0}function To(){return!1}function dt(e){function t(n,i,r,f,d){this._reactName=n,this._targetInst=r,this.type=i,this.nativeEvent=f,this.target=d,this.currentTarget=null;for(var y in e)e.hasOwnProperty(y)&&(n=e[y],this[y]=n?n(f):f[y]);return this.isDefaultPrevented=(f.defaultPrevented!=null?f.defaultPrevented:f.returnValue===!1)?Wa:To,this.isPropagationStopped=To,this}return v(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Wa)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Wa)},persist:function(){},isPersistent:Wa}),t}var al={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Ia=dt(al),Hi=v({},al,{view:0,detail:0}),yy=dt(Hi),ac,sc,Yi,Fa=v({},Hi,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:cc,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==Yi&&(Yi&&e.type==="mousemove"?(ac=e.screenX-Yi.screenX,sc=e.screenY-Yi.screenY):sc=ac=0,Yi=e),ac)},movementY:function(e){return"movementY"in e?e.movementY:sc}}),Eo=dt(Fa),vy=v({},Fa,{dataTransfer:0}),by=dt(vy),Sy=v({},Hi,{relatedTarget:0}),uc=dt(Sy),Ty=v({},al,{animationName:0,elapsedTime:0,pseudoElement:0}),Ey=dt(Ty),wy=v({},al,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Ay=dt(wy),Oy=v({},al,{data:0}),wo=dt(Oy),_y={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Ny={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},My={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Cy(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=My[e])?!!t[e]:!1}function cc(){return Cy}var zy=v({},Hi,{key:function(e){if(e.key){var t=_y[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Ja(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Ny[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:cc,charCode:function(e){return e.type==="keypress"?Ja(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Ja(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),xy=dt(zy),Dy=v({},Fa,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Ao=dt(Dy),Ly=v({},Hi,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:cc}),Uy=dt(Ly),Ry=v({},al,{propertyName:0,elapsedTime:0,pseudoElement:0}),jy=dt(Ry),By=v({},Fa,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),ky=dt(By),qy=v({},al,{newState:0,oldState:0}),Hy=dt(qy),Yy=[9,13,27,32],rc=sn&&"CompositionEvent"in window,$i=null;sn&&"documentMode"in document&&($i=document.documentMode);var $y=sn&&"TextEvent"in window&&!$i,Oo=sn&&(!rc||$i&&8<$i&&11>=$i),_o=" ",No=!1;function Mo(e,t){switch(e){case"keyup":return Yy.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Co(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var kl=!1;function Ky(e,t){switch(e){case"compositionend":return Co(t);case"keypress":return t.which!==32?null:(No=!0,_o);case"textInput":return e=t.data,e===_o&&No?null:e;default:return null}}function Gy(e,t){if(kl)return e==="compositionend"||!rc&&Mo(e,t)?(e=So(),Za=ic=Mn=null,kl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Oo&&t.locale!=="ko"?null:t.data;default:return null}}var Vy={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function zo(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!Vy[e.type]:t==="textarea"}function xo(e,t,n,i){jl?Bl?Bl.push(i):Bl=[i]:jl=i,t=Ys(t,"onChange"),0<t.length&&(n=new Ia("onChange","change",null,n,i),e.push({event:n,listeners:t}))}var Ki=null,Gi=null;function Qy(e){dm(e,0)}function Pa(e){var t=Bi(e);if(oo(t))return e}function Do(e,t){if(e==="change")return t}var Lo=!1;if(sn){var fc;if(sn){var oc="oninput"in document;if(!oc){var Uo=document.createElement("div");Uo.setAttribute("oninput","return;"),oc=typeof Uo.oninput=="function"}fc=oc}else fc=!1;Lo=fc&&(!document.documentMode||9<document.documentMode)}function Ro(){Ki&&(Ki.detachEvent("onpropertychange",jo),Gi=Ki=null)}function jo(e){if(e.propertyName==="value"&&Pa(Gi)){var t=[];xo(t,Gi,e,tc(e)),bo(Qy,t)}}function Xy(e,t,n){e==="focusin"?(Ro(),Ki=t,Gi=n,Ki.attachEvent("onpropertychange",jo)):e==="focusout"&&Ro()}function Zy(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Pa(Gi)}function Jy(e,t){if(e==="click")return Pa(t)}function Wy(e,t){if(e==="input"||e==="change")return Pa(t)}function Iy(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Ot=typeof Object.is=="function"?Object.is:Iy;function Vi(e,t){if(Ot(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;for(i=0;i<n.length;i++){var r=n[i];if(!$u.call(t,r)||!Ot(e[r],t[r]))return!1}return!0}function Bo(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ko(e,t){var n=Bo(e);e=0;for(var i;n;){if(n.nodeType===3){if(i=e+n.textContent.length,e<=t&&i>=t)return{node:n,offset:t-e};e=i}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Bo(n)}}function qo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?qo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Ho(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Qa(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Qa(e.document)}return t}function hc(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var Fy=sn&&"documentMode"in document&&11>=document.documentMode,ql=null,dc=null,Qi=null,mc=!1;function Yo(e,t,n){var i=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;mc||ql==null||ql!==Qa(i)||(i=ql,"selectionStart"in i&&hc(i)?i={start:i.selectionStart,end:i.selectionEnd}:(i=(i.ownerDocument&&i.ownerDocument.defaultView||window).getSelection(),i={anchorNode:i.anchorNode,anchorOffset:i.anchorOffset,focusNode:i.focusNode,focusOffset:i.focusOffset}),Qi&&Vi(Qi,i)||(Qi=i,i=Ys(dc,"onSelect"),0<i.length&&(t=new Ia("onSelect","select",null,t,n),e.push({event:t,listeners:i}),t.target=ql)))}function sl(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var Hl={animationend:sl("Animation","AnimationEnd"),animationiteration:sl("Animation","AnimationIteration"),animationstart:sl("Animation","AnimationStart"),transitionrun:sl("Transition","TransitionRun"),transitionstart:sl("Transition","TransitionStart"),transitioncancel:sl("Transition","TransitionCancel"),transitionend:sl("Transition","TransitionEnd")},gc={},$o={};sn&&($o=document.createElement("div").style,"AnimationEvent"in window||(delete Hl.animationend.animation,delete Hl.animationiteration.animation,delete Hl.animationstart.animation),"TransitionEvent"in window||delete Hl.transitionend.transition);function ul(e){if(gc[e])return gc[e];if(!Hl[e])return e;var t=Hl[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in $o)return gc[e]=t[n];return e}var Ko=ul("animationend"),Go=ul("animationiteration"),Vo=ul("animationstart"),Py=ul("transitionrun"),e0=ul("transitionstart"),t0=ul("transitioncancel"),Qo=ul("transitionend"),Xo=new Map,pc="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");pc.push("scrollEnd");function Qt(e,t){Xo.set(e,t),il(t,[e])}var es=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},jt=[],Yl=0,yc=0;function ts(){for(var e=Yl,t=yc=Yl=0;t<e;){var n=jt[t];jt[t++]=null;var i=jt[t];jt[t++]=null;var r=jt[t];jt[t++]=null;var f=jt[t];if(jt[t++]=null,i!==null&&r!==null){var d=i.pending;d===null?r.next=r:(r.next=d.next,d.next=r),i.pending=r}f!==0&&Zo(n,r,f)}}function ns(e,t,n,i){jt[Yl++]=e,jt[Yl++]=t,jt[Yl++]=n,jt[Yl++]=i,yc|=i,e.lanes|=i,e=e.alternate,e!==null&&(e.lanes|=i)}function vc(e,t,n,i){return ns(e,t,n,i),ls(e)}function cl(e,t){return ns(e,null,null,t),ls(e)}function Zo(e,t,n){e.lanes|=n;var i=e.alternate;i!==null&&(i.lanes|=n);for(var r=!1,f=e.return;f!==null;)f.childLanes|=n,i=f.alternate,i!==null&&(i.childLanes|=n),f.tag===22&&(e=f.stateNode,e===null||e._visibility&1||(r=!0)),e=f,f=f.return;return e.tag===3?(f=e.stateNode,r&&t!==null&&(r=31-At(n),e=f.hiddenUpdates,i=e[r],i===null?e[r]=[t]:i.push(t),t.lane=n|536870912),f):null}function ls(e){if(50<ma)throw ma=0,Nr=null,Error(s(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var $l={};function n0(e,t,n,i){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function _t(e,t,n,i){return new n0(e,t,n,i)}function bc(e){return e=e.prototype,!(!e||!e.isReactComponent)}function un(e,t){var n=e.alternate;return n===null?(n=_t(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function Jo(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function is(e,t,n,i,r,f){var d=0;if(i=e,typeof e=="function")bc(e)&&(d=1);else if(typeof e=="string")d=u1(e,n,F.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(e){case U:return e=_t(31,n,t,r),e.elementType=U,e.lanes=f,e;case S:return rl(n.children,r,f,t);case w:d=8,r|=24;break;case M:return e=_t(12,n,t,r|2),e.elementType=M,e.lanes=f,e;case Z:return e=_t(13,n,t,r),e.elementType=Z,e.lanes=f,e;case W:return e=_t(19,n,t,r),e.elementType=W,e.lanes=f,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case K:d=10;break e;case R:d=9;break e;case Q:d=11;break e;case k:d=14;break e;case V:d=16,i=null;break e}d=29,n=Error(s(130,e===null?"null":typeof e,"")),i=null}return t=_t(d,n,t,r),t.elementType=e,t.type=i,t.lanes=f,t}function rl(e,t,n,i){return e=_t(7,e,i,t),e.lanes=n,e}function Sc(e,t,n){return e=_t(6,e,null,t),e.lanes=n,e}function Wo(e){var t=_t(18,null,null,0);return t.stateNode=e,t}function Tc(e,t,n){return t=_t(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var Io=new WeakMap;function Bt(e,t){if(typeof e=="object"&&e!==null){var n=Io.get(e);return n!==void 0?n:(t={value:e,source:t,stack:Jf(t)},Io.set(e,t),t)}return{value:e,source:t,stack:Jf(t)}}var Kl=[],Gl=0,as=null,Xi=0,kt=[],qt=0,Cn=null,It=1,Ft="";function cn(e,t){Kl[Gl++]=Xi,Kl[Gl++]=as,as=e,Xi=t}function Fo(e,t,n){kt[qt++]=It,kt[qt++]=Ft,kt[qt++]=Cn,Cn=e;var i=It;e=Ft;var r=32-At(i)-1;i&=~(1<<r),n+=1;var f=32-At(t)+r;if(30<f){var d=r-r%5;f=(i&(1<<d)-1).toString(32),i>>=d,r-=d,It=1<<32-At(t)+r|n<<r|i,Ft=f+e}else It=1<<f|n<<r|i,Ft=e}function Ec(e){e.return!==null&&(cn(e,1),Fo(e,1,0))}function wc(e){for(;e===as;)as=Kl[--Gl],Kl[Gl]=null,Xi=Kl[--Gl],Kl[Gl]=null;for(;e===Cn;)Cn=kt[--qt],kt[qt]=null,Ft=kt[--qt],kt[qt]=null,It=kt[--qt],kt[qt]=null}function Po(e,t){kt[qt++]=It,kt[qt++]=Ft,kt[qt++]=Cn,It=t.id,Ft=t.overflow,Cn=e}var nt=null,Le=null,be=!1,zn=null,Ht=!1,Ac=Error(s(519));function xn(e){var t=Error(s(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Zi(Bt(t,e)),Ac}function eh(e){var t=e.stateNode,n=e.type,i=e.memoizedProps;switch(t[tt]=e,t[ht]=i,n){case"dialog":pe("cancel",t),pe("close",t);break;case"iframe":case"object":case"embed":pe("load",t);break;case"video":case"audio":for(n=0;n<pa.length;n++)pe(pa[n],t);break;case"source":pe("error",t);break;case"img":case"image":case"link":pe("error",t),pe("load",t);break;case"details":pe("toggle",t);break;case"input":pe("invalid",t),ho(t,i.value,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name,!0);break;case"select":pe("invalid",t);break;case"textarea":pe("invalid",t),go(t,i.value,i.defaultValue,i.children)}n=i.children,typeof n!="string"&&typeof n!="number"&&typeof n!="bigint"||t.textContent===""+n||i.suppressHydrationWarning===!0||ym(t.textContent,n)?(i.popover!=null&&(pe("beforetoggle",t),pe("toggle",t)),i.onScroll!=null&&pe("scroll",t),i.onScrollEnd!=null&&pe("scrollend",t),i.onClick!=null&&(t.onclick=an),t=!0):t=!1,t||xn(e,!0)}function th(e){for(nt=e.return;nt;)switch(nt.tag){case 5:case 31:case 13:Ht=!1;return;case 27:case 3:Ht=!0;return;default:nt=nt.return}}function Vl(e){if(e!==nt)return!1;if(!be)return th(e),be=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=!(n!=="form"&&n!=="button")||$r(e.type,e.memoizedProps)),n=!n),n&&Le&&xn(e),th(e),t===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(s(317));Le=_m(e)}else if(t===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(s(317));Le=_m(e)}else t===27?(t=Le,Vn(e.type)?(e=Xr,Xr=null,Le=e):Le=t):Le=nt?$t(e.stateNode.nextSibling):null;return!0}function fl(){Le=nt=null,be=!1}function Oc(){var e=zn;return e!==null&&(yt===null?yt=e:yt.push.apply(yt,e),zn=null),e}function Zi(e){zn===null?zn=[e]:zn.push(e)}var _c=_(null),ol=null,rn=null;function Dn(e,t,n){J(_c,t._currentValue),t._currentValue=n}function fn(e){e._currentValue=_c.current,Y(_c)}function Nc(e,t,n){for(;e!==null;){var i=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,i!==null&&(i.childLanes|=t)):i!==null&&(i.childLanes&t)!==t&&(i.childLanes|=t),e===n)break;e=e.return}}function Mc(e,t,n,i){var r=e.child;for(r!==null&&(r.return=e);r!==null;){var f=r.dependencies;if(f!==null){var d=r.child;f=f.firstContext;e:for(;f!==null;){var y=f;f=r;for(var T=0;T<t.length;T++)if(y.context===t[T]){f.lanes|=n,y=f.alternate,y!==null&&(y.lanes|=n),Nc(f.return,n,e),i||(d=null);break e}f=y.next}}else if(r.tag===18){if(d=r.return,d===null)throw Error(s(341));d.lanes|=n,f=d.alternate,f!==null&&(f.lanes|=n),Nc(d,n,e),d=null}else d=r.child;if(d!==null)d.return=r;else for(d=r;d!==null;){if(d===e){d=null;break}if(r=d.sibling,r!==null){r.return=d.return,d=r;break}d=d.return}r=d}}function Ql(e,t,n,i){e=null;for(var r=t,f=!1;r!==null;){if(!f){if((r.flags&524288)!==0)f=!0;else if((r.flags&262144)!==0)break}if(r.tag===10){var d=r.alternate;if(d===null)throw Error(s(387));if(d=d.memoizedProps,d!==null){var y=r.type;Ot(r.pendingProps.value,d.value)||(e!==null?e.push(y):e=[y])}}else if(r===Ae.current){if(d=r.alternate,d===null)throw Error(s(387));d.memoizedState.memoizedState!==r.memoizedState.memoizedState&&(e!==null?e.push(Ta):e=[Ta])}r=r.return}e!==null&&Mc(t,e,n,i),t.flags|=262144}function ss(e){for(e=e.firstContext;e!==null;){if(!Ot(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function hl(e){ol=e,rn=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function lt(e){return nh(ol,e)}function us(e,t){return ol===null&&hl(e),nh(e,t)}function nh(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},rn===null){if(e===null)throw Error(s(308));rn=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else rn=rn.next=t;return n}var l0=typeof AbortController<"u"?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(n,i){e.push(i)}};this.abort=function(){t.aborted=!0,e.forEach(function(n){return n()})}},i0=u.unstable_scheduleCallback,a0=u.unstable_NormalPriority,Qe={$$typeof:K,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Cc(){return{controller:new l0,data:new Map,refCount:0}}function Ji(e){e.refCount--,e.refCount===0&&i0(a0,function(){e.controller.abort()})}var Wi=null,zc=0,Xl=0,Zl=null;function s0(e,t){if(Wi===null){var n=Wi=[];zc=0,Xl=Lr(),Zl={status:"pending",value:void 0,then:function(i){n.push(i)}}}return zc++,t.then(lh,lh),t}function lh(){if(--zc===0&&Wi!==null){Zl!==null&&(Zl.status="fulfilled");var e=Wi;Wi=null,Xl=0,Zl=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function u0(e,t){var n=[],i={status:"pending",value:null,reason:null,then:function(r){n.push(r)}};return e.then(function(){i.status="fulfilled",i.value=t;for(var r=0;r<n.length;r++)(0,n[r])(t)},function(r){for(i.status="rejected",i.reason=r,r=0;r<n.length;r++)(0,n[r])(void 0)}),i}var ih=D.S;D.S=function(e,t){Yd=Et(),typeof t=="object"&&t!==null&&typeof t.then=="function"&&s0(e,t),ih!==null&&ih(e,t)};var dl=_(null);function xc(){var e=dl.current;return e!==null?e:xe.pooledCache}function cs(e,t){t===null?J(dl,dl.current):J(dl,t.pool)}function ah(){var e=xc();return e===null?null:{parent:Qe._currentValue,pool:e}}var Jl=Error(s(460)),Dc=Error(s(474)),rs=Error(s(542)),fs={then:function(){}};function sh(e){return e=e.status,e==="fulfilled"||e==="rejected"}function uh(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(an,an),t=n),t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,rh(e),e;default:if(typeof t.status=="string")t.then(an,an);else{if(e=xe,e!==null&&100<e.shellSuspendCounter)throw Error(s(482));e=t,e.status="pending",e.then(function(i){if(t.status==="pending"){var r=t;r.status="fulfilled",r.value=i}},function(i){if(t.status==="pending"){var r=t;r.status="rejected",r.reason=i}})}switch(t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,rh(e),e}throw gl=t,Jl}}function ml(e){try{var t=e._init;return t(e._payload)}catch(n){throw n!==null&&typeof n=="object"&&typeof n.then=="function"?(gl=n,Jl):n}}var gl=null;function ch(){if(gl===null)throw Error(s(459));var e=gl;return gl=null,e}function rh(e){if(e===Jl||e===rs)throw Error(s(483))}var Wl=null,Ii=0;function os(e){var t=Ii;return Ii+=1,Wl===null&&(Wl=[]),uh(Wl,e,t)}function Fi(e,t){t=t.props.ref,e.ref=t!==void 0?t:null}function hs(e,t){throw t.$$typeof===O?Error(s(525)):(e=Object.prototype.toString.call(t),Error(s(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)))}function fh(e){function t(N,A){if(e){var C=N.deletions;C===null?(N.deletions=[A],N.flags|=16):C.push(A)}}function n(N,A){if(!e)return null;for(;A!==null;)t(N,A),A=A.sibling;return null}function i(N){for(var A=new Map;N!==null;)N.key!==null?A.set(N.key,N):A.set(N.index,N),N=N.sibling;return A}function r(N,A){return N=un(N,A),N.index=0,N.sibling=null,N}function f(N,A,C){return N.index=C,e?(C=N.alternate,C!==null?(C=C.index,C<A?(N.flags|=67108866,A):C):(N.flags|=67108866,A)):(N.flags|=1048576,A)}function d(N){return e&&N.alternate===null&&(N.flags|=67108866),N}function y(N,A,C,q){return A===null||A.tag!==6?(A=Sc(C,N.mode,q),A.return=N,A):(A=r(A,C),A.return=N,A)}function T(N,A,C,q){var le=C.type;return le===S?B(N,A,C.props.children,q,C.key):A!==null&&(A.elementType===le||typeof le=="object"&&le!==null&&le.$$typeof===V&&ml(le)===A.type)?(A=r(A,C.props),Fi(A,C),A.return=N,A):(A=is(C.type,C.key,C.props,null,N.mode,q),Fi(A,C),A.return=N,A)}function z(N,A,C,q){return A===null||A.tag!==4||A.stateNode.containerInfo!==C.containerInfo||A.stateNode.implementation!==C.implementation?(A=Tc(C,N.mode,q),A.return=N,A):(A=r(A,C.children||[]),A.return=N,A)}function B(N,A,C,q,le){return A===null||A.tag!==7?(A=rl(C,N.mode,q,le),A.return=N,A):(A=r(A,C),A.return=N,A)}function H(N,A,C){if(typeof A=="string"&&A!==""||typeof A=="number"||typeof A=="bigint")return A=Sc(""+A,N.mode,C),A.return=N,A;if(typeof A=="object"&&A!==null){switch(A.$$typeof){case E:return C=is(A.type,A.key,A.props,null,N.mode,C),Fi(C,A),C.return=N,C;case x:return A=Tc(A,N.mode,C),A.return=N,A;case V:return A=ml(A),H(N,A,C)}if(se(A)||$(A))return A=rl(A,N.mode,C,null),A.return=N,A;if(typeof A.then=="function")return H(N,os(A),C);if(A.$$typeof===K)return H(N,us(N,A),C);hs(N,A)}return null}function L(N,A,C,q){var le=A!==null?A.key:null;if(typeof C=="string"&&C!==""||typeof C=="number"||typeof C=="bigint")return le!==null?null:y(N,A,""+C,q);if(typeof C=="object"&&C!==null){switch(C.$$typeof){case E:return C.key===le?T(N,A,C,q):null;case x:return C.key===le?z(N,A,C,q):null;case V:return C=ml(C),L(N,A,C,q)}if(se(C)||$(C))return le!==null?null:B(N,A,C,q,null);if(typeof C.then=="function")return L(N,A,os(C),q);if(C.$$typeof===K)return L(N,A,us(N,C),q);hs(N,C)}return null}function j(N,A,C,q,le){if(typeof q=="string"&&q!==""||typeof q=="number"||typeof q=="bigint")return N=N.get(C)||null,y(A,N,""+q,le);if(typeof q=="object"&&q!==null){switch(q.$$typeof){case E:return N=N.get(q.key===null?C:q.key)||null,T(A,N,q,le);case x:return N=N.get(q.key===null?C:q.key)||null,z(A,N,q,le);case V:return q=ml(q),j(N,A,C,q,le)}if(se(q)||$(q))return N=N.get(C)||null,B(A,N,q,le,null);if(typeof q.then=="function")return j(N,A,C,os(q),le);if(q.$$typeof===K)return j(N,A,C,us(A,q),le);hs(A,q)}return null}function I(N,A,C,q){for(var le=null,Se=null,P=A,oe=A=0,ve=null;P!==null&&oe<C.length;oe++){P.index>oe?(ve=P,P=null):ve=P.sibling;var Te=L(N,P,C[oe],q);if(Te===null){P===null&&(P=ve);break}e&&P&&Te.alternate===null&&t(N,P),A=f(Te,A,oe),Se===null?le=Te:Se.sibling=Te,Se=Te,P=ve}if(oe===C.length)return n(N,P),be&&cn(N,oe),le;if(P===null){for(;oe<C.length;oe++)P=H(N,C[oe],q),P!==null&&(A=f(P,A,oe),Se===null?le=P:Se.sibling=P,Se=P);return be&&cn(N,oe),le}for(P=i(P);oe<C.length;oe++)ve=j(P,N,oe,C[oe],q),ve!==null&&(e&&ve.alternate!==null&&P.delete(ve.key===null?oe:ve.key),A=f(ve,A,oe),Se===null?le=ve:Se.sibling=ve,Se=ve);return e&&P.forEach(function(Wn){return t(N,Wn)}),be&&cn(N,oe),le}function ie(N,A,C,q){if(C==null)throw Error(s(151));for(var le=null,Se=null,P=A,oe=A=0,ve=null,Te=C.next();P!==null&&!Te.done;oe++,Te=C.next()){P.index>oe?(ve=P,P=null):ve=P.sibling;var Wn=L(N,P,Te.value,q);if(Wn===null){P===null&&(P=ve);break}e&&P&&Wn.alternate===null&&t(N,P),A=f(Wn,A,oe),Se===null?le=Wn:Se.sibling=Wn,Se=Wn,P=ve}if(Te.done)return n(N,P),be&&cn(N,oe),le;if(P===null){for(;!Te.done;oe++,Te=C.next())Te=H(N,Te.value,q),Te!==null&&(A=f(Te,A,oe),Se===null?le=Te:Se.sibling=Te,Se=Te);return be&&cn(N,oe),le}for(P=i(P);!Te.done;oe++,Te=C.next())Te=j(P,N,oe,Te.value,q),Te!==null&&(e&&Te.alternate!==null&&P.delete(Te.key===null?oe:Te.key),A=f(Te,A,oe),Se===null?le=Te:Se.sibling=Te,Se=Te);return e&&P.forEach(function(v1){return t(N,v1)}),be&&cn(N,oe),le}function ze(N,A,C,q){if(typeof C=="object"&&C!==null&&C.type===S&&C.key===null&&(C=C.props.children),typeof C=="object"&&C!==null){switch(C.$$typeof){case E:e:{for(var le=C.key;A!==null;){if(A.key===le){if(le=C.type,le===S){if(A.tag===7){n(N,A.sibling),q=r(A,C.props.children),q.return=N,N=q;break e}}else if(A.elementType===le||typeof le=="object"&&le!==null&&le.$$typeof===V&&ml(le)===A.type){n(N,A.sibling),q=r(A,C.props),Fi(q,C),q.return=N,N=q;break e}n(N,A);break}else t(N,A);A=A.sibling}C.type===S?(q=rl(C.props.children,N.mode,q,C.key),q.return=N,N=q):(q=is(C.type,C.key,C.props,null,N.mode,q),Fi(q,C),q.return=N,N=q)}return d(N);case x:e:{for(le=C.key;A!==null;){if(A.key===le)if(A.tag===4&&A.stateNode.containerInfo===C.containerInfo&&A.stateNode.implementation===C.implementation){n(N,A.sibling),q=r(A,C.children||[]),q.return=N,N=q;break e}else{n(N,A);break}else t(N,A);A=A.sibling}q=Tc(C,N.mode,q),q.return=N,N=q}return d(N);case V:return C=ml(C),ze(N,A,C,q)}if(se(C))return I(N,A,C,q);if($(C)){if(le=$(C),typeof le!="function")throw Error(s(150));return C=le.call(C),ie(N,A,C,q)}if(typeof C.then=="function")return ze(N,A,os(C),q);if(C.$$typeof===K)return ze(N,A,us(N,C),q);hs(N,C)}return typeof C=="string"&&C!==""||typeof C=="number"||typeof C=="bigint"?(C=""+C,A!==null&&A.tag===6?(n(N,A.sibling),q=r(A,C),q.return=N,N=q):(n(N,A),q=Sc(C,N.mode,q),q.return=N,N=q),d(N)):n(N,A)}return function(N,A,C,q){try{Ii=0;var le=ze(N,A,C,q);return Wl=null,le}catch(P){if(P===Jl||P===rs)throw P;var Se=_t(29,P,null,N.mode);return Se.lanes=q,Se.return=N,Se}finally{}}}var pl=fh(!0),oh=fh(!1),Ln=!1;function Lc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Uc(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Un(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Rn(e,t,n){var i=e.updateQueue;if(i===null)return null;if(i=i.shared,(Ee&2)!==0){var r=i.pending;return r===null?t.next=t:(t.next=r.next,r.next=t),i.pending=t,t=ls(e),Zo(e,null,n),t}return ns(e,i,t,n),ls(e)}function Pi(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var i=t.lanes;i&=e.pendingLanes,n|=i,t.lanes=n,to(e,n)}}function Rc(e,t){var n=e.updateQueue,i=e.alternate;if(i!==null&&(i=i.updateQueue,n===i)){var r=null,f=null;if(n=n.firstBaseUpdate,n!==null){do{var d={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};f===null?r=f=d:f=f.next=d,n=n.next}while(n!==null);f===null?r=f=t:f=f.next=t}else r=f=t;n={baseState:i.baseState,firstBaseUpdate:r,lastBaseUpdate:f,shared:i.shared,callbacks:i.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var jc=!1;function ea(){if(jc){var e=Zl;if(e!==null)throw e}}function ta(e,t,n,i){jc=!1;var r=e.updateQueue;Ln=!1;var f=r.firstBaseUpdate,d=r.lastBaseUpdate,y=r.shared.pending;if(y!==null){r.shared.pending=null;var T=y,z=T.next;T.next=null,d===null?f=z:d.next=z,d=T;var B=e.alternate;B!==null&&(B=B.updateQueue,y=B.lastBaseUpdate,y!==d&&(y===null?B.firstBaseUpdate=z:y.next=z,B.lastBaseUpdate=T))}if(f!==null){var H=r.baseState;d=0,B=z=T=null,y=f;do{var L=y.lane&-536870913,j=L!==y.lane;if(j?(ye&L)===L:(i&L)===L){L!==0&&L===Xl&&(jc=!0),B!==null&&(B=B.next={lane:0,tag:y.tag,payload:y.payload,callback:null,next:null});e:{var I=e,ie=y;L=t;var ze=n;switch(ie.tag){case 1:if(I=ie.payload,typeof I=="function"){H=I.call(ze,H,L);break e}H=I;break e;case 3:I.flags=I.flags&-65537|128;case 0:if(I=ie.payload,L=typeof I=="function"?I.call(ze,H,L):I,L==null)break e;H=v({},H,L);break e;case 2:Ln=!0}}L=y.callback,L!==null&&(e.flags|=64,j&&(e.flags|=8192),j=r.callbacks,j===null?r.callbacks=[L]:j.push(L))}else j={lane:L,tag:y.tag,payload:y.payload,callback:y.callback,next:null},B===null?(z=B=j,T=H):B=B.next=j,d|=L;if(y=y.next,y===null){if(y=r.shared.pending,y===null)break;j=y,y=j.next,j.next=null,r.lastBaseUpdate=j,r.shared.pending=null}}while(!0);B===null&&(T=H),r.baseState=T,r.firstBaseUpdate=z,r.lastBaseUpdate=B,f===null&&(r.shared.lanes=0),Hn|=d,e.lanes=d,e.memoizedState=H}}function hh(e,t){if(typeof e!="function")throw Error(s(191,e));e.call(t)}function dh(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)hh(n[e],t)}var Il=_(null),ds=_(0);function mh(e,t){e=bn,J(ds,e),J(Il,t),bn=e|t.baseLanes}function Bc(){J(ds,bn),J(Il,Il.current)}function kc(){bn=ds.current,Y(Il),Y(ds)}var Nt=_(null),Yt=null;function jn(e){var t=e.alternate;J($e,$e.current&1),J(Nt,e),Yt===null&&(t===null||Il.current!==null||t.memoizedState!==null)&&(Yt=e)}function qc(e){J($e,$e.current),J(Nt,e),Yt===null&&(Yt=e)}function gh(e){e.tag===22?(J($e,$e.current),J(Nt,e),Yt===null&&(Yt=e)):Bn()}function Bn(){J($e,$e.current),J(Nt,Nt.current)}function Mt(e){Y(Nt),Yt===e&&(Yt=null),Y($e)}var $e=_(0);function ms(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||Vr(n)||Qr(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder==="forwards"||t.memoizedProps.revealOrder==="backwards"||t.memoizedProps.revealOrder==="unstable_legacy-backwards"||t.memoizedProps.revealOrder==="together")){if((t.flags&128)!==0)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var on=0,fe=null,Me=null,Xe=null,gs=!1,Fl=!1,yl=!1,ps=0,na=0,Pl=null,c0=0;function qe(){throw Error(s(321))}function Hc(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Ot(e[n],t[n]))return!1;return!0}function Yc(e,t,n,i,r,f){return on=f,fe=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,D.H=e===null||e.memoizedState===null?Fh:nr,yl=!1,f=n(i,r),yl=!1,Fl&&(f=yh(t,n,i,r)),ph(e),f}function ph(e){D.H=aa;var t=Me!==null&&Me.next!==null;if(on=0,Xe=Me=fe=null,gs=!1,na=0,Pl=null,t)throw Error(s(300));e===null||Ze||(e=e.dependencies,e!==null&&ss(e)&&(Ze=!0))}function yh(e,t,n,i){fe=e;var r=0;do{if(Fl&&(Pl=null),na=0,Fl=!1,25<=r)throw Error(s(301));if(r+=1,Xe=Me=null,e.updateQueue!=null){var f=e.updateQueue;f.lastEffect=null,f.events=null,f.stores=null,f.memoCache!=null&&(f.memoCache.index=0)}D.H=Ph,f=t(n,i)}while(Fl);return f}function r0(){var e=D.H,t=e.useState()[0];return t=typeof t.then=="function"?la(t):t,e=e.useState()[0],(Me!==null?Me.memoizedState:null)!==e&&(fe.flags|=1024),t}function $c(){var e=ps!==0;return ps=0,e}function Kc(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function Gc(e){if(gs){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}gs=!1}on=0,Xe=Me=fe=null,Fl=!1,na=ps=0,Pl=null}function ft(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Xe===null?fe.memoizedState=Xe=e:Xe=Xe.next=e,Xe}function Ke(){if(Me===null){var e=fe.alternate;e=e!==null?e.memoizedState:null}else e=Me.next;var t=Xe===null?fe.memoizedState:Xe.next;if(t!==null)Xe=t,Me=e;else{if(e===null)throw fe.alternate===null?Error(s(467)):Error(s(310));Me=e,e={memoizedState:Me.memoizedState,baseState:Me.baseState,baseQueue:Me.baseQueue,queue:Me.queue,next:null},Xe===null?fe.memoizedState=Xe=e:Xe=Xe.next=e}return Xe}function ys(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function la(e){var t=na;return na+=1,Pl===null&&(Pl=[]),e=uh(Pl,e,t),t=fe,(Xe===null?t.memoizedState:Xe.next)===null&&(t=t.alternate,D.H=t===null||t.memoizedState===null?Fh:nr),e}function vs(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return la(e);if(e.$$typeof===K)return lt(e)}throw Error(s(438,String(e)))}function Vc(e){var t=null,n=fe.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var i=fe.alternate;i!==null&&(i=i.updateQueue,i!==null&&(i=i.memoCache,i!=null&&(t={data:i.data.map(function(r){return r.slice()}),index:0})))}if(t==null&&(t={data:[],index:0}),n===null&&(n=ys(),fe.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),i=0;i<e;i++)n[i]=ae;return t.index++,n}function hn(e,t){return typeof t=="function"?t(e):t}function bs(e){var t=Ke();return Qc(t,Me,e)}function Qc(e,t,n){var i=e.queue;if(i===null)throw Error(s(311));i.lastRenderedReducer=n;var r=e.baseQueue,f=i.pending;if(f!==null){if(r!==null){var d=r.next;r.next=f.next,f.next=d}t.baseQueue=r=f,i.pending=null}if(f=e.baseState,r===null)e.memoizedState=f;else{t=r.next;var y=d=null,T=null,z=t,B=!1;do{var H=z.lane&-536870913;if(H!==z.lane?(ye&H)===H:(on&H)===H){var L=z.revertLane;if(L===0)T!==null&&(T=T.next={lane:0,revertLane:0,gesture:null,action:z.action,hasEagerState:z.hasEagerState,eagerState:z.eagerState,next:null}),H===Xl&&(B=!0);else if((on&L)===L){z=z.next,L===Xl&&(B=!0);continue}else H={lane:0,revertLane:z.revertLane,gesture:null,action:z.action,hasEagerState:z.hasEagerState,eagerState:z.eagerState,next:null},T===null?(y=T=H,d=f):T=T.next=H,fe.lanes|=L,Hn|=L;H=z.action,yl&&n(f,H),f=z.hasEagerState?z.eagerState:n(f,H)}else L={lane:H,revertLane:z.revertLane,gesture:z.gesture,action:z.action,hasEagerState:z.hasEagerState,eagerState:z.eagerState,next:null},T===null?(y=T=L,d=f):T=T.next=L,fe.lanes|=H,Hn|=H;z=z.next}while(z!==null&&z!==t);if(T===null?d=f:T.next=y,!Ot(f,e.memoizedState)&&(Ze=!0,B&&(n=Zl,n!==null)))throw n;e.memoizedState=f,e.baseState=d,e.baseQueue=T,i.lastRenderedState=f}return r===null&&(i.lanes=0),[e.memoizedState,i.dispatch]}function Xc(e){var t=Ke(),n=t.queue;if(n===null)throw Error(s(311));n.lastRenderedReducer=e;var i=n.dispatch,r=n.pending,f=t.memoizedState;if(r!==null){n.pending=null;var d=r=r.next;do f=e(f,d.action),d=d.next;while(d!==r);Ot(f,t.memoizedState)||(Ze=!0),t.memoizedState=f,t.baseQueue===null&&(t.baseState=f),n.lastRenderedState=f}return[f,i]}function vh(e,t,n){var i=fe,r=Ke(),f=be;if(f){if(n===void 0)throw Error(s(407));n=n()}else n=t();var d=!Ot((Me||r).memoizedState,n);if(d&&(r.memoizedState=n,Ze=!0),r=r.queue,Wc(Th.bind(null,i,r,e),[e]),r.getSnapshot!==t||d||Xe!==null&&Xe.memoizedState.tag&1){if(i.flags|=2048,ei(9,{destroy:void 0},Sh.bind(null,i,r,n,t),null),xe===null)throw Error(s(349));f||(on&127)!==0||bh(i,t,n)}return n}function bh(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=fe.updateQueue,t===null?(t=ys(),fe.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Sh(e,t,n,i){t.value=n,t.getSnapshot=i,Eh(t)&&wh(e)}function Th(e,t,n){return n(function(){Eh(t)&&wh(e)})}function Eh(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Ot(e,n)}catch{return!0}}function wh(e){var t=cl(e,2);t!==null&&vt(t,e,2)}function Zc(e){var t=ft();if(typeof e=="function"){var n=e;if(e=n(),yl){_n(!0);try{n()}finally{_n(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:hn,lastRenderedState:e},t}function Ah(e,t,n,i){return e.baseState=n,Qc(e,Me,typeof i=="function"?i:hn)}function f0(e,t,n,i,r){if(Es(e))throw Error(s(485));if(e=t.action,e!==null){var f={payload:r,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(d){f.listeners.push(d)}};D.T!==null?n(!0):f.isTransition=!1,i(f),n=t.pending,n===null?(f.next=t.pending=f,Oh(t,f)):(f.next=n.next,t.pending=n.next=f)}}function Oh(e,t){var n=t.action,i=t.payload,r=e.state;if(t.isTransition){var f=D.T,d={};D.T=d;try{var y=n(r,i),T=D.S;T!==null&&T(d,y),_h(e,t,y)}catch(z){Jc(e,t,z)}finally{f!==null&&d.types!==null&&(f.types=d.types),D.T=f}}else try{f=n(r,i),_h(e,t,f)}catch(z){Jc(e,t,z)}}function _h(e,t,n){n!==null&&typeof n=="object"&&typeof n.then=="function"?n.then(function(i){Nh(e,t,i)},function(i){return Jc(e,t,i)}):Nh(e,t,n)}function Nh(e,t,n){t.status="fulfilled",t.value=n,Mh(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,Oh(e,n)))}function Jc(e,t,n){var i=e.pending;if(e.pending=null,i!==null){i=i.next;do t.status="rejected",t.reason=n,Mh(t),t=t.next;while(t!==i)}e.action=null}function Mh(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Ch(e,t){return t}function zh(e,t){if(be){var n=xe.formState;if(n!==null){e:{var i=fe;if(be){if(Le){t:{for(var r=Le,f=Ht;r.nodeType!==8;){if(!f){r=null;break t}if(r=$t(r.nextSibling),r===null){r=null;break t}}f=r.data,r=f==="F!"||f==="F"?r:null}if(r){Le=$t(r.nextSibling),i=r.data==="F!";break e}}xn(i)}i=!1}i&&(t=n[0])}}return n=ft(),n.memoizedState=n.baseState=t,i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ch,lastRenderedState:t},n.queue=i,n=Jh.bind(null,fe,i),i.dispatch=n,i=Zc(!1),f=tr.bind(null,fe,!1,i.queue),i=ft(),r={state:t,dispatch:null,action:e,pending:null},i.queue=r,n=f0.bind(null,fe,r,f,n),r.dispatch=n,i.memoizedState=e,[t,n,!1]}function xh(e){var t=Ke();return Dh(t,Me,e)}function Dh(e,t,n){if(t=Qc(e,t,Ch)[0],e=bs(hn)[0],typeof t=="object"&&t!==null&&typeof t.then=="function")try{var i=la(t)}catch(d){throw d===Jl?rs:d}else i=t;t=Ke();var r=t.queue,f=r.dispatch;return n!==t.memoizedState&&(fe.flags|=2048,ei(9,{destroy:void 0},o0.bind(null,r,n),null)),[i,f,e]}function o0(e,t){e.action=t}function Lh(e){var t=Ke(),n=Me;if(n!==null)return Dh(t,n,e);Ke(),t=t.memoizedState,n=Ke();var i=n.queue.dispatch;return n.memoizedState=e,[t,i,!1]}function ei(e,t,n,i){return e={tag:e,create:n,deps:i,inst:t,next:null},t=fe.updateQueue,t===null&&(t=ys(),fe.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(i=n.next,n.next=e,e.next=i,t.lastEffect=e),e}function Uh(){return Ke().memoizedState}function Ss(e,t,n,i){var r=ft();fe.flags|=e,r.memoizedState=ei(1|t,{destroy:void 0},n,i===void 0?null:i)}function Ts(e,t,n,i){var r=Ke();i=i===void 0?null:i;var f=r.memoizedState.inst;Me!==null&&i!==null&&Hc(i,Me.memoizedState.deps)?r.memoizedState=ei(t,f,n,i):(fe.flags|=e,r.memoizedState=ei(1|t,f,n,i))}function Rh(e,t){Ss(8390656,8,e,t)}function Wc(e,t){Ts(2048,8,e,t)}function h0(e){fe.flags|=4;var t=fe.updateQueue;if(t===null)t=ys(),fe.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function jh(e){var t=Ke().memoizedState;return h0({ref:t,nextImpl:e}),function(){if((Ee&2)!==0)throw Error(s(440));return t.impl.apply(void 0,arguments)}}function Bh(e,t){return Ts(4,2,e,t)}function kh(e,t){return Ts(4,4,e,t)}function qh(e,t){if(typeof t=="function"){e=e();var n=t(e);return function(){typeof n=="function"?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Hh(e,t,n){n=n!=null?n.concat([e]):null,Ts(4,4,qh.bind(null,t,e),n)}function Ic(){}function Yh(e,t){var n=Ke();t=t===void 0?null:t;var i=n.memoizedState;return t!==null&&Hc(t,i[1])?i[0]:(n.memoizedState=[e,t],e)}function $h(e,t){var n=Ke();t=t===void 0?null:t;var i=n.memoizedState;if(t!==null&&Hc(t,i[1]))return i[0];if(i=e(),yl){_n(!0);try{e()}finally{_n(!1)}}return n.memoizedState=[i,t],i}function Fc(e,t,n){return n===void 0||(on&1073741824)!==0&&(ye&261930)===0?e.memoizedState=t:(e.memoizedState=n,e=Kd(),fe.lanes|=e,Hn|=e,n)}function Kh(e,t,n,i){return Ot(n,t)?n:Il.current!==null?(e=Fc(e,n,i),Ot(e,t)||(Ze=!0),e):(on&42)===0||(on&1073741824)!==0&&(ye&261930)===0?(Ze=!0,e.memoizedState=n):(e=Kd(),fe.lanes|=e,Hn|=e,t)}function Gh(e,t,n,i,r){var f=G.p;G.p=f!==0&&8>f?f:8;var d=D.T,y={};D.T=y,tr(e,!1,t,n);try{var T=r(),z=D.S;if(z!==null&&z(y,T),T!==null&&typeof T=="object"&&typeof T.then=="function"){var B=u0(T,i);ia(e,t,B,xt(e))}else ia(e,t,i,xt(e))}catch(H){ia(e,t,{then:function(){},status:"rejected",reason:H},xt())}finally{G.p=f,d!==null&&y.types!==null&&(d.types=y.types),D.T=d}}function d0(){}function Pc(e,t,n,i){if(e.tag!==5)throw Error(s(476));var r=Vh(e).queue;Gh(e,r,t,ne,n===null?d0:function(){return Qh(e),n(i)})}function Vh(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ne,baseState:ne,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:hn,lastRenderedState:ne},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:hn,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Qh(e){var t=Vh(e);t.next===null&&(t=e.alternate.memoizedState),ia(e,t.next.queue,{},xt())}function er(){return lt(Ta)}function Xh(){return Ke().memoizedState}function Zh(){return Ke().memoizedState}function m0(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=xt();e=Un(n);var i=Rn(t,e,n);i!==null&&(vt(i,t,n),Pi(i,t,n)),t={cache:Cc()},e.payload=t;return}t=t.return}}function g0(e,t,n){var i=xt();n={lane:i,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Es(e)?Wh(t,n):(n=vc(e,t,n,i),n!==null&&(vt(n,e,i),Ih(n,t,i)))}function Jh(e,t,n){var i=xt();ia(e,t,n,i)}function ia(e,t,n,i){var r={lane:i,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Es(e))Wh(t,r);else{var f=e.alternate;if(e.lanes===0&&(f===null||f.lanes===0)&&(f=t.lastRenderedReducer,f!==null))try{var d=t.lastRenderedState,y=f(d,n);if(r.hasEagerState=!0,r.eagerState=y,Ot(y,d))return ns(e,t,r,0),xe===null&&ts(),!1}catch{}finally{}if(n=vc(e,t,r,i),n!==null)return vt(n,e,i),Ih(n,t,i),!0}return!1}function tr(e,t,n,i){if(i={lane:2,revertLane:Lr(),gesture:null,action:i,hasEagerState:!1,eagerState:null,next:null},Es(e)){if(t)throw Error(s(479))}else t=vc(e,n,i,2),t!==null&&vt(t,e,2)}function Es(e){var t=e.alternate;return e===fe||t!==null&&t===fe}function Wh(e,t){Fl=gs=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Ih(e,t,n){if((n&4194048)!==0){var i=t.lanes;i&=e.pendingLanes,n|=i,t.lanes=n,to(e,n)}}var aa={readContext:lt,use:vs,useCallback:qe,useContext:qe,useEffect:qe,useImperativeHandle:qe,useLayoutEffect:qe,useInsertionEffect:qe,useMemo:qe,useReducer:qe,useRef:qe,useState:qe,useDebugValue:qe,useDeferredValue:qe,useTransition:qe,useSyncExternalStore:qe,useId:qe,useHostTransitionStatus:qe,useFormState:qe,useActionState:qe,useOptimistic:qe,useMemoCache:qe,useCacheRefresh:qe};aa.useEffectEvent=qe;var Fh={readContext:lt,use:vs,useCallback:function(e,t){return ft().memoizedState=[e,t===void 0?null:t],e},useContext:lt,useEffect:Rh,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Ss(4194308,4,qh.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ss(4194308,4,e,t)},useInsertionEffect:function(e,t){Ss(4,2,e,t)},useMemo:function(e,t){var n=ft();t=t===void 0?null:t;var i=e();if(yl){_n(!0);try{e()}finally{_n(!1)}}return n.memoizedState=[i,t],i},useReducer:function(e,t,n){var i=ft();if(n!==void 0){var r=n(t);if(yl){_n(!0);try{n(t)}finally{_n(!1)}}}else r=t;return i.memoizedState=i.baseState=r,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:r},i.queue=e,e=e.dispatch=g0.bind(null,fe,e),[i.memoizedState,e]},useRef:function(e){var t=ft();return e={current:e},t.memoizedState=e},useState:function(e){e=Zc(e);var t=e.queue,n=Jh.bind(null,fe,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ic,useDeferredValue:function(e,t){var n=ft();return Fc(n,e,t)},useTransition:function(){var e=Zc(!1);return e=Gh.bind(null,fe,e.queue,!0,!1),ft().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var i=fe,r=ft();if(be){if(n===void 0)throw Error(s(407));n=n()}else{if(n=t(),xe===null)throw Error(s(349));(ye&127)!==0||bh(i,t,n)}r.memoizedState=n;var f={value:n,getSnapshot:t};return r.queue=f,Rh(Th.bind(null,i,f,e),[e]),i.flags|=2048,ei(9,{destroy:void 0},Sh.bind(null,i,f,n,t),null),n},useId:function(){var e=ft(),t=xe.identifierPrefix;if(be){var n=Ft,i=It;n=(i&~(1<<32-At(i)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ps++,0<n&&(t+="H"+n.toString(32)),t+="_"}else n=c0++,t="_"+t+"r_"+n.toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:er,useFormState:zh,useActionState:zh,useOptimistic:function(e){var t=ft();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=tr.bind(null,fe,!0,n),n.dispatch=t,[e,t]},useMemoCache:Vc,useCacheRefresh:function(){return ft().memoizedState=m0.bind(null,fe)},useEffectEvent:function(e){var t=ft(),n={impl:e};return t.memoizedState=n,function(){if((Ee&2)!==0)throw Error(s(440));return n.impl.apply(void 0,arguments)}}},nr={readContext:lt,use:vs,useCallback:Yh,useContext:lt,useEffect:Wc,useImperativeHandle:Hh,useInsertionEffect:Bh,useLayoutEffect:kh,useMemo:$h,useReducer:bs,useRef:Uh,useState:function(){return bs(hn)},useDebugValue:Ic,useDeferredValue:function(e,t){var n=Ke();return Kh(n,Me.memoizedState,e,t)},useTransition:function(){var e=bs(hn)[0],t=Ke().memoizedState;return[typeof e=="boolean"?e:la(e),t]},useSyncExternalStore:vh,useId:Xh,useHostTransitionStatus:er,useFormState:xh,useActionState:xh,useOptimistic:function(e,t){var n=Ke();return Ah(n,Me,e,t)},useMemoCache:Vc,useCacheRefresh:Zh};nr.useEffectEvent=jh;var Ph={readContext:lt,use:vs,useCallback:Yh,useContext:lt,useEffect:Wc,useImperativeHandle:Hh,useInsertionEffect:Bh,useLayoutEffect:kh,useMemo:$h,useReducer:Xc,useRef:Uh,useState:function(){return Xc(hn)},useDebugValue:Ic,useDeferredValue:function(e,t){var n=Ke();return Me===null?Fc(n,e,t):Kh(n,Me.memoizedState,e,t)},useTransition:function(){var e=Xc(hn)[0],t=Ke().memoizedState;return[typeof e=="boolean"?e:la(e),t]},useSyncExternalStore:vh,useId:Xh,useHostTransitionStatus:er,useFormState:Lh,useActionState:Lh,useOptimistic:function(e,t){var n=Ke();return Me!==null?Ah(n,Me,e,t):(n.baseState=e,[e,n.queue.dispatch])},useMemoCache:Vc,useCacheRefresh:Zh};Ph.useEffectEvent=jh;function lr(e,t,n,i){t=e.memoizedState,n=n(i,t),n=n==null?t:v({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var ir={enqueueSetState:function(e,t,n){e=e._reactInternals;var i=xt(),r=Un(i);r.payload=t,n!=null&&(r.callback=n),t=Rn(e,r,i),t!==null&&(vt(t,e,i),Pi(t,e,i))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var i=xt(),r=Un(i);r.tag=1,r.payload=t,n!=null&&(r.callback=n),t=Rn(e,r,i),t!==null&&(vt(t,e,i),Pi(t,e,i))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=xt(),i=Un(n);i.tag=2,t!=null&&(i.callback=t),t=Rn(e,i,n),t!==null&&(vt(t,e,n),Pi(t,e,n))}};function ed(e,t,n,i,r,f,d){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(i,f,d):t.prototype&&t.prototype.isPureReactComponent?!Vi(n,i)||!Vi(r,f):!0}function td(e,t,n,i){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,i),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,i),t.state!==e&&ir.enqueueReplaceState(t,t.state,null)}function vl(e,t){var n=t;if("ref"in t){n={};for(var i in t)i!=="ref"&&(n[i]=t[i])}if(e=e.defaultProps){n===t&&(n=v({},n));for(var r in e)n[r]===void 0&&(n[r]=e[r])}return n}function nd(e){es(e)}function ld(e){console.error(e)}function id(e){es(e)}function ws(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(i){setTimeout(function(){throw i})}}function ad(e,t,n){try{var i=e.onCaughtError;i(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(r){setTimeout(function(){throw r})}}function ar(e,t,n){return n=Un(n),n.tag=3,n.payload={element:null},n.callback=function(){ws(e,t)},n}function sd(e){return e=Un(e),e.tag=3,e}function ud(e,t,n,i){var r=n.type.getDerivedStateFromError;if(typeof r=="function"){var f=i.value;e.payload=function(){return r(f)},e.callback=function(){ad(t,n,i)}}var d=n.stateNode;d!==null&&typeof d.componentDidCatch=="function"&&(e.callback=function(){ad(t,n,i),typeof r!="function"&&(Yn===null?Yn=new Set([this]):Yn.add(this));var y=i.stack;this.componentDidCatch(i.value,{componentStack:y!==null?y:""})})}function p0(e,t,n,i,r){if(n.flags|=32768,i!==null&&typeof i=="object"&&typeof i.then=="function"){if(t=n.alternate,t!==null&&Ql(t,n,r,!0),n=Nt.current,n!==null){switch(n.tag){case 31:case 13:return Yt===null?Rs():n.alternate===null&&He===0&&(He=3),n.flags&=-257,n.flags|=65536,n.lanes=r,i===fs?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([i]):t.add(i),zr(e,i,r)),!1;case 22:return n.flags|=65536,i===fs?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([i])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([i]):n.add(i)),zr(e,i,r)),!1}throw Error(s(435,n.tag))}return zr(e,i,r),Rs(),!1}if(be)return t=Nt.current,t!==null?((t.flags&65536)===0&&(t.flags|=256),t.flags|=65536,t.lanes=r,i!==Ac&&(e=Error(s(422),{cause:i}),Zi(Bt(e,n)))):(i!==Ac&&(t=Error(s(423),{cause:i}),Zi(Bt(t,n))),e=e.current.alternate,e.flags|=65536,r&=-r,e.lanes|=r,i=Bt(i,n),r=ar(e.stateNode,i,r),Rc(e,r),He!==4&&(He=2)),!1;var f=Error(s(520),{cause:i});if(f=Bt(f,n),da===null?da=[f]:da.push(f),He!==4&&(He=2),t===null)return!0;i=Bt(i,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=r&-r,n.lanes|=e,e=ar(n.stateNode,i,e),Rc(n,e),!1;case 1:if(t=n.type,f=n.stateNode,(n.flags&128)===0&&(typeof t.getDerivedStateFromError=="function"||f!==null&&typeof f.componentDidCatch=="function"&&(Yn===null||!Yn.has(f))))return n.flags|=65536,r&=-r,n.lanes|=r,r=sd(r),ud(r,e,n,i),Rc(n,r),!1}n=n.return}while(n!==null);return!1}var sr=Error(s(461)),Ze=!1;function it(e,t,n,i){t.child=e===null?oh(t,null,n,i):pl(t,e.child,n,i)}function cd(e,t,n,i,r){n=n.render;var f=t.ref;if("ref"in i){var d={};for(var y in i)y!=="ref"&&(d[y]=i[y])}else d=i;return hl(t),i=Yc(e,t,n,d,f,r),y=$c(),e!==null&&!Ze?(Kc(e,t,r),dn(e,t,r)):(be&&y&&Ec(t),t.flags|=1,it(e,t,i,r),t.child)}function rd(e,t,n,i,r){if(e===null){var f=n.type;return typeof f=="function"&&!bc(f)&&f.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=f,fd(e,t,f,i,r)):(e=is(n.type,null,i,t,t.mode,r),e.ref=t.ref,e.return=t,t.child=e)}if(f=e.child,!mr(e,r)){var d=f.memoizedProps;if(n=n.compare,n=n!==null?n:Vi,n(d,i)&&e.ref===t.ref)return dn(e,t,r)}return t.flags|=1,e=un(f,i),e.ref=t.ref,e.return=t,t.child=e}function fd(e,t,n,i,r){if(e!==null){var f=e.memoizedProps;if(Vi(f,i)&&e.ref===t.ref)if(Ze=!1,t.pendingProps=i=f,mr(e,r))(e.flags&131072)!==0&&(Ze=!0);else return t.lanes=e.lanes,dn(e,t,r)}return ur(e,t,n,i,r)}function od(e,t,n,i){var r=i.children,f=e!==null?e.memoizedState:null;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),i.mode==="hidden"){if((t.flags&128)!==0){if(f=f!==null?f.baseLanes|n:n,e!==null){for(i=t.child=e.child,r=0;i!==null;)r=r|i.lanes|i.childLanes,i=i.sibling;i=r&~f}else i=0,t.child=null;return hd(e,t,f,n,i)}if((n&536870912)!==0)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&cs(t,f!==null?f.cachePool:null),f!==null?mh(t,f):Bc(),gh(t);else return i=t.lanes=536870912,hd(e,t,f!==null?f.baseLanes|n:n,n,i)}else f!==null?(cs(t,f.cachePool),mh(t,f),Bn(),t.memoizedState=null):(e!==null&&cs(t,null),Bc(),Bn());return it(e,t,r,n),t.child}function sa(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function hd(e,t,n,i,r){var f=xc();return f=f===null?null:{parent:Qe._currentValue,pool:f},t.memoizedState={baseLanes:n,cachePool:f},e!==null&&cs(t,null),Bc(),gh(t),e!==null&&Ql(e,t,i,!0),t.childLanes=r,null}function As(e,t){return t=_s({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function dd(e,t,n){return pl(t,e.child,null,n),e=As(t,t.pendingProps),e.flags|=2,Mt(t),t.memoizedState=null,e}function y0(e,t,n){var i=t.pendingProps,r=(t.flags&128)!==0;if(t.flags&=-129,e===null){if(be){if(i.mode==="hidden")return e=As(t,i),t.lanes=536870912,sa(null,e);if(qc(t),(e=Le)?(e=Om(e,Ht),e=e!==null&&e.data==="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Cn!==null?{id:It,overflow:Ft}:null,retryLane:536870912,hydrationErrors:null},n=Wo(e),n.return=t,t.child=n,nt=t,Le=null)):e=null,e===null)throw xn(t);return t.lanes=536870912,null}return As(t,i)}var f=e.memoizedState;if(f!==null){var d=f.dehydrated;if(qc(t),r)if(t.flags&256)t.flags&=-257,t=dd(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(s(558));else if(Ze||Ql(e,t,n,!1),r=(n&e.childLanes)!==0,Ze||r){if(i=xe,i!==null&&(d=no(i,n),d!==0&&d!==f.retryLane))throw f.retryLane=d,cl(e,d),vt(i,e,d),sr;Rs(),t=dd(e,t,n)}else e=f.treeContext,Le=$t(d.nextSibling),nt=t,be=!0,zn=null,Ht=!1,e!==null&&Po(t,e),t=As(t,i),t.flags|=4096;return t}return e=un(e.child,{mode:i.mode,children:i.children}),e.ref=t.ref,t.child=e,e.return=t,e}function Os(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!="function"&&typeof n!="object")throw Error(s(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function ur(e,t,n,i,r){return hl(t),n=Yc(e,t,n,i,void 0,r),i=$c(),e!==null&&!Ze?(Kc(e,t,r),dn(e,t,r)):(be&&i&&Ec(t),t.flags|=1,it(e,t,n,r),t.child)}function md(e,t,n,i,r,f){return hl(t),t.updateQueue=null,n=yh(t,i,n,r),ph(e),i=$c(),e!==null&&!Ze?(Kc(e,t,f),dn(e,t,f)):(be&&i&&Ec(t),t.flags|=1,it(e,t,n,f),t.child)}function gd(e,t,n,i,r){if(hl(t),t.stateNode===null){var f=$l,d=n.contextType;typeof d=="object"&&d!==null&&(f=lt(d)),f=new n(i,f),t.memoizedState=f.state!==null&&f.state!==void 0?f.state:null,f.updater=ir,t.stateNode=f,f._reactInternals=t,f=t.stateNode,f.props=i,f.state=t.memoizedState,f.refs={},Lc(t),d=n.contextType,f.context=typeof d=="object"&&d!==null?lt(d):$l,f.state=t.memoizedState,d=n.getDerivedStateFromProps,typeof d=="function"&&(lr(t,n,d,i),f.state=t.memoizedState),typeof n.getDerivedStateFromProps=="function"||typeof f.getSnapshotBeforeUpdate=="function"||typeof f.UNSAFE_componentWillMount!="function"&&typeof f.componentWillMount!="function"||(d=f.state,typeof f.componentWillMount=="function"&&f.componentWillMount(),typeof f.UNSAFE_componentWillMount=="function"&&f.UNSAFE_componentWillMount(),d!==f.state&&ir.enqueueReplaceState(f,f.state,null),ta(t,i,f,r),ea(),f.state=t.memoizedState),typeof f.componentDidMount=="function"&&(t.flags|=4194308),i=!0}else if(e===null){f=t.stateNode;var y=t.memoizedProps,T=vl(n,y);f.props=T;var z=f.context,B=n.contextType;d=$l,typeof B=="object"&&B!==null&&(d=lt(B));var H=n.getDerivedStateFromProps;B=typeof H=="function"||typeof f.getSnapshotBeforeUpdate=="function",y=t.pendingProps!==y,B||typeof f.UNSAFE_componentWillReceiveProps!="function"&&typeof f.componentWillReceiveProps!="function"||(y||z!==d)&&td(t,f,i,d),Ln=!1;var L=t.memoizedState;f.state=L,ta(t,i,f,r),ea(),z=t.memoizedState,y||L!==z||Ln?(typeof H=="function"&&(lr(t,n,H,i),z=t.memoizedState),(T=Ln||ed(t,n,T,i,L,z,d))?(B||typeof f.UNSAFE_componentWillMount!="function"&&typeof f.componentWillMount!="function"||(typeof f.componentWillMount=="function"&&f.componentWillMount(),typeof f.UNSAFE_componentWillMount=="function"&&f.UNSAFE_componentWillMount()),typeof f.componentDidMount=="function"&&(t.flags|=4194308)):(typeof f.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=i,t.memoizedState=z),f.props=i,f.state=z,f.context=d,i=T):(typeof f.componentDidMount=="function"&&(t.flags|=4194308),i=!1)}else{f=t.stateNode,Uc(e,t),d=t.memoizedProps,B=vl(n,d),f.props=B,H=t.pendingProps,L=f.context,z=n.contextType,T=$l,typeof z=="object"&&z!==null&&(T=lt(z)),y=n.getDerivedStateFromProps,(z=typeof y=="function"||typeof f.getSnapshotBeforeUpdate=="function")||typeof f.UNSAFE_componentWillReceiveProps!="function"&&typeof f.componentWillReceiveProps!="function"||(d!==H||L!==T)&&td(t,f,i,T),Ln=!1,L=t.memoizedState,f.state=L,ta(t,i,f,r),ea();var j=t.memoizedState;d!==H||L!==j||Ln||e!==null&&e.dependencies!==null&&ss(e.dependencies)?(typeof y=="function"&&(lr(t,n,y,i),j=t.memoizedState),(B=Ln||ed(t,n,B,i,L,j,T)||e!==null&&e.dependencies!==null&&ss(e.dependencies))?(z||typeof f.UNSAFE_componentWillUpdate!="function"&&typeof f.componentWillUpdate!="function"||(typeof f.componentWillUpdate=="function"&&f.componentWillUpdate(i,j,T),typeof f.UNSAFE_componentWillUpdate=="function"&&f.UNSAFE_componentWillUpdate(i,j,T)),typeof f.componentDidUpdate=="function"&&(t.flags|=4),typeof f.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof f.componentDidUpdate!="function"||d===e.memoizedProps&&L===e.memoizedState||(t.flags|=4),typeof f.getSnapshotBeforeUpdate!="function"||d===e.memoizedProps&&L===e.memoizedState||(t.flags|=1024),t.memoizedProps=i,t.memoizedState=j),f.props=i,f.state=j,f.context=T,i=B):(typeof f.componentDidUpdate!="function"||d===e.memoizedProps&&L===e.memoizedState||(t.flags|=4),typeof f.getSnapshotBeforeUpdate!="function"||d===e.memoizedProps&&L===e.memoizedState||(t.flags|=1024),i=!1)}return f=i,Os(e,t),i=(t.flags&128)!==0,f||i?(f=t.stateNode,n=i&&typeof n.getDerivedStateFromError!="function"?null:f.render(),t.flags|=1,e!==null&&i?(t.child=pl(t,e.child,null,r),t.child=pl(t,null,n,r)):it(e,t,n,r),t.memoizedState=f.state,e=t.child):e=dn(e,t,r),e}function pd(e,t,n,i){return fl(),t.flags|=256,it(e,t,n,i),t.child}var cr={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function rr(e){return{baseLanes:e,cachePool:ah()}}function fr(e,t,n){return e=e!==null?e.childLanes&~n:0,t&&(e|=zt),e}function yd(e,t,n){var i=t.pendingProps,r=!1,f=(t.flags&128)!==0,d;if((d=f)||(d=e!==null&&e.memoizedState===null?!1:($e.current&2)!==0),d&&(r=!0,t.flags&=-129),d=(t.flags&32)!==0,t.flags&=-33,e===null){if(be){if(r?jn(t):Bn(),(e=Le)?(e=Om(e,Ht),e=e!==null&&e.data!=="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Cn!==null?{id:It,overflow:Ft}:null,retryLane:536870912,hydrationErrors:null},n=Wo(e),n.return=t,t.child=n,nt=t,Le=null)):e=null,e===null)throw xn(t);return Qr(e)?t.lanes=32:t.lanes=536870912,null}var y=i.children;return i=i.fallback,r?(Bn(),r=t.mode,y=_s({mode:"hidden",children:y},r),i=rl(i,r,n,null),y.return=t,i.return=t,y.sibling=i,t.child=y,i=t.child,i.memoizedState=rr(n),i.childLanes=fr(e,d,n),t.memoizedState=cr,sa(null,i)):(jn(t),or(t,y))}var T=e.memoizedState;if(T!==null&&(y=T.dehydrated,y!==null)){if(f)t.flags&256?(jn(t),t.flags&=-257,t=hr(e,t,n)):t.memoizedState!==null?(Bn(),t.child=e.child,t.flags|=128,t=null):(Bn(),y=i.fallback,r=t.mode,i=_s({mode:"visible",children:i.children},r),y=rl(y,r,n,null),y.flags|=2,i.return=t,y.return=t,i.sibling=y,t.child=i,pl(t,e.child,null,n),i=t.child,i.memoizedState=rr(n),i.childLanes=fr(e,d,n),t.memoizedState=cr,t=sa(null,i));else if(jn(t),Qr(y)){if(d=y.nextSibling&&y.nextSibling.dataset,d)var z=d.dgst;d=z,i=Error(s(419)),i.stack="",i.digest=d,Zi({value:i,source:null,stack:null}),t=hr(e,t,n)}else if(Ze||Ql(e,t,n,!1),d=(n&e.childLanes)!==0,Ze||d){if(d=xe,d!==null&&(i=no(d,n),i!==0&&i!==T.retryLane))throw T.retryLane=i,cl(e,i),vt(d,e,i),sr;Vr(y)||Rs(),t=hr(e,t,n)}else Vr(y)?(t.flags|=192,t.child=e.child,t=null):(e=T.treeContext,Le=$t(y.nextSibling),nt=t,be=!0,zn=null,Ht=!1,e!==null&&Po(t,e),t=or(t,i.children),t.flags|=4096);return t}return r?(Bn(),y=i.fallback,r=t.mode,T=e.child,z=T.sibling,i=un(T,{mode:"hidden",children:i.children}),i.subtreeFlags=T.subtreeFlags&65011712,z!==null?y=un(z,y):(y=rl(y,r,n,null),y.flags|=2),y.return=t,i.return=t,i.sibling=y,t.child=i,sa(null,i),i=t.child,y=e.child.memoizedState,y===null?y=rr(n):(r=y.cachePool,r!==null?(T=Qe._currentValue,r=r.parent!==T?{parent:T,pool:T}:r):r=ah(),y={baseLanes:y.baseLanes|n,cachePool:r}),i.memoizedState=y,i.childLanes=fr(e,d,n),t.memoizedState=cr,sa(e.child,i)):(jn(t),n=e.child,e=n.sibling,n=un(n,{mode:"visible",children:i.children}),n.return=t,n.sibling=null,e!==null&&(d=t.deletions,d===null?(t.deletions=[e],t.flags|=16):d.push(e)),t.child=n,t.memoizedState=null,n)}function or(e,t){return t=_s({mode:"visible",children:t},e.mode),t.return=e,e.child=t}function _s(e,t){return e=_t(22,e,null,t),e.lanes=0,e}function hr(e,t,n){return pl(t,e.child,null,n),e=or(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function vd(e,t,n){e.lanes|=t;var i=e.alternate;i!==null&&(i.lanes|=t),Nc(e.return,t,n)}function dr(e,t,n,i,r,f){var d=e.memoizedState;d===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:i,tail:n,tailMode:r,treeForkCount:f}:(d.isBackwards=t,d.rendering=null,d.renderingStartTime=0,d.last=i,d.tail=n,d.tailMode=r,d.treeForkCount=f)}function bd(e,t,n){var i=t.pendingProps,r=i.revealOrder,f=i.tail;i=i.children;var d=$e.current,y=(d&2)!==0;if(y?(d=d&1|2,t.flags|=128):d&=1,J($e,d),it(e,t,i,n),i=be?Xi:0,!y&&e!==null&&(e.flags&128)!==0)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&vd(e,n,t);else if(e.tag===19)vd(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(r){case"forwards":for(n=t.child,r=null;n!==null;)e=n.alternate,e!==null&&ms(e)===null&&(r=n),n=n.sibling;n=r,n===null?(r=t.child,t.child=null):(r=n.sibling,n.sibling=null),dr(t,!1,r,n,f,i);break;case"backwards":case"unstable_legacy-backwards":for(n=null,r=t.child,t.child=null;r!==null;){if(e=r.alternate,e!==null&&ms(e)===null){t.child=r;break}e=r.sibling,r.sibling=n,n=r,r=e}dr(t,!0,n,null,f,i);break;case"together":dr(t,!1,null,null,void 0,i);break;default:t.memoizedState=null}return t.child}function dn(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Hn|=t.lanes,(n&t.childLanes)===0)if(e!==null){if(Ql(e,t,n,!1),(n&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(s(153));if(t.child!==null){for(e=t.child,n=un(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=un(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function mr(e,t){return(e.lanes&t)!==0?!0:(e=e.dependencies,!!(e!==null&&ss(e)))}function v0(e,t,n){switch(t.tag){case 3:rt(t,t.stateNode.containerInfo),Dn(t,Qe,e.memoizedState.cache),fl();break;case 27:case 5:Di(t);break;case 4:rt(t,t.stateNode.containerInfo);break;case 10:Dn(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,qc(t),null;break;case 13:var i=t.memoizedState;if(i!==null)return i.dehydrated!==null?(jn(t),t.flags|=128,null):(n&t.child.childLanes)!==0?yd(e,t,n):(jn(t),e=dn(e,t,n),e!==null?e.sibling:null);jn(t);break;case 19:var r=(e.flags&128)!==0;if(i=(n&t.childLanes)!==0,i||(Ql(e,t,n,!1),i=(n&t.childLanes)!==0),r){if(i)return bd(e,t,n);t.flags|=128}if(r=t.memoizedState,r!==null&&(r.rendering=null,r.tail=null,r.lastEffect=null),J($e,$e.current),i)break;return null;case 22:return t.lanes=0,od(e,t,n,t.pendingProps);case 24:Dn(t,Qe,e.memoizedState.cache)}return dn(e,t,n)}function Sd(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps)Ze=!0;else{if(!mr(e,n)&&(t.flags&128)===0)return Ze=!1,v0(e,t,n);Ze=(e.flags&131072)!==0}else Ze=!1,be&&(t.flags&1048576)!==0&&Fo(t,Xi,t.index);switch(t.lanes=0,t.tag){case 16:e:{var i=t.pendingProps;if(e=ml(t.elementType),t.type=e,typeof e=="function")bc(e)?(i=vl(e,i),t.tag=1,t=gd(null,t,e,i,n)):(t.tag=0,t=ur(null,t,e,i,n));else{if(e!=null){var r=e.$$typeof;if(r===Q){t.tag=11,t=cd(null,t,e,i,n);break e}else if(r===k){t.tag=14,t=rd(null,t,e,i,n);break e}}throw t=we(e)||e,Error(s(306,t,""))}}return t;case 0:return ur(e,t,t.type,t.pendingProps,n);case 1:return i=t.type,r=vl(i,t.pendingProps),gd(e,t,i,r,n);case 3:e:{if(rt(t,t.stateNode.containerInfo),e===null)throw Error(s(387));i=t.pendingProps;var f=t.memoizedState;r=f.element,Uc(e,t),ta(t,i,null,n);var d=t.memoizedState;if(i=d.cache,Dn(t,Qe,i),i!==f.cache&&Mc(t,[Qe],n,!0),ea(),i=d.element,f.isDehydrated)if(f={element:i,isDehydrated:!1,cache:d.cache},t.updateQueue.baseState=f,t.memoizedState=f,t.flags&256){t=pd(e,t,i,n);break e}else if(i!==r){r=Bt(Error(s(424)),t),Zi(r),t=pd(e,t,i,n);break e}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName==="HTML"?e.ownerDocument.body:e}for(Le=$t(e.firstChild),nt=t,be=!0,zn=null,Ht=!0,n=oh(t,null,i,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(fl(),i===r){t=dn(e,t,n);break e}it(e,t,i,n)}t=t.child}return t;case 26:return Os(e,t),e===null?(n=xm(t.type,null,t.pendingProps,null))?t.memoizedState=n:be||(n=t.type,e=t.pendingProps,i=$s(me.current).createElement(n),i[tt]=t,i[ht]=e,at(i,n,e),Pe(i),t.stateNode=i):t.memoizedState=xm(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return Di(t),e===null&&be&&(i=t.stateNode=Mm(t.type,t.pendingProps,me.current),nt=t,Ht=!0,r=Le,Vn(t.type)?(Xr=r,Le=$t(i.firstChild)):Le=r),it(e,t,t.pendingProps.children,n),Os(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&be&&((r=i=Le)&&(i=Z0(i,t.type,t.pendingProps,Ht),i!==null?(t.stateNode=i,nt=t,Le=$t(i.firstChild),Ht=!1,r=!0):r=!1),r||xn(t)),Di(t),r=t.type,f=t.pendingProps,d=e!==null?e.memoizedProps:null,i=f.children,$r(r,f)?i=null:d!==null&&$r(r,d)&&(t.flags|=32),t.memoizedState!==null&&(r=Yc(e,t,r0,null,null,n),Ta._currentValue=r),Os(e,t),it(e,t,i,n),t.child;case 6:return e===null&&be&&((e=n=Le)&&(n=J0(n,t.pendingProps,Ht),n!==null?(t.stateNode=n,nt=t,Le=null,e=!0):e=!1),e||xn(t)),null;case 13:return yd(e,t,n);case 4:return rt(t,t.stateNode.containerInfo),i=t.pendingProps,e===null?t.child=pl(t,null,i,n):it(e,t,i,n),t.child;case 11:return cd(e,t,t.type,t.pendingProps,n);case 7:return it(e,t,t.pendingProps,n),t.child;case 8:return it(e,t,t.pendingProps.children,n),t.child;case 12:return it(e,t,t.pendingProps.children,n),t.child;case 10:return i=t.pendingProps,Dn(t,t.type,i.value),it(e,t,i.children,n),t.child;case 9:return r=t.type._context,i=t.pendingProps.children,hl(t),r=lt(r),i=i(r),t.flags|=1,it(e,t,i,n),t.child;case 14:return rd(e,t,t.type,t.pendingProps,n);case 15:return fd(e,t,t.type,t.pendingProps,n);case 19:return bd(e,t,n);case 31:return y0(e,t,n);case 22:return od(e,t,n,t.pendingProps);case 24:return hl(t),i=lt(Qe),e===null?(r=xc(),r===null&&(r=xe,f=Cc(),r.pooledCache=f,f.refCount++,f!==null&&(r.pooledCacheLanes|=n),r=f),t.memoizedState={parent:i,cache:r},Lc(t),Dn(t,Qe,r)):((e.lanes&n)!==0&&(Uc(e,t),ta(t,null,null,n),ea()),r=e.memoizedState,f=t.memoizedState,r.parent!==i?(r={parent:i,cache:i},t.memoizedState=r,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=r),Dn(t,Qe,i)):(i=f.cache,Dn(t,Qe,i),i!==r.cache&&Mc(t,[Qe],n,!0))),it(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(s(156,t.tag))}function mn(e){e.flags|=4}function gr(e,t,n,i,r){if((t=(e.mode&32)!==0)&&(t=!1),t){if(e.flags|=16777216,(r&335544128)===r)if(e.stateNode.complete)e.flags|=8192;else if(Xd())e.flags|=8192;else throw gl=fs,Dc}else e.flags&=-16777217}function Td(e,t){if(t.type!=="stylesheet"||(t.state.loading&4)!==0)e.flags&=-16777217;else if(e.flags|=16777216,!jm(t))if(Xd())e.flags|=8192;else throw gl=fs,Dc}function Ns(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag!==22?Pf():536870912,e.lanes|=t,ii|=t)}function ua(e,t){if(!be)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var i=null;n!==null;)n.alternate!==null&&(i=n),n=n.sibling;i===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:i.sibling=null}}function Ue(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,i=0;if(t)for(var r=e.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags&65011712,i|=r.flags&65011712,r.return=e,r=r.sibling;else for(r=e.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags,i|=r.flags,r.return=e,r=r.sibling;return e.subtreeFlags|=i,e.childLanes=n,t}function b0(e,t,n){var i=t.pendingProps;switch(wc(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ue(t),null;case 1:return Ue(t),null;case 3:return n=t.stateNode,i=null,e!==null&&(i=e.memoizedState.cache),t.memoizedState.cache!==i&&(t.flags|=2048),fn(Qe),Ye(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Vl(t)?mn(t):e===null||e.memoizedState.isDehydrated&&(t.flags&256)===0||(t.flags|=1024,Oc())),Ue(t),null;case 26:var r=t.type,f=t.memoizedState;return e===null?(mn(t),f!==null?(Ue(t),Td(t,f)):(Ue(t),gr(t,r,null,i,n))):f?f!==e.memoizedState?(mn(t),Ue(t),Td(t,f)):(Ue(t),t.flags&=-16777217):(e=e.memoizedProps,e!==i&&mn(t),Ue(t),gr(t,r,e,i,n)),null;case 27:if(ka(t),n=me.current,r=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==i&&mn(t);else{if(!i){if(t.stateNode===null)throw Error(s(166));return Ue(t),null}e=F.current,Vl(t)?eh(t):(e=Mm(r,i,n),t.stateNode=e,mn(t))}return Ue(t),null;case 5:if(ka(t),r=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==i&&mn(t);else{if(!i){if(t.stateNode===null)throw Error(s(166));return Ue(t),null}if(f=F.current,Vl(t))eh(t);else{var d=$s(me.current);switch(f){case 1:f=d.createElementNS("http://www.w3.org/2000/svg",r);break;case 2:f=d.createElementNS("http://www.w3.org/1998/Math/MathML",r);break;default:switch(r){case"svg":f=d.createElementNS("http://www.w3.org/2000/svg",r);break;case"math":f=d.createElementNS("http://www.w3.org/1998/Math/MathML",r);break;case"script":f=d.createElement("div"),f.innerHTML="<script><\/script>",f=f.removeChild(f.firstChild);break;case"select":f=typeof i.is=="string"?d.createElement("select",{is:i.is}):d.createElement("select"),i.multiple?f.multiple=!0:i.size&&(f.size=i.size);break;default:f=typeof i.is=="string"?d.createElement(r,{is:i.is}):d.createElement(r)}}f[tt]=t,f[ht]=i;e:for(d=t.child;d!==null;){if(d.tag===5||d.tag===6)f.appendChild(d.stateNode);else if(d.tag!==4&&d.tag!==27&&d.child!==null){d.child.return=d,d=d.child;continue}if(d===t)break e;for(;d.sibling===null;){if(d.return===null||d.return===t)break e;d=d.return}d.sibling.return=d.return,d=d.sibling}t.stateNode=f;e:switch(at(f,r,i),r){case"button":case"input":case"select":case"textarea":i=!!i.autoFocus;break e;case"img":i=!0;break e;default:i=!1}i&&mn(t)}}return Ue(t),gr(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==i&&mn(t);else{if(typeof i!="string"&&t.stateNode===null)throw Error(s(166));if(e=me.current,Vl(t)){if(e=t.stateNode,n=t.memoizedProps,i=null,r=nt,r!==null)switch(r.tag){case 27:case 5:i=r.memoizedProps}e[tt]=t,e=!!(e.nodeValue===n||i!==null&&i.suppressHydrationWarning===!0||ym(e.nodeValue,n)),e||xn(t,!0)}else e=$s(e).createTextNode(i),e[tt]=t,t.stateNode=e}return Ue(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(i=Vl(t),n!==null){if(e===null){if(!i)throw Error(s(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(s(557));e[tt]=t}else fl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ue(t),e=!1}else n=Oc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Mt(t),t):(Mt(t),null);if((t.flags&128)!==0)throw Error(s(558))}return Ue(t),null;case 13:if(i=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(r=Vl(t),i!==null&&i.dehydrated!==null){if(e===null){if(!r)throw Error(s(318));if(r=t.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(s(317));r[tt]=t}else fl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ue(t),r=!1}else r=Oc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=r),r=!0;if(!r)return t.flags&256?(Mt(t),t):(Mt(t),null)}return Mt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=i!==null,e=e!==null&&e.memoizedState!==null,n&&(i=t.child,r=null,i.alternate!==null&&i.alternate.memoizedState!==null&&i.alternate.memoizedState.cachePool!==null&&(r=i.alternate.memoizedState.cachePool.pool),f=null,i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(f=i.memoizedState.cachePool.pool),f!==r&&(i.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Ns(t,t.updateQueue),Ue(t),null);case 4:return Ye(),e===null&&Br(t.stateNode.containerInfo),Ue(t),null;case 10:return fn(t.type),Ue(t),null;case 19:if(Y($e),i=t.memoizedState,i===null)return Ue(t),null;if(r=(t.flags&128)!==0,f=i.rendering,f===null)if(r)ua(i,!1);else{if(He!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(f=ms(e),f!==null){for(t.flags|=128,ua(i,!1),e=f.updateQueue,t.updateQueue=e,Ns(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Jo(n,e),n=n.sibling;return J($e,$e.current&1|2),be&&cn(t,i.treeForkCount),t.child}e=e.sibling}i.tail!==null&&Et()>Ds&&(t.flags|=128,r=!0,ua(i,!1),t.lanes=4194304)}else{if(!r)if(e=ms(f),e!==null){if(t.flags|=128,r=!0,e=e.updateQueue,t.updateQueue=e,Ns(t,e),ua(i,!0),i.tail===null&&i.tailMode==="hidden"&&!f.alternate&&!be)return Ue(t),null}else 2*Et()-i.renderingStartTime>Ds&&n!==536870912&&(t.flags|=128,r=!0,ua(i,!1),t.lanes=4194304);i.isBackwards?(f.sibling=t.child,t.child=f):(e=i.last,e!==null?e.sibling=f:t.child=f,i.last=f)}return i.tail!==null?(e=i.tail,i.rendering=e,i.tail=e.sibling,i.renderingStartTime=Et(),e.sibling=null,n=$e.current,J($e,r?n&1|2:n&1),be&&cn(t,i.treeForkCount),e):(Ue(t),null);case 22:case 23:return Mt(t),kc(),i=t.memoizedState!==null,e!==null?e.memoizedState!==null!==i&&(t.flags|=8192):i&&(t.flags|=8192),i?(n&536870912)!==0&&(t.flags&128)===0&&(Ue(t),t.subtreeFlags&6&&(t.flags|=8192)):Ue(t),n=t.updateQueue,n!==null&&Ns(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),i=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(i=t.memoizedState.cachePool.pool),i!==n&&(t.flags|=2048),e!==null&&Y(dl),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),fn(Qe),Ue(t),null;case 25:return null;case 30:return null}throw Error(s(156,t.tag))}function S0(e,t){switch(wc(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return fn(Qe),Ye(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ka(t),null;case 31:if(t.memoizedState!==null){if(Mt(t),t.alternate===null)throw Error(s(340));fl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Mt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(s(340));fl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Y($e),null;case 4:return Ye(),null;case 10:return fn(t.type),null;case 22:case 23:return Mt(t),kc(),e!==null&&Y(dl),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return fn(Qe),null;case 25:return null;default:return null}}function Ed(e,t){switch(wc(t),t.tag){case 3:fn(Qe),Ye();break;case 26:case 27:case 5:ka(t);break;case 4:Ye();break;case 31:t.memoizedState!==null&&Mt(t);break;case 13:Mt(t);break;case 19:Y($e);break;case 10:fn(t.type);break;case 22:case 23:Mt(t),kc(),e!==null&&Y(dl);break;case 24:fn(Qe)}}function ca(e,t){try{var n=t.updateQueue,i=n!==null?n.lastEffect:null;if(i!==null){var r=i.next;n=r;do{if((n.tag&e)===e){i=void 0;var f=n.create,d=n.inst;i=f(),d.destroy=i}n=n.next}while(n!==r)}}catch(y){_e(t,t.return,y)}}function kn(e,t,n){try{var i=t.updateQueue,r=i!==null?i.lastEffect:null;if(r!==null){var f=r.next;i=f;do{if((i.tag&e)===e){var d=i.inst,y=d.destroy;if(y!==void 0){d.destroy=void 0,r=t;var T=n,z=y;try{z()}catch(B){_e(r,T,B)}}}i=i.next}while(i!==f)}}catch(B){_e(t,t.return,B)}}function wd(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{dh(t,n)}catch(i){_e(e,e.return,i)}}}function Ad(e,t,n){n.props=vl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(i){_e(e,t,i)}}function ra(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var i=e.stateNode;break;case 30:i=e.stateNode;break;default:i=e.stateNode}typeof n=="function"?e.refCleanup=n(i):n.current=i}}catch(r){_e(e,t,r)}}function Pt(e,t){var n=e.ref,i=e.refCleanup;if(n!==null)if(typeof i=="function")try{i()}catch(r){_e(e,t,r)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(r){_e(e,t,r)}else n.current=null}function Od(e){var t=e.type,n=e.memoizedProps,i=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&i.focus();break e;case"img":n.src?i.src=n.src:n.srcSet&&(i.srcset=n.srcSet)}}catch(r){_e(e,e.return,r)}}function pr(e,t,n){try{var i=e.stateNode;$0(i,e.type,n,t),i[ht]=t}catch(r){_e(e,e.return,r)}}function _d(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Vn(e.type)||e.tag===4}function yr(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||_d(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Vn(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function vr(e,t,n){var i=e.tag;if(i===5||i===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=an));else if(i!==4&&(i===27&&Vn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(vr(e,t,n),e=e.sibling;e!==null;)vr(e,t,n),e=e.sibling}function Ms(e,t,n){var i=e.tag;if(i===5||i===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(i!==4&&(i===27&&Vn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Ms(e,t,n),e=e.sibling;e!==null;)Ms(e,t,n),e=e.sibling}function Nd(e){var t=e.stateNode,n=e.memoizedProps;try{for(var i=e.type,r=t.attributes;r.length;)t.removeAttributeNode(r[0]);at(t,i,n),t[tt]=e,t[ht]=n}catch(f){_e(e,e.return,f)}}var gn=!1,Je=!1,br=!1,Md=typeof WeakSet=="function"?WeakSet:Set,et=null;function T0(e,t){if(e=e.containerInfo,Hr=Js,e=Ho(e),hc(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var i=n.getSelection&&n.getSelection();if(i&&i.rangeCount!==0){n=i.anchorNode;var r=i.anchorOffset,f=i.focusNode;i=i.focusOffset;try{n.nodeType,f.nodeType}catch{n=null;break e}var d=0,y=-1,T=-1,z=0,B=0,H=e,L=null;t:for(;;){for(var j;H!==n||r!==0&&H.nodeType!==3||(y=d+r),H!==f||i!==0&&H.nodeType!==3||(T=d+i),H.nodeType===3&&(d+=H.nodeValue.length),(j=H.firstChild)!==null;)L=H,H=j;for(;;){if(H===e)break t;if(L===n&&++z===r&&(y=d),L===f&&++B===i&&(T=d),(j=H.nextSibling)!==null)break;H=L,L=H.parentNode}H=j}n=y===-1||T===-1?null:{start:y,end:T}}else n=null}n=n||{start:0,end:0}}else n=null;for(Yr={focusedElem:e,selectionRange:n},Js=!1,et=t;et!==null;)if(t=et,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,et=e;else for(;et!==null;){switch(t=et,f=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n<e.length;n++)r=e[n],r.ref.impl=r.nextImpl;break;case 11:case 15:break;case 1:if((e&1024)!==0&&f!==null){e=void 0,n=t,r=f.memoizedProps,f=f.memoizedState,i=n.stateNode;try{var I=vl(n.type,r);e=i.getSnapshotBeforeUpdate(I,f),i.__reactInternalSnapshotBeforeUpdate=e}catch(ie){_e(n,n.return,ie)}}break;case 3:if((e&1024)!==0){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)Gr(e);else if(n===1)switch(e.nodeName){case"HEAD":case"HTML":case"BODY":Gr(e);break;default:e.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((e&1024)!==0)throw Error(s(163))}if(e=t.sibling,e!==null){e.return=t.return,et=e;break}et=t.return}}function Cd(e,t,n){var i=n.flags;switch(n.tag){case 0:case 11:case 15:yn(e,n),i&4&&ca(5,n);break;case 1:if(yn(e,n),i&4)if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(d){_e(n,n.return,d)}else{var r=vl(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(r,t,e.__reactInternalSnapshotBeforeUpdate)}catch(d){_e(n,n.return,d)}}i&64&&wd(n),i&512&&ra(n,n.return);break;case 3:if(yn(e,n),i&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{dh(e,t)}catch(d){_e(n,n.return,d)}}break;case 27:t===null&&i&4&&Nd(n);case 26:case 5:yn(e,n),t===null&&i&4&&Od(n),i&512&&ra(n,n.return);break;case 12:yn(e,n);break;case 31:yn(e,n),i&4&&Dd(e,n);break;case 13:yn(e,n),i&4&&Ld(e,n),i&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=z0.bind(null,n),W0(e,n))));break;case 22:if(i=n.memoizedState!==null||gn,!i){t=t!==null&&t.memoizedState!==null||Je,r=gn;var f=Je;gn=i,(Je=t)&&!f?vn(e,n,(n.subtreeFlags&8772)!==0):yn(e,n),gn=r,Je=f}break;case 30:break;default:yn(e,n)}}function zd(e){var t=e.alternate;t!==null&&(e.alternate=null,zd(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&Ju(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var Re=null,mt=!1;function pn(e,t,n){for(n=n.child;n!==null;)xd(e,t,n),n=n.sibling}function xd(e,t,n){if(wt&&typeof wt.onCommitFiberUnmount=="function")try{wt.onCommitFiberUnmount(Li,n)}catch{}switch(n.tag){case 26:Je||Pt(n,t),pn(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:Je||Pt(n,t);var i=Re,r=mt;Vn(n.type)&&(Re=n.stateNode,mt=!1),pn(e,t,n),va(n.stateNode),Re=i,mt=r;break;case 5:Je||Pt(n,t);case 6:if(i=Re,r=mt,Re=null,pn(e,t,n),Re=i,mt=r,Re!==null)if(mt)try{(Re.nodeType===9?Re.body:Re.nodeName==="HTML"?Re.ownerDocument.body:Re).removeChild(n.stateNode)}catch(f){_e(n,t,f)}else try{Re.removeChild(n.stateNode)}catch(f){_e(n,t,f)}break;case 18:Re!==null&&(mt?(e=Re,wm(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,n.stateNode),hi(e)):wm(Re,n.stateNode));break;case 4:i=Re,r=mt,Re=n.stateNode.containerInfo,mt=!0,pn(e,t,n),Re=i,mt=r;break;case 0:case 11:case 14:case 15:kn(2,n,t),Je||kn(4,n,t),pn(e,t,n);break;case 1:Je||(Pt(n,t),i=n.stateNode,typeof i.componentWillUnmount=="function"&&Ad(n,t,i)),pn(e,t,n);break;case 21:pn(e,t,n);break;case 22:Je=(i=Je)||n.memoizedState!==null,pn(e,t,n),Je=i;break;default:pn(e,t,n)}}function Dd(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{hi(e)}catch(n){_e(t,t.return,n)}}}function Ld(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{hi(e)}catch(n){_e(t,t.return,n)}}function E0(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new Md),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new Md),t;default:throw Error(s(435,e.tag))}}function Cs(e,t){var n=E0(e);t.forEach(function(i){if(!n.has(i)){n.add(i);var r=x0.bind(null,e,i);i.then(r,r)}})}function gt(e,t){var n=t.deletions;if(n!==null)for(var i=0;i<n.length;i++){var r=n[i],f=e,d=t,y=d;e:for(;y!==null;){switch(y.tag){case 27:if(Vn(y.type)){Re=y.stateNode,mt=!1;break e}break;case 5:Re=y.stateNode,mt=!1;break e;case 3:case 4:Re=y.stateNode.containerInfo,mt=!0;break e}y=y.return}if(Re===null)throw Error(s(160));xd(f,d,r),Re=null,mt=!1,f=r.alternate,f!==null&&(f.return=null),r.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Ud(t,e),t=t.sibling}var Xt=null;function Ud(e,t){var n=e.alternate,i=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:gt(t,e),pt(e),i&4&&(kn(3,e,e.return),ca(3,e),kn(5,e,e.return));break;case 1:gt(t,e),pt(e),i&512&&(Je||n===null||Pt(n,n.return)),i&64&&gn&&(e=e.updateQueue,e!==null&&(i=e.callbacks,i!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?i:n.concat(i))));break;case 26:var r=Xt;if(gt(t,e),pt(e),i&512&&(Je||n===null||Pt(n,n.return)),i&4){var f=n!==null?n.memoizedState:null;if(i=e.memoizedState,n===null)if(i===null)if(e.stateNode===null){e:{i=e.type,n=e.memoizedProps,r=r.ownerDocument||r;t:switch(i){case"title":f=r.getElementsByTagName("title")[0],(!f||f[ji]||f[tt]||f.namespaceURI==="http://www.w3.org/2000/svg"||f.hasAttribute("itemprop"))&&(f=r.createElement(i),r.head.insertBefore(f,r.querySelector("head > title"))),at(f,i,n),f[tt]=e,Pe(f),i=f;break e;case"link":var d=Um("link","href",r).get(i+(n.href||""));if(d){for(var y=0;y<d.length;y++)if(f=d[y],f.getAttribute("href")===(n.href==null||n.href===""?null:n.href)&&f.getAttribute("rel")===(n.rel==null?null:n.rel)&&f.getAttribute("title")===(n.title==null?null:n.title)&&f.getAttribute("crossorigin")===(n.crossOrigin==null?null:n.crossOrigin)){d.splice(y,1);break t}}f=r.createElement(i),at(f,i,n),r.head.appendChild(f);break;case"meta":if(d=Um("meta","content",r).get(i+(n.content||""))){for(y=0;y<d.length;y++)if(f=d[y],f.getAttribute("content")===(n.content==null?null:""+n.content)&&f.getAttribute("name")===(n.name==null?null:n.name)&&f.getAttribute("property")===(n.property==null?null:n.property)&&f.getAttribute("http-equiv")===(n.httpEquiv==null?null:n.httpEquiv)&&f.getAttribute("charset")===(n.charSet==null?null:n.charSet)){d.splice(y,1);break t}}f=r.createElement(i),at(f,i,n),r.head.appendChild(f);break;default:throw Error(s(468,i))}f[tt]=e,Pe(f),i=f}e.stateNode=i}else Rm(r,e.type,e.stateNode);else e.stateNode=Lm(r,i,e.memoizedProps);else f!==i?(f===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):f.count--,i===null?Rm(r,e.type,e.stateNode):Lm(r,i,e.memoizedProps)):i===null&&e.stateNode!==null&&pr(e,e.memoizedProps,n.memoizedProps)}break;case 27:gt(t,e),pt(e),i&512&&(Je||n===null||Pt(n,n.return)),n!==null&&i&4&&pr(e,e.memoizedProps,n.memoizedProps);break;case 5:if(gt(t,e),pt(e),i&512&&(Je||n===null||Pt(n,n.return)),e.flags&32){r=e.stateNode;try{Rl(r,"")}catch(I){_e(e,e.return,I)}}i&4&&e.stateNode!=null&&(r=e.memoizedProps,pr(e,r,n!==null?n.memoizedProps:r)),i&1024&&(br=!0);break;case 6:if(gt(t,e),pt(e),i&4){if(e.stateNode===null)throw Error(s(162));i=e.memoizedProps,n=e.stateNode;try{n.nodeValue=i}catch(I){_e(e,e.return,I)}}break;case 3:if(Vs=null,r=Xt,Xt=Ks(t.containerInfo),gt(t,e),Xt=r,pt(e),i&4&&n!==null&&n.memoizedState.isDehydrated)try{hi(t.containerInfo)}catch(I){_e(e,e.return,I)}br&&(br=!1,Rd(e));break;case 4:i=Xt,Xt=Ks(e.stateNode.containerInfo),gt(t,e),pt(e),Xt=i;break;case 12:gt(t,e),pt(e);break;case 31:gt(t,e),pt(e),i&4&&(i=e.updateQueue,i!==null&&(e.updateQueue=null,Cs(e,i)));break;case 13:gt(t,e),pt(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(xs=Et()),i&4&&(i=e.updateQueue,i!==null&&(e.updateQueue=null,Cs(e,i)));break;case 22:r=e.memoizedState!==null;var T=n!==null&&n.memoizedState!==null,z=gn,B=Je;if(gn=z||r,Je=B||T,gt(t,e),Je=B,gn=z,pt(e),i&8192)e:for(t=e.stateNode,t._visibility=r?t._visibility&-2:t._visibility|1,r&&(n===null||T||gn||Je||bl(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){T=n=t;try{if(f=T.stateNode,r)d=f.style,typeof d.setProperty=="function"?d.setProperty("display","none","important"):d.display="none";else{y=T.stateNode;var H=T.memoizedProps.style,L=H!=null&&H.hasOwnProperty("display")?H.display:null;y.style.display=L==null||typeof L=="boolean"?"":(""+L).trim()}}catch(I){_e(T,T.return,I)}}}else if(t.tag===6){if(n===null){T=t;try{T.stateNode.nodeValue=r?"":T.memoizedProps}catch(I){_e(T,T.return,I)}}}else if(t.tag===18){if(n===null){T=t;try{var j=T.stateNode;r?Am(j,!0):Am(T.stateNode,!1)}catch(I){_e(T,T.return,I)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break e;for(;t.sibling===null;){if(t.return===null||t.return===e)break e;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}i&4&&(i=e.updateQueue,i!==null&&(n=i.retryQueue,n!==null&&(i.retryQueue=null,Cs(e,n))));break;case 19:gt(t,e),pt(e),i&4&&(i=e.updateQueue,i!==null&&(e.updateQueue=null,Cs(e,i)));break;case 30:break;case 21:break;default:gt(t,e),pt(e)}}function pt(e){var t=e.flags;if(t&2){try{for(var n,i=e.return;i!==null;){if(_d(i)){n=i;break}i=i.return}if(n==null)throw Error(s(160));switch(n.tag){case 27:var r=n.stateNode,f=yr(e);Ms(e,f,r);break;case 5:var d=n.stateNode;n.flags&32&&(Rl(d,""),n.flags&=-33);var y=yr(e);Ms(e,y,d);break;case 3:case 4:var T=n.stateNode.containerInfo,z=yr(e);vr(e,z,T);break;default:throw Error(s(161))}}catch(B){_e(e,e.return,B)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Rd(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;Rd(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function yn(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)Cd(e,t.alternate,t),t=t.sibling}function bl(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:kn(4,t,t.return),bl(t);break;case 1:Pt(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount=="function"&&Ad(t,t.return,n),bl(t);break;case 27:va(t.stateNode);case 26:case 5:Pt(t,t.return),bl(t);break;case 22:t.memoizedState===null&&bl(t);break;case 30:bl(t);break;default:bl(t)}e=e.sibling}}function vn(e,t,n){for(n=n&&(t.subtreeFlags&8772)!==0,t=t.child;t!==null;){var i=t.alternate,r=e,f=t,d=f.flags;switch(f.tag){case 0:case 11:case 15:vn(r,f,n),ca(4,f);break;case 1:if(vn(r,f,n),i=f,r=i.stateNode,typeof r.componentDidMount=="function")try{r.componentDidMount()}catch(z){_e(i,i.return,z)}if(i=f,r=i.updateQueue,r!==null){var y=i.stateNode;try{var T=r.shared.hiddenCallbacks;if(T!==null)for(r.shared.hiddenCallbacks=null,r=0;r<T.length;r++)hh(T[r],y)}catch(z){_e(i,i.return,z)}}n&&d&64&&wd(f),ra(f,f.return);break;case 27:Nd(f);case 26:case 5:vn(r,f,n),n&&i===null&&d&4&&Od(f),ra(f,f.return);break;case 12:vn(r,f,n);break;case 31:vn(r,f,n),n&&d&4&&Dd(r,f);break;case 13:vn(r,f,n),n&&d&4&&Ld(r,f);break;case 22:f.memoizedState===null&&vn(r,f,n),ra(f,f.return);break;case 30:break;default:vn(r,f,n)}t=t.sibling}}function Sr(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&Ji(n))}function Tr(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Ji(e))}function Zt(e,t,n,i){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)jd(e,t,n,i),t=t.sibling}function jd(e,t,n,i){var r=t.flags;switch(t.tag){case 0:case 11:case 15:Zt(e,t,n,i),r&2048&&ca(9,t);break;case 1:Zt(e,t,n,i);break;case 3:Zt(e,t,n,i),r&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Ji(e)));break;case 12:if(r&2048){Zt(e,t,n,i),e=t.stateNode;try{var f=t.memoizedProps,d=f.id,y=f.onPostCommit;typeof y=="function"&&y(d,t.alternate===null?"mount":"update",e.passiveEffectDuration,-0)}catch(T){_e(t,t.return,T)}}else Zt(e,t,n,i);break;case 31:Zt(e,t,n,i);break;case 13:Zt(e,t,n,i);break;case 23:break;case 22:f=t.stateNode,d=t.alternate,t.memoizedState!==null?f._visibility&2?Zt(e,t,n,i):fa(e,t):f._visibility&2?Zt(e,t,n,i):(f._visibility|=2,ti(e,t,n,i,(t.subtreeFlags&10256)!==0||!1)),r&2048&&Sr(d,t);break;case 24:Zt(e,t,n,i),r&2048&&Tr(t.alternate,t);break;default:Zt(e,t,n,i)}}function ti(e,t,n,i,r){for(r=r&&((t.subtreeFlags&10256)!==0||!1),t=t.child;t!==null;){var f=e,d=t,y=n,T=i,z=d.flags;switch(d.tag){case 0:case 11:case 15:ti(f,d,y,T,r),ca(8,d);break;case 23:break;case 22:var B=d.stateNode;d.memoizedState!==null?B._visibility&2?ti(f,d,y,T,r):fa(f,d):(B._visibility|=2,ti(f,d,y,T,r)),r&&z&2048&&Sr(d.alternate,d);break;case 24:ti(f,d,y,T,r),r&&z&2048&&Tr(d.alternate,d);break;default:ti(f,d,y,T,r)}t=t.sibling}}function fa(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,i=t,r=i.flags;switch(i.tag){case 22:fa(n,i),r&2048&&Sr(i.alternate,i);break;case 24:fa(n,i),r&2048&&Tr(i.alternate,i);break;default:fa(n,i)}t=t.sibling}}var oa=8192;function ni(e,t,n){if(e.subtreeFlags&oa)for(e=e.child;e!==null;)Bd(e,t,n),e=e.sibling}function Bd(e,t,n){switch(e.tag){case 26:ni(e,t,n),e.flags&oa&&e.memoizedState!==null&&c1(n,Xt,e.memoizedState,e.memoizedProps);break;case 5:ni(e,t,n);break;case 3:case 4:var i=Xt;Xt=Ks(e.stateNode.containerInfo),ni(e,t,n),Xt=i;break;case 22:e.memoizedState===null&&(i=e.alternate,i!==null&&i.memoizedState!==null?(i=oa,oa=16777216,ni(e,t,n),oa=i):ni(e,t,n));break;default:ni(e,t,n)}}function kd(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function ha(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var n=0;n<t.length;n++){var i=t[n];et=i,Hd(i,e)}kd(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)qd(e),e=e.sibling}function qd(e){switch(e.tag){case 0:case 11:case 15:ha(e),e.flags&2048&&kn(9,e,e.return);break;case 3:ha(e);break;case 12:ha(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,zs(e)):ha(e);break;default:ha(e)}}function zs(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var n=0;n<t.length;n++){var i=t[n];et=i,Hd(i,e)}kd(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:kn(8,t,t.return),zs(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,zs(t));break;default:zs(t)}e=e.sibling}}function Hd(e,t){for(;et!==null;){var n=et;switch(n.tag){case 0:case 11:case 15:kn(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var i=n.memoizedState.cachePool.pool;i!=null&&i.refCount++}break;case 24:Ji(n.memoizedState.cache)}if(i=n.child,i!==null)i.return=n,et=i;else e:for(n=e;et!==null;){i=et;var r=i.sibling,f=i.return;if(zd(i),i===n){et=null;break e}if(r!==null){r.return=f,et=r;break e}et=f}}}var w0={getCacheForType:function(e){var t=lt(Qe),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return lt(Qe).controller.signal}},A0=typeof WeakMap=="function"?WeakMap:Map,Ee=0,xe=null,ge=null,ye=0,Oe=0,Ct=null,qn=!1,li=!1,Er=!1,bn=0,He=0,Hn=0,Sl=0,wr=0,zt=0,ii=0,da=null,yt=null,Ar=!1,xs=0,Yd=0,Ds=1/0,Ls=null,Yn=null,Ie=0,$n=null,ai=null,Sn=0,Or=0,_r=null,$d=null,ma=0,Nr=null;function xt(){return(Ee&2)!==0&&ye!==0?ye&-ye:D.T!==null?Lr():lo()}function Kd(){if(zt===0)if((ye&536870912)===0||be){var e=Ya;Ya<<=1,(Ya&3932160)===0&&(Ya=262144),zt=e}else zt=536870912;return e=Nt.current,e!==null&&(e.flags|=32),zt}function vt(e,t,n){(e===xe&&(Oe===2||Oe===9)||e.cancelPendingCommit!==null)&&(si(e,0),Kn(e,ye,zt,!1)),Ri(e,n),((Ee&2)===0||e!==xe)&&(e===xe&&((Ee&2)===0&&(Sl|=n),He===4&&Kn(e,ye,zt,!1)),en(e))}function Gd(e,t,n){if((Ee&6)!==0)throw Error(s(327));var i=!n&&(t&127)===0&&(t&e.expiredLanes)===0||Ui(e,t),r=i?N0(e,t):Cr(e,t,!0),f=i;do{if(r===0){li&&!i&&Kn(e,t,0,!1);break}else{if(n=e.current.alternate,f&&!O0(n)){r=Cr(e,t,!1),f=!1;continue}if(r===2){if(f=t,e.errorRecoveryDisabledLanes&f)var d=0;else d=e.pendingLanes&-536870913,d=d!==0?d:d&536870912?536870912:0;if(d!==0){t=d;e:{var y=e;r=da;var T=y.current.memoizedState.isDehydrated;if(T&&(si(y,d).flags|=256),d=Cr(y,d,!1),d!==2){if(Er&&!T){y.errorRecoveryDisabledLanes|=f,Sl|=f,r=4;break e}f=yt,yt=r,f!==null&&(yt===null?yt=f:yt.push.apply(yt,f))}r=d}if(f=!1,r!==2)continue}}if(r===1){si(e,0),Kn(e,t,0,!0);break}e:{switch(i=e,f=r,f){case 0:case 1:throw Error(s(345));case 4:if((t&4194048)!==t)break;case 6:Kn(i,t,zt,!qn);break e;case 2:yt=null;break;case 3:case 5:break;default:throw Error(s(329))}if((t&62914560)===t&&(r=xs+300-Et(),10<r)){if(Kn(i,t,zt,!qn),Ka(i,0,!0)!==0)break e;Sn=t,i.timeoutHandle=Tm(Vd.bind(null,i,n,yt,Ls,Ar,t,zt,Sl,ii,qn,f,"Throttled",-0,0),r);break e}Vd(i,n,yt,Ls,Ar,t,zt,Sl,ii,qn,f,null,-0,0)}}break}while(!0);en(e)}function Vd(e,t,n,i,r,f,d,y,T,z,B,H,L,j){if(e.timeoutHandle=-1,H=t.subtreeFlags,H&8192||(H&16785408)===16785408){H={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:an},Bd(t,f,H);var I=(f&62914560)===f?xs-Et():(f&4194048)===f?Yd-Et():0;if(I=r1(H,I),I!==null){Sn=f,e.cancelPendingCommit=I(Pd.bind(null,e,t,f,n,i,r,d,y,T,B,H,null,L,j)),Kn(e,f,d,!z);return}}Pd(e,t,f,n,i,r,d,y,T)}function O0(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var i=0;i<n.length;i++){var r=n[i],f=r.getSnapshot;r=r.value;try{if(!Ot(f(),r))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function Kn(e,t,n,i){t&=~wr,t&=~Sl,e.suspendedLanes|=t,e.pingedLanes&=~t,i&&(e.warmLanes|=t),i=e.expirationTimes;for(var r=t;0<r;){var f=31-At(r),d=1<<f;i[f]=-1,r&=~d}n!==0&&eo(e,n,t)}function Us(){return(Ee&6)===0?(ga(0),!1):!0}function Mr(){if(ge!==null){if(Oe===0)var e=ge.return;else e=ge,rn=ol=null,Gc(e),Wl=null,Ii=0,e=ge;for(;e!==null;)Ed(e.alternate,e),e=e.return;ge=null}}function si(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,V0(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),Sn=0,Mr(),xe=e,ge=n=un(e.current,null),ye=t,Oe=0,Ct=null,qn=!1,li=Ui(e,t),Er=!1,ii=zt=wr=Sl=Hn=He=0,yt=da=null,Ar=!1,(t&8)!==0&&(t|=t&32);var i=e.entangledLanes;if(i!==0)for(e=e.entanglements,i&=t;0<i;){var r=31-At(i),f=1<<r;t|=e[r],i&=~f}return bn=t,ts(),n}function Qd(e,t){fe=null,D.H=aa,t===Jl||t===rs?(t=ch(),Oe=3):t===Dc?(t=ch(),Oe=4):Oe=t===sr?8:t!==null&&typeof t=="object"&&typeof t.then=="function"?6:1,Ct=t,ge===null&&(He=1,ws(e,Bt(t,e.current)))}function Xd(){var e=Nt.current;return e===null?!0:(ye&4194048)===ye?Yt===null:(ye&62914560)===ye||(ye&536870912)!==0?e===Yt:!1}function Zd(){var e=D.H;return D.H=aa,e===null?aa:e}function Jd(){var e=D.A;return D.A=w0,e}function Rs(){He=4,qn||(ye&4194048)!==ye&&Nt.current!==null||(li=!0),(Hn&134217727)===0&&(Sl&134217727)===0||xe===null||Kn(xe,ye,zt,!1)}function Cr(e,t,n){var i=Ee;Ee|=2;var r=Zd(),f=Jd();(xe!==e||ye!==t)&&(Ls=null,si(e,t)),t=!1;var d=He;e:do try{if(Oe!==0&&ge!==null){var y=ge,T=Ct;switch(Oe){case 8:Mr(),d=6;break e;case 3:case 2:case 9:case 6:Nt.current===null&&(t=!0);var z=Oe;if(Oe=0,Ct=null,ui(e,y,T,z),n&&li){d=0;break e}break;default:z=Oe,Oe=0,Ct=null,ui(e,y,T,z)}}_0(),d=He;break}catch(B){Qd(e,B)}while(!0);return t&&e.shellSuspendCounter++,rn=ol=null,Ee=i,D.H=r,D.A=f,ge===null&&(xe=null,ye=0,ts()),d}function _0(){for(;ge!==null;)Wd(ge)}function N0(e,t){var n=Ee;Ee|=2;var i=Zd(),r=Jd();xe!==e||ye!==t?(Ls=null,Ds=Et()+500,si(e,t)):li=Ui(e,t);e:do try{if(Oe!==0&&ge!==null){t=ge;var f=Ct;t:switch(Oe){case 1:Oe=0,Ct=null,ui(e,t,f,1);break;case 2:case 9:if(sh(f)){Oe=0,Ct=null,Id(t);break}t=function(){Oe!==2&&Oe!==9||xe!==e||(Oe=7),en(e)},f.then(t,t);break e;case 3:Oe=7;break e;case 4:Oe=5;break e;case 7:sh(f)?(Oe=0,Ct=null,Id(t)):(Oe=0,Ct=null,ui(e,t,f,7));break;case 5:var d=null;switch(ge.tag){case 26:d=ge.memoizedState;case 5:case 27:var y=ge;if(d?jm(d):y.stateNode.complete){Oe=0,Ct=null;var T=y.sibling;if(T!==null)ge=T;else{var z=y.return;z!==null?(ge=z,js(z)):ge=null}break t}}Oe=0,Ct=null,ui(e,t,f,5);break;case 6:Oe=0,Ct=null,ui(e,t,f,6);break;case 8:Mr(),He=6;break e;default:throw Error(s(462))}}M0();break}catch(B){Qd(e,B)}while(!0);return rn=ol=null,D.H=i,D.A=r,Ee=n,ge!==null?0:(xe=null,ye=0,ts(),He)}function M0(){for(;ge!==null&&!Ip();)Wd(ge)}function Wd(e){var t=Sd(e.alternate,e,bn);e.memoizedProps=e.pendingProps,t===null?js(e):ge=t}function Id(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=md(n,t,t.pendingProps,t.type,void 0,ye);break;case 11:t=md(n,t,t.pendingProps,t.type.render,t.ref,ye);break;case 5:Gc(t);default:Ed(n,t),t=ge=Jo(t,bn),t=Sd(n,t,bn)}e.memoizedProps=e.pendingProps,t===null?js(e):ge=t}function ui(e,t,n,i){rn=ol=null,Gc(t),Wl=null,Ii=0;var r=t.return;try{if(p0(e,r,t,n,ye)){He=1,ws(e,Bt(n,e.current)),ge=null;return}}catch(f){if(r!==null)throw ge=r,f;He=1,ws(e,Bt(n,e.current)),ge=null;return}t.flags&32768?(be||i===1?e=!0:li||(ye&536870912)!==0?e=!1:(qn=e=!0,(i===2||i===9||i===3||i===6)&&(i=Nt.current,i!==null&&i.tag===13&&(i.flags|=16384))),Fd(t,e)):js(t)}function js(e){var t=e;do{if((t.flags&32768)!==0){Fd(t,qn);return}e=t.return;var n=b0(t.alternate,t,bn);if(n!==null){ge=n;return}if(t=t.sibling,t!==null){ge=t;return}ge=t=e}while(t!==null);He===0&&(He=5)}function Fd(e,t){do{var n=S0(e.alternate,e);if(n!==null){n.flags&=32767,ge=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){ge=e;return}ge=e=n}while(e!==null);He=6,ge=null}function Pd(e,t,n,i,r,f,d,y,T){e.cancelPendingCommit=null;do Bs();while(Ie!==0);if((Ee&6)!==0)throw Error(s(327));if(t!==null){if(t===e.current)throw Error(s(177));if(f=t.lanes|t.childLanes,f|=yc,uy(e,n,f,d,y,T),e===xe&&(ge=xe=null,ye=0),ai=t,$n=e,Sn=n,Or=f,_r=r,$d=i,(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?(e.callbackNode=null,e.callbackPriority=0,D0(qa,function(){return im(),null})):(e.callbackNode=null,e.callbackPriority=0),i=(t.flags&13878)!==0,(t.subtreeFlags&13878)!==0||i){i=D.T,D.T=null,r=G.p,G.p=2,d=Ee,Ee|=4;try{T0(e,t,n)}finally{Ee=d,G.p=r,D.T=i}}Ie=1,em(),tm(),nm()}}function em(){if(Ie===1){Ie=0;var e=$n,t=ai,n=(t.flags&13878)!==0;if((t.subtreeFlags&13878)!==0||n){n=D.T,D.T=null;var i=G.p;G.p=2;var r=Ee;Ee|=4;try{Ud(t,e);var f=Yr,d=Ho(e.containerInfo),y=f.focusedElem,T=f.selectionRange;if(d!==y&&y&&y.ownerDocument&&qo(y.ownerDocument.documentElement,y)){if(T!==null&&hc(y)){var z=T.start,B=T.end;if(B===void 0&&(B=z),"selectionStart"in y)y.selectionStart=z,y.selectionEnd=Math.min(B,y.value.length);else{var H=y.ownerDocument||document,L=H&&H.defaultView||window;if(L.getSelection){var j=L.getSelection(),I=y.textContent.length,ie=Math.min(T.start,I),ze=T.end===void 0?ie:Math.min(T.end,I);!j.extend&&ie>ze&&(d=ze,ze=ie,ie=d);var N=ko(y,ie),A=ko(y,ze);if(N&&A&&(j.rangeCount!==1||j.anchorNode!==N.node||j.anchorOffset!==N.offset||j.focusNode!==A.node||j.focusOffset!==A.offset)){var C=H.createRange();C.setStart(N.node,N.offset),j.removeAllRanges(),ie>ze?(j.addRange(C),j.extend(A.node,A.offset)):(C.setEnd(A.node,A.offset),j.addRange(C))}}}}for(H=[],j=y;j=j.parentNode;)j.nodeType===1&&H.push({element:j,left:j.scrollLeft,top:j.scrollTop});for(typeof y.focus=="function"&&y.focus(),y=0;y<H.length;y++){var q=H[y];q.element.scrollLeft=q.left,q.element.scrollTop=q.top}}Js=!!Hr,Yr=Hr=null}finally{Ee=r,G.p=i,D.T=n}}e.current=t,Ie=2}}function tm(){if(Ie===2){Ie=0;var e=$n,t=ai,n=(t.flags&8772)!==0;if((t.subtreeFlags&8772)!==0||n){n=D.T,D.T=null;var i=G.p;G.p=2;var r=Ee;Ee|=4;try{Cd(e,t.alternate,t)}finally{Ee=r,G.p=i,D.T=n}}Ie=3}}function nm(){if(Ie===4||Ie===3){Ie=0,Fp();var e=$n,t=ai,n=Sn,i=$d;(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?Ie=5:(Ie=0,ai=$n=null,lm(e,e.pendingLanes));var r=e.pendingLanes;if(r===0&&(Yn=null),Xu(n),t=t.stateNode,wt&&typeof wt.onCommitFiberRoot=="function")try{wt.onCommitFiberRoot(Li,t,void 0,(t.current.flags&128)===128)}catch{}if(i!==null){t=D.T,r=G.p,G.p=2,D.T=null;try{for(var f=e.onRecoverableError,d=0;d<i.length;d++){var y=i[d];f(y.value,{componentStack:y.stack})}}finally{D.T=t,G.p=r}}(Sn&3)!==0&&Bs(),en(e),r=e.pendingLanes,(n&261930)!==0&&(r&42)!==0?e===Nr?ma++:(ma=0,Nr=e):ma=0,ga(0)}}function lm(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,Ji(t)))}function Bs(){return em(),tm(),nm(),im()}function im(){if(Ie!==5)return!1;var e=$n,t=Or;Or=0;var n=Xu(Sn),i=D.T,r=G.p;try{G.p=32>n?32:n,D.T=null,n=_r,_r=null;var f=$n,d=Sn;if(Ie=0,ai=$n=null,Sn=0,(Ee&6)!==0)throw Error(s(331));var y=Ee;if(Ee|=4,qd(f.current),jd(f,f.current,d,n),Ee=y,ga(0,!1),wt&&typeof wt.onPostCommitFiberRoot=="function")try{wt.onPostCommitFiberRoot(Li,f)}catch{}return!0}finally{G.p=r,D.T=i,lm(e,t)}}function am(e,t,n){t=Bt(n,t),t=ar(e.stateNode,t,2),e=Rn(e,t,2),e!==null&&(Ri(e,2),en(e))}function _e(e,t,n){if(e.tag===3)am(e,e,n);else for(;t!==null;){if(t.tag===3){am(t,e,n);break}else if(t.tag===1){var i=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof i.componentDidCatch=="function"&&(Yn===null||!Yn.has(i))){e=Bt(n,e),n=sd(2),i=Rn(t,n,2),i!==null&&(ud(n,i,t,e),Ri(i,2),en(i));break}}t=t.return}}function zr(e,t,n){var i=e.pingCache;if(i===null){i=e.pingCache=new A0;var r=new Set;i.set(t,r)}else r=i.get(t),r===void 0&&(r=new Set,i.set(t,r));r.has(n)||(Er=!0,r.add(n),e=C0.bind(null,e,t,n),t.then(e,e))}function C0(e,t,n){var i=e.pingCache;i!==null&&i.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,xe===e&&(ye&n)===n&&(He===4||He===3&&(ye&62914560)===ye&&300>Et()-xs?(Ee&2)===0&&si(e,0):wr|=n,ii===ye&&(ii=0)),en(e)}function sm(e,t){t===0&&(t=Pf()),e=cl(e,t),e!==null&&(Ri(e,t),en(e))}function z0(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),sm(e,n)}function x0(e,t){var n=0;switch(e.tag){case 31:case 13:var i=e.stateNode,r=e.memoizedState;r!==null&&(n=r.retryLane);break;case 19:i=e.stateNode;break;case 22:i=e.stateNode._retryCache;break;default:throw Error(s(314))}i!==null&&i.delete(t),sm(e,n)}function D0(e,t){return Ku(e,t)}var ks=null,ci=null,xr=!1,qs=!1,Dr=!1,Gn=0;function en(e){e!==ci&&e.next===null&&(ci===null?ks=ci=e:ci=ci.next=e),qs=!0,xr||(xr=!0,U0())}function ga(e,t){if(!Dr&&qs){Dr=!0;do for(var n=!1,i=ks;i!==null;){if(e!==0){var r=i.pendingLanes;if(r===0)var f=0;else{var d=i.suspendedLanes,y=i.pingedLanes;f=(1<<31-At(42|e)+1)-1,f&=r&~(d&~y),f=f&201326741?f&201326741|1:f?f|2:0}f!==0&&(n=!0,fm(i,f))}else f=ye,f=Ka(i,i===xe?f:0,i.cancelPendingCommit!==null||i.timeoutHandle!==-1),(f&3)===0||Ui(i,f)||(n=!0,fm(i,f));i=i.next}while(n);Dr=!1}}function L0(){um()}function um(){qs=xr=!1;var e=0;Gn!==0&&G0()&&(e=Gn);for(var t=Et(),n=null,i=ks;i!==null;){var r=i.next,f=cm(i,t);f===0?(i.next=null,n===null?ks=r:n.next=r,r===null&&(ci=n)):(n=i,(e!==0||(f&3)!==0)&&(qs=!0)),i=r}Ie!==0&&Ie!==5||ga(e),Gn!==0&&(Gn=0)}function cm(e,t){for(var n=e.suspendedLanes,i=e.pingedLanes,r=e.expirationTimes,f=e.pendingLanes&-62914561;0<f;){var d=31-At(f),y=1<<d,T=r[d];T===-1?((y&n)===0||(y&i)!==0)&&(r[d]=sy(y,t)):T<=t&&(e.expiredLanes|=y),f&=~y}if(t=xe,n=ye,n=Ka(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),i=e.callbackNode,n===0||e===t&&(Oe===2||Oe===9)||e.cancelPendingCommit!==null)return i!==null&&i!==null&&Gu(i),e.callbackNode=null,e.callbackPriority=0;if((n&3)===0||Ui(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(i!==null&&Gu(i),Xu(n)){case 2:case 8:n=If;break;case 32:n=qa;break;case 268435456:n=Ff;break;default:n=qa}return i=rm.bind(null,e),n=Ku(n,i),e.callbackPriority=t,e.callbackNode=n,t}return i!==null&&i!==null&&Gu(i),e.callbackPriority=2,e.callbackNode=null,2}function rm(e,t){if(Ie!==0&&Ie!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Bs()&&e.callbackNode!==n)return null;var i=ye;return i=Ka(e,e===xe?i:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),i===0?null:(Gd(e,i,t),cm(e,Et()),e.callbackNode!=null&&e.callbackNode===n?rm.bind(null,e):null)}function fm(e,t){if(Bs())return null;Gd(e,t,!0)}function U0(){Q0(function(){(Ee&6)!==0?Ku(Wf,L0):um()})}function Lr(){if(Gn===0){var e=Xl;e===0&&(e=Ha,Ha<<=1,(Ha&261888)===0&&(Ha=256)),Gn=e}return Gn}function om(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:Xa(""+e)}function hm(e,t){var n=t.ownerDocument.createElement("input");return n.name=t.name,n.value=t.value,e.id&&n.setAttribute("form",e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function R0(e,t,n,i,r){if(t==="submit"&&n&&n.stateNode===r){var f=om((r[ht]||null).action),d=i.submitter;d&&(t=(t=d[ht]||null)?om(t.formAction):d.getAttribute("formAction"),t!==null&&(f=t,d=null));var y=new Ia("action","action",null,i,r);e.push({event:y,listeners:[{instance:null,listener:function(){if(i.defaultPrevented){if(Gn!==0){var T=d?hm(r,d):new FormData(r);Pc(n,{pending:!0,data:T,method:r.method,action:f},null,T)}}else typeof f=="function"&&(y.preventDefault(),T=d?hm(r,d):new FormData(r),Pc(n,{pending:!0,data:T,method:r.method,action:f},f,T))},currentTarget:r}]})}}for(var Ur=0;Ur<pc.length;Ur++){var Rr=pc[Ur],j0=Rr.toLowerCase(),B0=Rr[0].toUpperCase()+Rr.slice(1);Qt(j0,"on"+B0)}Qt(Ko,"onAnimationEnd"),Qt(Go,"onAnimationIteration"),Qt(Vo,"onAnimationStart"),Qt("dblclick","onDoubleClick"),Qt("focusin","onFocus"),Qt("focusout","onBlur"),Qt(Py,"onTransitionRun"),Qt(e0,"onTransitionStart"),Qt(t0,"onTransitionCancel"),Qt(Qo,"onTransitionEnd"),Ll("onMouseEnter",["mouseout","mouseover"]),Ll("onMouseLeave",["mouseout","mouseover"]),Ll("onPointerEnter",["pointerout","pointerover"]),Ll("onPointerLeave",["pointerout","pointerover"]),il("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),il("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),il("onBeforeInput",["compositionend","keypress","textInput","paste"]),il("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),il("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),il("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var pa="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),k0=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(pa));function dm(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var i=e[n],r=i.event;i=i.listeners;e:{var f=void 0;if(t)for(var d=i.length-1;0<=d;d--){var y=i[d],T=y.instance,z=y.currentTarget;if(y=y.listener,T!==f&&r.isPropagationStopped())break e;f=y,r.currentTarget=z;try{f(r)}catch(B){es(B)}r.currentTarget=null,f=T}else for(d=0;d<i.length;d++){if(y=i[d],T=y.instance,z=y.currentTarget,y=y.listener,T!==f&&r.isPropagationStopped())break e;f=y,r.currentTarget=z;try{f(r)}catch(B){es(B)}r.currentTarget=null,f=T}}}}function pe(e,t){var n=t[Zu];n===void 0&&(n=t[Zu]=new Set);var i=e+"__bubble";n.has(i)||(mm(t,e,2,!1),n.add(i))}function jr(e,t,n){var i=0;t&&(i|=4),mm(n,e,i,t)}var Hs="_reactListening"+Math.random().toString(36).slice(2);function Br(e){if(!e[Hs]){e[Hs]=!0,so.forEach(function(n){n!=="selectionchange"&&(k0.has(n)||jr(n,!1,e),jr(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Hs]||(t[Hs]=!0,jr("selectionchange",!1,t))}}function mm(e,t,n,i){switch(Km(t)){case 2:var r=h1;break;case 8:r=d1;break;default:r=Fr}n=r.bind(null,t,n,e),r=void 0,!lc||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(r=!0),i?r!==void 0?e.addEventListener(t,n,{capture:!0,passive:r}):e.addEventListener(t,n,!0):r!==void 0?e.addEventListener(t,n,{passive:r}):e.addEventListener(t,n,!1)}function kr(e,t,n,i,r){var f=i;if((t&1)===0&&(t&2)===0&&i!==null)e:for(;;){if(i===null)return;var d=i.tag;if(d===3||d===4){var y=i.stateNode.containerInfo;if(y===r)break;if(d===4)for(d=i.return;d!==null;){var T=d.tag;if((T===3||T===4)&&d.stateNode.containerInfo===r)return;d=d.return}for(;y!==null;){if(d=zl(y),d===null)return;if(T=d.tag,T===5||T===6||T===26||T===27){i=f=d;continue e}y=y.parentNode}}i=i.return}bo(function(){var z=f,B=tc(n),H=[];e:{var L=Xo.get(e);if(L!==void 0){var j=Ia,I=e;switch(e){case"keypress":if(Ja(n)===0)break e;case"keydown":case"keyup":j=xy;break;case"focusin":I="focus",j=uc;break;case"focusout":I="blur",j=uc;break;case"beforeblur":case"afterblur":j=uc;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":j=Eo;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":j=by;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":j=Uy;break;case Ko:case Go:case Vo:j=Ey;break;case Qo:j=jy;break;case"scroll":case"scrollend":j=yy;break;case"wheel":j=ky;break;case"copy":case"cut":case"paste":j=Ay;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":j=Ao;break;case"toggle":case"beforetoggle":j=Hy}var ie=(t&4)!==0,ze=!ie&&(e==="scroll"||e==="scrollend"),N=ie?L!==null?L+"Capture":null:L;ie=[];for(var A=z,C;A!==null;){var q=A;if(C=q.stateNode,q=q.tag,q!==5&&q!==26&&q!==27||C===null||N===null||(q=ki(A,N),q!=null&&ie.push(ya(A,q,C))),ze)break;A=A.return}0<ie.length&&(L=new j(L,I,null,n,B),H.push({event:L,listeners:ie}))}}if((t&7)===0){e:{if(L=e==="mouseover"||e==="pointerover",j=e==="mouseout"||e==="pointerout",L&&n!==ec&&(I=n.relatedTarget||n.fromElement)&&(zl(I)||I[Cl]))break e;if((j||L)&&(L=B.window===B?B:(L=B.ownerDocument)?L.defaultView||L.parentWindow:window,j?(I=n.relatedTarget||n.toElement,j=z,I=I?zl(I):null,I!==null&&(ze=o(I),ie=I.tag,I!==ze||ie!==5&&ie!==27&&ie!==6)&&(I=null)):(j=null,I=z),j!==I)){if(ie=Eo,q="onMouseLeave",N="onMouseEnter",A="mouse",(e==="pointerout"||e==="pointerover")&&(ie=Ao,q="onPointerLeave",N="onPointerEnter",A="pointer"),ze=j==null?L:Bi(j),C=I==null?L:Bi(I),L=new ie(q,A+"leave",j,n,B),L.target=ze,L.relatedTarget=C,q=null,zl(B)===z&&(ie=new ie(N,A+"enter",I,n,B),ie.target=C,ie.relatedTarget=ze,q=ie),ze=q,j&&I)t:{for(ie=q0,N=j,A=I,C=0,q=N;q;q=ie(q))C++;q=0;for(var le=A;le;le=ie(le))q++;for(;0<C-q;)N=ie(N),C--;for(;0<q-C;)A=ie(A),q--;for(;C--;){if(N===A||A!==null&&N===A.alternate){ie=N;break t}N=ie(N),A=ie(A)}ie=null}else ie=null;j!==null&&gm(H,L,j,ie,!1),I!==null&&ze!==null&&gm(H,ze,I,ie,!0)}}e:{if(L=z?Bi(z):window,j=L.nodeName&&L.nodeName.toLowerCase(),j==="select"||j==="input"&&L.type==="file")var Se=Do;else if(zo(L))if(Lo)Se=Wy;else{Se=Zy;var P=Xy}else j=L.nodeName,!j||j.toLowerCase()!=="input"||L.type!=="checkbox"&&L.type!=="radio"?z&&Pu(z.elementType)&&(Se=Do):Se=Jy;if(Se&&(Se=Se(e,z))){xo(H,Se,n,B);break e}P&&P(e,L,z),e==="focusout"&&z&&L.type==="number"&&z.memoizedProps.value!=null&&Fu(L,"number",L.value)}switch(P=z?Bi(z):window,e){case"focusin":(zo(P)||P.contentEditable==="true")&&(ql=P,dc=z,Qi=null);break;case"focusout":Qi=dc=ql=null;break;case"mousedown":mc=!0;break;case"contextmenu":case"mouseup":case"dragend":mc=!1,Yo(H,n,B);break;case"selectionchange":if(Fy)break;case"keydown":case"keyup":Yo(H,n,B)}var oe;if(rc)e:{switch(e){case"compositionstart":var ve="onCompositionStart";break e;case"compositionend":ve="onCompositionEnd";break e;case"compositionupdate":ve="onCompositionUpdate";break e}ve=void 0}else kl?Mo(e,n)&&(ve="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(ve="onCompositionStart");ve&&(Oo&&n.locale!=="ko"&&(kl||ve!=="onCompositionStart"?ve==="onCompositionEnd"&&kl&&(oe=So()):(Mn=B,ic="value"in Mn?Mn.value:Mn.textContent,kl=!0)),P=Ys(z,ve),0<P.length&&(ve=new wo(ve,e,null,n,B),H.push({event:ve,listeners:P}),oe?ve.data=oe:(oe=Co(n),oe!==null&&(ve.data=oe)))),(oe=$y?Ky(e,n):Gy(e,n))&&(ve=Ys(z,"onBeforeInput"),0<ve.length&&(P=new wo("onBeforeInput","beforeinput",null,n,B),H.push({event:P,listeners:ve}),P.data=oe)),R0(H,e,z,n,B)}dm(H,t)})}function ya(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Ys(e,t){for(var n=t+"Capture",i=[];e!==null;){var r=e,f=r.stateNode;if(r=r.tag,r!==5&&r!==26&&r!==27||f===null||(r=ki(e,n),r!=null&&i.unshift(ya(e,r,f)),r=ki(e,t),r!=null&&i.push(ya(e,r,f))),e.tag===3)return i;e=e.return}return[]}function q0(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function gm(e,t,n,i,r){for(var f=t._reactName,d=[];n!==null&&n!==i;){var y=n,T=y.alternate,z=y.stateNode;if(y=y.tag,T!==null&&T===i)break;y!==5&&y!==26&&y!==27||z===null||(T=z,r?(z=ki(n,f),z!=null&&d.unshift(ya(n,z,T))):r||(z=ki(n,f),z!=null&&d.push(ya(n,z,T)))),n=n.return}d.length!==0&&e.push({event:t,listeners:d})}var H0=/\r\n?/g,Y0=/\u0000|\uFFFD/g;function pm(e){return(typeof e=="string"?e:""+e).replace(H0,`
`).replace(Y0,"")}function ym(e,t){return t=pm(t),pm(e)===t}function Ce(e,t,n,i,r,f){switch(n){case"children":typeof i=="string"?t==="body"||t==="textarea"&&i===""||Rl(e,i):(typeof i=="number"||typeof i=="bigint")&&t!=="body"&&Rl(e,""+i);break;case"className":Va(e,"class",i);break;case"tabIndex":Va(e,"tabindex",i);break;case"dir":case"role":case"viewBox":case"width":case"height":Va(e,n,i);break;case"style":yo(e,i,f);break;case"data":if(t!=="object"){Va(e,"data",i);break}case"src":case"href":if(i===""&&(t!=="a"||n!=="href")){e.removeAttribute(n);break}if(i==null||typeof i=="function"||typeof i=="symbol"||typeof i=="boolean"){e.removeAttribute(n);break}i=Xa(""+i),e.setAttribute(n,i);break;case"action":case"formAction":if(typeof i=="function"){e.setAttribute(n,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof f=="function"&&(n==="formAction"?(t!=="input"&&Ce(e,t,"name",r.name,r,null),Ce(e,t,"formEncType",r.formEncType,r,null),Ce(e,t,"formMethod",r.formMethod,r,null),Ce(e,t,"formTarget",r.formTarget,r,null)):(Ce(e,t,"encType",r.encType,r,null),Ce(e,t,"method",r.method,r,null),Ce(e,t,"target",r.target,r,null)));if(i==null||typeof i=="symbol"||typeof i=="boolean"){e.removeAttribute(n);break}i=Xa(""+i),e.setAttribute(n,i);break;case"onClick":i!=null&&(e.onclick=an);break;case"onScroll":i!=null&&pe("scroll",e);break;case"onScrollEnd":i!=null&&pe("scrollend",e);break;case"dangerouslySetInnerHTML":if(i!=null){if(typeof i!="object"||!("__html"in i))throw Error(s(61));if(n=i.__html,n!=null){if(r.children!=null)throw Error(s(60));e.innerHTML=n}}break;case"multiple":e.multiple=i&&typeof i!="function"&&typeof i!="symbol";break;case"muted":e.muted=i&&typeof i!="function"&&typeof i!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(i==null||typeof i=="function"||typeof i=="boolean"||typeof i=="symbol"){e.removeAttribute("xlink:href");break}n=Xa(""+i),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",n);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":i!=null&&typeof i!="function"&&typeof i!="symbol"?e.setAttribute(n,""+i):e.removeAttribute(n);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":i&&typeof i!="function"&&typeof i!="symbol"?e.setAttribute(n,""):e.removeAttribute(n);break;case"capture":case"download":i===!0?e.setAttribute(n,""):i!==!1&&i!=null&&typeof i!="function"&&typeof i!="symbol"?e.setAttribute(n,i):e.removeAttribute(n);break;case"cols":case"rows":case"size":case"span":i!=null&&typeof i!="function"&&typeof i!="symbol"&&!isNaN(i)&&1<=i?e.setAttribute(n,i):e.removeAttribute(n);break;case"rowSpan":case"start":i==null||typeof i=="function"||typeof i=="symbol"||isNaN(i)?e.removeAttribute(n):e.setAttribute(n,i);break;case"popover":pe("beforetoggle",e),pe("toggle",e),Ga(e,"popover",i);break;case"xlinkActuate":ln(e,"http://www.w3.org/1999/xlink","xlink:actuate",i);break;case"xlinkArcrole":ln(e,"http://www.w3.org/1999/xlink","xlink:arcrole",i);break;case"xlinkRole":ln(e,"http://www.w3.org/1999/xlink","xlink:role",i);break;case"xlinkShow":ln(e,"http://www.w3.org/1999/xlink","xlink:show",i);break;case"xlinkTitle":ln(e,"http://www.w3.org/1999/xlink","xlink:title",i);break;case"xlinkType":ln(e,"http://www.w3.org/1999/xlink","xlink:type",i);break;case"xmlBase":ln(e,"http://www.w3.org/XML/1998/namespace","xml:base",i);break;case"xmlLang":ln(e,"http://www.w3.org/XML/1998/namespace","xml:lang",i);break;case"xmlSpace":ln(e,"http://www.w3.org/XML/1998/namespace","xml:space",i);break;case"is":Ga(e,"is",i);break;case"innerText":case"textContent":break;default:(!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!=="N")&&(n=gy.get(n)||n,Ga(e,n,i))}}function qr(e,t,n,i,r,f){switch(n){case"style":yo(e,i,f);break;case"dangerouslySetInnerHTML":if(i!=null){if(typeof i!="object"||!("__html"in i))throw Error(s(61));if(n=i.__html,n!=null){if(r.children!=null)throw Error(s(60));e.innerHTML=n}}break;case"children":typeof i=="string"?Rl(e,i):(typeof i=="number"||typeof i=="bigint")&&Rl(e,""+i);break;case"onScroll":i!=null&&pe("scroll",e);break;case"onScrollEnd":i!=null&&pe("scrollend",e);break;case"onClick":i!=null&&(e.onclick=an);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!uo.hasOwnProperty(n))e:{if(n[0]==="o"&&n[1]==="n"&&(r=n.endsWith("Capture"),t=n.slice(2,r?n.length-7:void 0),f=e[ht]||null,f=f!=null?f[n]:null,typeof f=="function"&&e.removeEventListener(t,f,r),typeof i=="function")){typeof f!="function"&&f!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,i,r);break e}n in e?e[n]=i:i===!0?e.setAttribute(n,""):Ga(e,n,i)}}}function at(e,t,n){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":pe("error",e),pe("load",e);var i=!1,r=!1,f;for(f in n)if(n.hasOwnProperty(f)){var d=n[f];if(d!=null)switch(f){case"src":i=!0;break;case"srcSet":r=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(s(137,t));default:Ce(e,t,f,d,n,null)}}r&&Ce(e,t,"srcSet",n.srcSet,n,null),i&&Ce(e,t,"src",n.src,n,null);return;case"input":pe("invalid",e);var y=f=d=r=null,T=null,z=null;for(i in n)if(n.hasOwnProperty(i)){var B=n[i];if(B!=null)switch(i){case"name":r=B;break;case"type":d=B;break;case"checked":T=B;break;case"defaultChecked":z=B;break;case"value":f=B;break;case"defaultValue":y=B;break;case"children":case"dangerouslySetInnerHTML":if(B!=null)throw Error(s(137,t));break;default:Ce(e,t,i,B,n,null)}}ho(e,f,y,T,z,d,r,!1);return;case"select":pe("invalid",e),i=d=f=null;for(r in n)if(n.hasOwnProperty(r)&&(y=n[r],y!=null))switch(r){case"value":f=y;break;case"defaultValue":d=y;break;case"multiple":i=y;default:Ce(e,t,r,y,n,null)}t=f,n=d,e.multiple=!!i,t!=null?Ul(e,!!i,t,!1):n!=null&&Ul(e,!!i,n,!0);return;case"textarea":pe("invalid",e),f=r=i=null;for(d in n)if(n.hasOwnProperty(d)&&(y=n[d],y!=null))switch(d){case"value":i=y;break;case"defaultValue":r=y;break;case"children":f=y;break;case"dangerouslySetInnerHTML":if(y!=null)throw Error(s(91));break;default:Ce(e,t,d,y,n,null)}go(e,i,r,f);return;case"option":for(T in n)if(n.hasOwnProperty(T)&&(i=n[T],i!=null))switch(T){case"selected":e.selected=i&&typeof i!="function"&&typeof i!="symbol";break;default:Ce(e,t,T,i,n,null)}return;case"dialog":pe("beforetoggle",e),pe("toggle",e),pe("cancel",e),pe("close",e);break;case"iframe":case"object":pe("load",e);break;case"video":case"audio":for(i=0;i<pa.length;i++)pe(pa[i],e);break;case"image":pe("error",e),pe("load",e);break;case"details":pe("toggle",e);break;case"embed":case"source":case"link":pe("error",e),pe("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(z in n)if(n.hasOwnProperty(z)&&(i=n[z],i!=null))switch(z){case"children":case"dangerouslySetInnerHTML":throw Error(s(137,t));default:Ce(e,t,z,i,n,null)}return;default:if(Pu(t)){for(B in n)n.hasOwnProperty(B)&&(i=n[B],i!==void 0&&qr(e,t,B,i,n,void 0));return}}for(y in n)n.hasOwnProperty(y)&&(i=n[y],i!=null&&Ce(e,t,y,i,n,null))}function $0(e,t,n,i){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var r=null,f=null,d=null,y=null,T=null,z=null,B=null;for(j in n){var H=n[j];if(n.hasOwnProperty(j)&&H!=null)switch(j){case"checked":break;case"value":break;case"defaultValue":T=H;default:i.hasOwnProperty(j)||Ce(e,t,j,null,i,H)}}for(var L in i){var j=i[L];if(H=n[L],i.hasOwnProperty(L)&&(j!=null||H!=null))switch(L){case"type":f=j;break;case"name":r=j;break;case"checked":z=j;break;case"defaultChecked":B=j;break;case"value":d=j;break;case"defaultValue":y=j;break;case"children":case"dangerouslySetInnerHTML":if(j!=null)throw Error(s(137,t));break;default:j!==H&&Ce(e,t,L,j,i,H)}}Iu(e,d,y,T,z,B,f,r);return;case"select":j=d=y=L=null;for(f in n)if(T=n[f],n.hasOwnProperty(f)&&T!=null)switch(f){case"value":break;case"multiple":j=T;default:i.hasOwnProperty(f)||Ce(e,t,f,null,i,T)}for(r in i)if(f=i[r],T=n[r],i.hasOwnProperty(r)&&(f!=null||T!=null))switch(r){case"value":L=f;break;case"defaultValue":y=f;break;case"multiple":d=f;default:f!==T&&Ce(e,t,r,f,i,T)}t=y,n=d,i=j,L!=null?Ul(e,!!n,L,!1):!!i!=!!n&&(t!=null?Ul(e,!!n,t,!0):Ul(e,!!n,n?[]:"",!1));return;case"textarea":j=L=null;for(y in n)if(r=n[y],n.hasOwnProperty(y)&&r!=null&&!i.hasOwnProperty(y))switch(y){case"value":break;case"children":break;default:Ce(e,t,y,null,i,r)}for(d in i)if(r=i[d],f=n[d],i.hasOwnProperty(d)&&(r!=null||f!=null))switch(d){case"value":L=r;break;case"defaultValue":j=r;break;case"children":break;case"dangerouslySetInnerHTML":if(r!=null)throw Error(s(91));break;default:r!==f&&Ce(e,t,d,r,i,f)}mo(e,L,j);return;case"option":for(var I in n)if(L=n[I],n.hasOwnProperty(I)&&L!=null&&!i.hasOwnProperty(I))switch(I){case"selected":e.selected=!1;break;default:Ce(e,t,I,null,i,L)}for(T in i)if(L=i[T],j=n[T],i.hasOwnProperty(T)&&L!==j&&(L!=null||j!=null))switch(T){case"selected":e.selected=L&&typeof L!="function"&&typeof L!="symbol";break;default:Ce(e,t,T,L,i,j)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var ie in n)L=n[ie],n.hasOwnProperty(ie)&&L!=null&&!i.hasOwnProperty(ie)&&Ce(e,t,ie,null,i,L);for(z in i)if(L=i[z],j=n[z],i.hasOwnProperty(z)&&L!==j&&(L!=null||j!=null))switch(z){case"children":case"dangerouslySetInnerHTML":if(L!=null)throw Error(s(137,t));break;default:Ce(e,t,z,L,i,j)}return;default:if(Pu(t)){for(var ze in n)L=n[ze],n.hasOwnProperty(ze)&&L!==void 0&&!i.hasOwnProperty(ze)&&qr(e,t,ze,void 0,i,L);for(B in i)L=i[B],j=n[B],!i.hasOwnProperty(B)||L===j||L===void 0&&j===void 0||qr(e,t,B,L,i,j);return}}for(var N in n)L=n[N],n.hasOwnProperty(N)&&L!=null&&!i.hasOwnProperty(N)&&Ce(e,t,N,null,i,L);for(H in i)L=i[H],j=n[H],!i.hasOwnProperty(H)||L===j||L==null&&j==null||Ce(e,t,H,L,i,j)}function vm(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function K0(){if(typeof performance.getEntriesByType=="function"){for(var e=0,t=0,n=performance.getEntriesByType("resource"),i=0;i<n.length;i++){var r=n[i],f=r.transferSize,d=r.initiatorType,y=r.duration;if(f&&y&&vm(d)){for(d=0,y=r.responseEnd,i+=1;i<n.length;i++){var T=n[i],z=T.startTime;if(z>y)break;var B=T.transferSize,H=T.initiatorType;B&&vm(H)&&(T=T.responseEnd,d+=B*(T<y?1:(y-z)/(T-z)))}if(--i,t+=8*(f+d)/(r.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var Hr=null,Yr=null;function $s(e){return e.nodeType===9?e:e.ownerDocument}function bm(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function Sm(e,t){if(e===0)switch(t){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&t==="foreignObject"?0:e}function $r(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.children=="bigint"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Kr=null;function G0(){var e=window.event;return e&&e.type==="popstate"?e===Kr?!1:(Kr=e,!0):(Kr=null,!1)}var Tm=typeof setTimeout=="function"?setTimeout:void 0,V0=typeof clearTimeout=="function"?clearTimeout:void 0,Em=typeof Promise=="function"?Promise:void 0,Q0=typeof queueMicrotask=="function"?queueMicrotask:typeof Em<"u"?function(e){return Em.resolve(null).then(e).catch(X0)}:Tm;function X0(e){setTimeout(function(){throw e})}function Vn(e){return e==="head"}function wm(e,t){var n=t,i=0;do{var r=n.nextSibling;if(e.removeChild(n),r&&r.nodeType===8)if(n=r.data,n==="/$"||n==="/&"){if(i===0){e.removeChild(r),hi(t);return}i--}else if(n==="$"||n==="$?"||n==="$~"||n==="$!"||n==="&")i++;else if(n==="html")va(e.ownerDocument.documentElement);else if(n==="head"){n=e.ownerDocument.head,va(n);for(var f=n.firstChild;f;){var d=f.nextSibling,y=f.nodeName;f[ji]||y==="SCRIPT"||y==="STYLE"||y==="LINK"&&f.rel.toLowerCase()==="stylesheet"||n.removeChild(f),f=d}}else n==="body"&&va(e.ownerDocument.body);n=r}while(n);hi(t)}function Am(e,t){var n=e;e=0;do{var i=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display="none"):(n.style.display=n._stashedDisplay||"",n.getAttribute("style")===""&&n.removeAttribute("style")):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=""):n.nodeValue=n._stashedText||""),i&&i.nodeType===8)if(n=i.data,n==="/$"){if(e===0)break;e--}else n!=="$"&&n!=="$?"&&n!=="$~"&&n!=="$!"||e++;n=i}while(n)}function Gr(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case"HTML":case"HEAD":case"BODY":Gr(n),Ju(n);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(n.rel.toLowerCase()==="stylesheet")continue}e.removeChild(n)}}function Z0(e,t,n,i){for(;e.nodeType===1;){var r=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!i&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(i){if(!e[ji])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(f=e.getAttribute("rel"),f==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(f!==r.rel||e.getAttribute("href")!==(r.href==null||r.href===""?null:r.href)||e.getAttribute("crossorigin")!==(r.crossOrigin==null?null:r.crossOrigin)||e.getAttribute("title")!==(r.title==null?null:r.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(f=e.getAttribute("src"),(f!==(r.src==null?null:r.src)||e.getAttribute("type")!==(r.type==null?null:r.type)||e.getAttribute("crossorigin")!==(r.crossOrigin==null?null:r.crossOrigin))&&f&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(t==="input"&&e.type==="hidden"){var f=r.name==null?null:""+r.name;if(r.type==="hidden"&&e.getAttribute("name")===f)return e}else return e;if(e=$t(e.nextSibling),e===null)break}return null}function J0(e,t,n){if(t==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!n||(e=$t(e.nextSibling),e===null))return null;return e}function Om(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!t||(e=$t(e.nextSibling),e===null))return null;return e}function Vr(e){return e.data==="$?"||e.data==="$~"}function Qr(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function W0(e,t){var n=e.ownerDocument;if(e.data==="$~")e._reactRetry=t;else if(e.data!=="$?"||n.readyState!=="loading")t();else{var i=function(){t(),n.removeEventListener("DOMContentLoaded",i)};n.addEventListener("DOMContentLoaded",i),e._reactRetry=i}}function $t(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?"||t==="$~"||t==="&"||t==="F!"||t==="F")break;if(t==="/$"||t==="/&")return null}}return e}var Xr=null;function _m(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"||n==="/&"){if(t===0)return $t(e.nextSibling);t--}else n!=="$"&&n!=="$!"&&n!=="$?"&&n!=="$~"&&n!=="&"||t++}e=e.nextSibling}return null}function Nm(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"||n==="$~"||n==="&"){if(t===0)return e;t--}else n!=="/$"&&n!=="/&"||t++}e=e.previousSibling}return null}function Mm(e,t,n){switch(t=$s(n),e){case"html":if(e=t.documentElement,!e)throw Error(s(452));return e;case"head":if(e=t.head,!e)throw Error(s(453));return e;case"body":if(e=t.body,!e)throw Error(s(454));return e;default:throw Error(s(451))}}function va(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Ju(e)}var Kt=new Map,Cm=new Set;function Ks(e){return typeof e.getRootNode=="function"?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var Tn=G.d;G.d={f:I0,r:F0,D:P0,C:e1,L:t1,m:n1,X:i1,S:l1,M:a1};function I0(){var e=Tn.f(),t=Us();return e||t}function F0(e){var t=xl(e);t!==null&&t.tag===5&&t.type==="form"?Qh(t):Tn.r(e)}var ri=typeof document>"u"?null:document;function zm(e,t,n){var i=ri;if(i&&typeof t=="string"&&t){var r=Rt(t);r='link[rel="'+e+'"][href="'+r+'"]',typeof n=="string"&&(r+='[crossorigin="'+n+'"]'),Cm.has(r)||(Cm.add(r),e={rel:e,crossOrigin:n,href:t},i.querySelector(r)===null&&(t=i.createElement("link"),at(t,"link",e),Pe(t),i.head.appendChild(t)))}}function P0(e){Tn.D(e),zm("dns-prefetch",e,null)}function e1(e,t){Tn.C(e,t),zm("preconnect",e,t)}function t1(e,t,n){Tn.L(e,t,n);var i=ri;if(i&&e&&t){var r='link[rel="preload"][as="'+Rt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(r+='[imagesrcset="'+Rt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(r+='[imagesizes="'+Rt(n.imageSizes)+'"]')):r+='[href="'+Rt(e)+'"]';var f=r;switch(t){case"style":f=fi(e);break;case"script":f=oi(e)}Kt.has(f)||(e=v({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Kt.set(f,e),i.querySelector(r)!==null||t==="style"&&i.querySelector(ba(f))||t==="script"&&i.querySelector(Sa(f))||(t=i.createElement("link"),at(t,"link",e),Pe(t),i.head.appendChild(t)))}}function n1(e,t){Tn.m(e,t);var n=ri;if(n&&e){var i=t&&typeof t.as=="string"?t.as:"script",r='link[rel="modulepreload"][as="'+Rt(i)+'"][href="'+Rt(e)+'"]',f=r;switch(i){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":f=oi(e)}if(!Kt.has(f)&&(e=v({rel:"modulepreload",href:e},t),Kt.set(f,e),n.querySelector(r)===null)){switch(i){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Sa(f)))return}i=n.createElement("link"),at(i,"link",e),Pe(i),n.head.appendChild(i)}}}function l1(e,t,n){Tn.S(e,t,n);var i=ri;if(i&&e){var r=Dl(i).hoistableStyles,f=fi(e);t=t||"default";var d=r.get(f);if(!d){var y={loading:0,preload:null};if(d=i.querySelector(ba(f)))y.loading=5;else{e=v({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Kt.get(f))&&Zr(e,n);var T=d=i.createElement("link");Pe(T),at(T,"link",e),T._p=new Promise(function(z,B){T.onload=z,T.onerror=B}),T.addEventListener("load",function(){y.loading|=1}),T.addEventListener("error",function(){y.loading|=2}),y.loading|=4,Gs(d,t,i)}d={type:"stylesheet",instance:d,count:1,state:y},r.set(f,d)}}}function i1(e,t){Tn.X(e,t);var n=ri;if(n&&e){var i=Dl(n).hoistableScripts,r=oi(e),f=i.get(r);f||(f=n.querySelector(Sa(r)),f||(e=v({src:e,async:!0},t),(t=Kt.get(r))&&Jr(e,t),f=n.createElement("script"),Pe(f),at(f,"link",e),n.head.appendChild(f)),f={type:"script",instance:f,count:1,state:null},i.set(r,f))}}function a1(e,t){Tn.M(e,t);var n=ri;if(n&&e){var i=Dl(n).hoistableScripts,r=oi(e),f=i.get(r);f||(f=n.querySelector(Sa(r)),f||(e=v({src:e,async:!0,type:"module"},t),(t=Kt.get(r))&&Jr(e,t),f=n.createElement("script"),Pe(f),at(f,"link",e),n.head.appendChild(f)),f={type:"script",instance:f,count:1,state:null},i.set(r,f))}}function xm(e,t,n,i){var r=(r=me.current)?Ks(r):null;if(!r)throw Error(s(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=fi(n.href),n=Dl(r).hoistableStyles,i=n.get(t),i||(i={type:"style",instance:null,count:0,state:null},n.set(t,i)),i):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=fi(n.href);var f=Dl(r).hoistableStyles,d=f.get(e);if(d||(r=r.ownerDocument||r,d={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},f.set(e,d),(f=r.querySelector(ba(e)))&&!f._p&&(d.instance=f,d.state.loading=5),Kt.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Kt.set(e,n),f||s1(r,e,n,d.state))),t&&i===null)throw Error(s(528,""));return d}if(t&&i!==null)throw Error(s(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=oi(n),n=Dl(r).hoistableScripts,i=n.get(t),i||(i={type:"script",instance:null,count:0,state:null},n.set(t,i)),i):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,e))}}function fi(e){return'href="'+Rt(e)+'"'}function ba(e){return'link[rel="stylesheet"]['+e+"]"}function Dm(e){return v({},e,{"data-precedence":e.precedence,precedence:null})}function s1(e,t,n,i){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?i.loading=1:(t=e.createElement("link"),i.preload=t,t.addEventListener("load",function(){return i.loading|=1}),t.addEventListener("error",function(){return i.loading|=2}),at(t,"link",n),Pe(t),e.head.appendChild(t))}function oi(e){return'[src="'+Rt(e)+'"]'}function Sa(e){return"script[async]"+e}function Lm(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var i=e.querySelector('style[data-href~="'+Rt(n.href)+'"]');if(i)return t.instance=i,Pe(i),i;var r=v({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return i=(e.ownerDocument||e).createElement("style"),Pe(i),at(i,"style",r),Gs(i,n.precedence,e),t.instance=i;case"stylesheet":r=fi(n.href);var f=e.querySelector(ba(r));if(f)return t.state.loading|=4,t.instance=f,Pe(f),f;i=Dm(n),(r=Kt.get(r))&&Zr(i,r),f=(e.ownerDocument||e).createElement("link"),Pe(f);var d=f;return d._p=new Promise(function(y,T){d.onload=y,d.onerror=T}),at(f,"link",i),t.state.loading|=4,Gs(f,n.precedence,e),t.instance=f;case"script":return f=oi(n.src),(r=e.querySelector(Sa(f)))?(t.instance=r,Pe(r),r):(i=n,(r=Kt.get(f))&&(i=v({},n),Jr(i,r)),e=e.ownerDocument||e,r=e.createElement("script"),Pe(r),at(r,"link",i),e.head.appendChild(r),t.instance=r);case"void":return null;default:throw Error(s(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(i=t.instance,t.state.loading|=4,Gs(i,n.precedence,e));return t.instance}function Gs(e,t,n){for(var i=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),r=i.length?i[i.length-1]:null,f=r,d=0;d<i.length;d++){var y=i[d];if(y.dataset.precedence===t)f=y;else if(f!==r)break}f?f.parentNode.insertBefore(e,f.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function Zr(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.title==null&&(e.title=t.title)}function Jr(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.integrity==null&&(e.integrity=t.integrity)}var Vs=null;function Um(e,t,n){if(Vs===null){var i=new Map,r=Vs=new Map;r.set(n,i)}else r=Vs,i=r.get(n),i||(i=new Map,r.set(n,i));if(i.has(e))return i;for(i.set(e,null),n=n.getElementsByTagName(e),r=0;r<n.length;r++){var f=n[r];if(!(f[ji]||f[tt]||e==="link"&&f.getAttribute("rel")==="stylesheet")&&f.namespaceURI!=="http://www.w3.org/2000/svg"){var d=f.getAttribute(t)||"";d=e+d;var y=i.get(d);y?y.push(f):i.set(d,[f])}}return i}function Rm(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t==="title"?e.querySelector("head > title"):null)}function u1(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function jm(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function c1(e,t,n,i){if(n.type==="stylesheet"&&(typeof i.media!="string"||matchMedia(i.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var r=fi(i.href),f=t.querySelector(ba(r));if(f){t=f._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=Qs.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=f,Pe(f);return}f=t.ownerDocument||t,i=Dm(i),(r=Kt.get(r))&&Zr(i,r),f=f.createElement("link"),Pe(f);var d=f;d._p=new Promise(function(y,T){d.onload=y,d.onerror=T}),at(f,"link",i),n.instance=f}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=Qs.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Wr=0;function r1(e,t){return e.stylesheets&&e.count===0&&Zs(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var i=setTimeout(function(){if(e.stylesheets&&Zs(e,e.stylesheets),e.unsuspend){var f=e.unsuspend;e.unsuspend=null,f()}},6e4+t);0<e.imgBytes&&Wr===0&&(Wr=62500*K0());var r=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Zs(e,e.stylesheets),e.unsuspend)){var f=e.unsuspend;e.unsuspend=null,f()}},(e.imgBytes>Wr?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(i),clearTimeout(r)}}:null}function Qs(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Zs(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Xs=null;function Zs(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Xs=new Map,t.forEach(f1,e),Xs=null,Qs.call(e))}function f1(e,t){if(!(t.state.loading&4)){var n=Xs.get(e);if(n)var i=n.get(null);else{n=new Map,Xs.set(e,n);for(var r=e.querySelectorAll("link[data-precedence],style[data-precedence]"),f=0;f<r.length;f++){var d=r[f];(d.nodeName==="LINK"||d.getAttribute("media")!=="not all")&&(n.set(d.dataset.precedence,d),i=d)}i&&n.set(null,i)}r=t.instance,d=r.getAttribute("data-precedence"),f=n.get(d)||i,f===i&&n.set(null,r),n.set(d,r),this.count++,i=Qs.bind(this),r.addEventListener("load",i),r.addEventListener("error",i),f?f.parentNode.insertBefore(r,f.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(r,e.firstChild)),t.state.loading|=4}}var Ta={$$typeof:K,Provider:null,Consumer:null,_currentValue:ne,_currentValue2:ne,_threadCount:0};function o1(e,t,n,i,r,f,d,y,T){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Vu(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Vu(0),this.hiddenUpdates=Vu(null),this.identifierPrefix=i,this.onUncaughtError=r,this.onCaughtError=f,this.onRecoverableError=d,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=T,this.incompleteTransitions=new Map}function Bm(e,t,n,i,r,f,d,y,T,z,B,H){return e=new o1(e,t,n,d,T,z,B,H,y),t=1,f===!0&&(t|=24),f=_t(3,null,null,t),e.current=f,f.stateNode=e,t=Cc(),t.refCount++,e.pooledCache=t,t.refCount++,f.memoizedState={element:i,isDehydrated:n,cache:t},Lc(f),e}function km(e){return e?(e=$l,e):$l}function qm(e,t,n,i,r,f){r=km(r),i.context===null?i.context=r:i.pendingContext=r,i=Un(t),i.payload={element:n},f=f===void 0?null:f,f!==null&&(i.callback=f),n=Rn(e,i,t),n!==null&&(vt(n,e,t),Pi(n,e,t))}function Hm(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Ir(e,t){Hm(e,t),(e=e.alternate)&&Hm(e,t)}function Ym(e){if(e.tag===13||e.tag===31){var t=cl(e,67108864);t!==null&&vt(t,e,67108864),Ir(e,67108864)}}function $m(e){if(e.tag===13||e.tag===31){var t=xt();t=Qu(t);var n=cl(e,t);n!==null&&vt(n,e,t),Ir(e,t)}}var Js=!0;function h1(e,t,n,i){var r=D.T;D.T=null;var f=G.p;try{G.p=2,Fr(e,t,n,i)}finally{G.p=f,D.T=r}}function d1(e,t,n,i){var r=D.T;D.T=null;var f=G.p;try{G.p=8,Fr(e,t,n,i)}finally{G.p=f,D.T=r}}function Fr(e,t,n,i){if(Js){var r=Pr(i);if(r===null)kr(e,t,i,Ws,n),Gm(e,i);else if(g1(r,e,t,n,i))i.stopPropagation();else if(Gm(e,i),t&4&&-1<m1.indexOf(e)){for(;r!==null;){var f=xl(r);if(f!==null)switch(f.tag){case 3:if(f=f.stateNode,f.current.memoizedState.isDehydrated){var d=ll(f.pendingLanes);if(d!==0){var y=f;for(y.pendingLanes|=2,y.entangledLanes|=2;d;){var T=1<<31-At(d);y.entanglements[1]|=T,d&=~T}en(f),(Ee&6)===0&&(Ds=Et()+500,ga(0))}}break;case 31:case 13:y=cl(f,2),y!==null&&vt(y,f,2),Us(),Ir(f,2)}if(f=Pr(i),f===null&&kr(e,t,i,Ws,n),f===r)break;r=f}r!==null&&i.stopPropagation()}else kr(e,t,i,null,n)}}function Pr(e){return e=tc(e),ef(e)}var Ws=null;function ef(e){if(Ws=null,e=zl(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=h(t),e!==null)return e;e=null}else if(n===31){if(e=m(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return Ws=e,null}function Km(e){switch(e){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(Pp()){case Wf:return 2;case If:return 8;case qa:case ey:return 32;case Ff:return 268435456;default:return 32}default:return 32}}var tf=!1,Qn=null,Xn=null,Zn=null,Ea=new Map,wa=new Map,Jn=[],m1="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function Gm(e,t){switch(e){case"focusin":case"focusout":Qn=null;break;case"dragenter":case"dragleave":Xn=null;break;case"mouseover":case"mouseout":Zn=null;break;case"pointerover":case"pointerout":Ea.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":wa.delete(t.pointerId)}}function Aa(e,t,n,i,r,f){return e===null||e.nativeEvent!==f?(e={blockedOn:t,domEventName:n,eventSystemFlags:i,nativeEvent:f,targetContainers:[r]},t!==null&&(t=xl(t),t!==null&&Ym(t)),e):(e.eventSystemFlags|=i,t=e.targetContainers,r!==null&&t.indexOf(r)===-1&&t.push(r),e)}function g1(e,t,n,i,r){switch(t){case"focusin":return Qn=Aa(Qn,e,t,n,i,r),!0;case"dragenter":return Xn=Aa(Xn,e,t,n,i,r),!0;case"mouseover":return Zn=Aa(Zn,e,t,n,i,r),!0;case"pointerover":var f=r.pointerId;return Ea.set(f,Aa(Ea.get(f)||null,e,t,n,i,r)),!0;case"gotpointercapture":return f=r.pointerId,wa.set(f,Aa(wa.get(f)||null,e,t,n,i,r)),!0}return!1}function Vm(e){var t=zl(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=h(n),t!==null){e.blockedOn=t,io(e.priority,function(){$m(n)});return}}else if(t===31){if(t=m(n),t!==null){e.blockedOn=t,io(e.priority,function(){$m(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Is(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Pr(e.nativeEvent);if(n===null){n=e.nativeEvent;var i=new n.constructor(n.type,n);ec=i,n.target.dispatchEvent(i),ec=null}else return t=xl(n),t!==null&&Ym(t),e.blockedOn=n,!1;t.shift()}return!0}function Qm(e,t,n){Is(e)&&n.delete(t)}function p1(){tf=!1,Qn!==null&&Is(Qn)&&(Qn=null),Xn!==null&&Is(Xn)&&(Xn=null),Zn!==null&&Is(Zn)&&(Zn=null),Ea.forEach(Qm),wa.forEach(Qm)}function Fs(e,t){e.blockedOn===t&&(e.blockedOn=null,tf||(tf=!0,u.unstable_scheduleCallback(u.unstable_NormalPriority,p1)))}var Ps=null;function Xm(e){Ps!==e&&(Ps=e,u.unstable_scheduleCallback(u.unstable_NormalPriority,function(){Ps===e&&(Ps=null);for(var t=0;t<e.length;t+=3){var n=e[t],i=e[t+1],r=e[t+2];if(typeof i!="function"){if(ef(i||n)===null)continue;break}var f=xl(n);f!==null&&(e.splice(t,3),t-=3,Pc(f,{pending:!0,data:r,method:n.method,action:i},i,r))}}))}function hi(e){function t(T){return Fs(T,e)}Qn!==null&&Fs(Qn,e),Xn!==null&&Fs(Xn,e),Zn!==null&&Fs(Zn,e),Ea.forEach(t),wa.forEach(t);for(var n=0;n<Jn.length;n++){var i=Jn[n];i.blockedOn===e&&(i.blockedOn=null)}for(;0<Jn.length&&(n=Jn[0],n.blockedOn===null);)Vm(n),n.blockedOn===null&&Jn.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(i=0;i<n.length;i+=3){var r=n[i],f=n[i+1],d=r[ht]||null;if(typeof f=="function")d||Xm(n);else if(d){var y=null;if(f&&f.hasAttribute("formAction")){if(r=f,d=f[ht]||null)y=d.formAction;else if(ef(r)!==null)continue}else y=d.action;typeof y=="function"?n[i+1]=y:(n.splice(i,3),i-=3),Xm(n)}}}function Zm(){function e(f){f.canIntercept&&f.info==="react-transition"&&f.intercept({handler:function(){return new Promise(function(d){return r=d})},focusReset:"manual",scroll:"manual"})}function t(){r!==null&&(r(),r=null),i||setTimeout(n,20)}function n(){if(!i&&!navigation.transition){var f=navigation.currentEntry;f&&f.url!=null&&navigation.navigate(f.url,{state:f.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var i=!1,r=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",t),navigation.addEventListener("navigateerror",t),setTimeout(n,100),function(){i=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",t),navigation.removeEventListener("navigateerror",t),r!==null&&(r(),r=null)}}}function nf(e){this._internalRoot=e}eu.prototype.render=nf.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(s(409));var n=t.current,i=xt();qm(n,i,e,t,null,null)},eu.prototype.unmount=nf.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;qm(e.current,2,null,e,null,null),Us(),t[Cl]=null}};function eu(e){this._internalRoot=e}eu.prototype.unstable_scheduleHydration=function(e){if(e){var t=lo();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Jn.length&&t!==0&&t<Jn[n].priority;n++);Jn.splice(n,0,e),n===0&&Vm(e)}};var Jm=l.version;if(Jm!=="19.2.1")throw Error(s(527,Jm,"19.2.1"));G.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(s(188)):(e=Object.keys(e).join(","),Error(s(268,e)));return e=g(t),e=e!==null?b(e):null,e=e===null?null:e.stateNode,e};var y1={bundleType:0,version:"19.2.1",rendererPackageName:"react-dom",currentDispatcherRef:D,reconcilerVersion:"19.2.1"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var tu=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!tu.isDisabled&&tu.supportsFiber)try{Li=tu.inject(y1),wt=tu}catch{}}return _a.createRoot=function(e,t){if(!c(e))throw Error(s(299));var n=!1,i="",r=nd,f=ld,d=id;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(i=t.identifierPrefix),t.onUncaughtError!==void 0&&(r=t.onUncaughtError),t.onCaughtError!==void 0&&(f=t.onCaughtError),t.onRecoverableError!==void 0&&(d=t.onRecoverableError)),t=Bm(e,1,!1,null,null,n,i,null,r,f,d,Zm),e[Cl]=t.current,Br(e),new nf(t)},_a.hydrateRoot=function(e,t,n){if(!c(e))throw Error(s(299));var i=!1,r="",f=nd,d=ld,y=id,T=null;return n!=null&&(n.unstable_strictMode===!0&&(i=!0),n.identifierPrefix!==void 0&&(r=n.identifierPrefix),n.onUncaughtError!==void 0&&(f=n.onUncaughtError),n.onCaughtError!==void 0&&(d=n.onCaughtError),n.onRecoverableError!==void 0&&(y=n.onRecoverableError),n.formState!==void 0&&(T=n.formState)),t=Bm(e,1,!0,t,n??null,i,r,T,f,d,y,Zm),t.context=km(null),n=t.current,i=xt(),i=Qu(i),r=Un(i),r.callback=null,Rn(n,r,i),n=i,t.current.lanes=n,Ri(t,n),en(t),e[Cl]=t.current,Br(e),new eu(t)},_a.version="19.2.1",_a}var ug;function j1(){if(ug)return sf.exports;ug=1;function u(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(l){console.error(l)}}return u(),sf.exports=R1(),sf.exports}var B1=j1();const k1="modulepreload",q1=function(u){return"/"+u},cg={},H1=function(l,a,s){let c=Promise.resolve();if(a&&a.length>0){let h=function(g){return Promise.all(g.map(b=>Promise.resolve(b).then(v=>({status:"fulfilled",value:v}),v=>({status:"rejected",reason:v}))))};document.getElementsByTagName("link");const m=document.querySelector("meta[property=csp-nonce]"),p=(m==null?void 0:m.nonce)||(m==null?void 0:m.getAttribute("nonce"));c=h(a.map(g=>{if(g=q1(g),g in cg)return;cg[g]=!0;const b=g.endsWith(".css"),v=b?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${g}"]${v}`))return;const O=document.createElement("link");if(O.rel=b?"stylesheet":k1,b||(O.as="script"),O.crossOrigin="",O.href=g,p&&O.setAttribute("nonce",p),document.head.appendChild(O),b)return new Promise((E,x)=>{O.addEventListener("load",E),O.addEventListener("error",()=>x(new Error(`Unable to preload CSS for ${g}`)))})}))}function o(h){const m=new Event("vite:preloadError",{cancelable:!0});if(m.payload=h,window.dispatchEvent(m),!m.defaultPrevented)throw h}return c.then(h=>{for(const m of h||[])m.status==="rejected"&&o(m.reason);return l().catch(o)})};function Y1(u,l){const a=/(\x1b\[(\d+(;\d+)*)m)|([^\x1b]+)/g,s=[];let c,o={},h=!1,m=l==null?void 0:l.fg,p=l==null?void 0:l.bg;for(;(c=a.exec(u))!==null;){const[,,g,,b]=c;if(g)for(const v of g.split(";")){const O=+v;switch(O){case 0:o={};break;case 1:o["font-weight"]="bold";break;case 2:o.opacity="0.8";break;case 3:o["font-style"]="italic";break;case 4:o["text-decoration"]="underline";break;case 7:h=!0;break;case 8:o.display="none";break;case 9:o["text-decoration"]="line-through";break;case 22:delete o["font-weight"],delete o["font-style"],delete o.opacity,delete o["text-decoration"];break;case 23:delete o["font-weight"],delete o["font-style"],delete o.opacity;break;case 24:delete o["text-decoration"];break;case 27:h=!1;break;case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:m=rg[O-30];break;case 39:m=l==null?void 0:l.fg;break;case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:p=rg[O-40];break;case 49:p=l==null?void 0:l.bg;break;case 53:o["text-decoration"]="overline";break;case 90:case 91:case 92:case 93:case 94:case 95:case 96:case 97:m=fg[O-90];break;case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:p=fg[O-100];break}}else if(b){const v={...o},O=h?p:m;O!==void 0&&(v.color=O),h&&m&&(v["background-color"]=m),s.push(`<span style="${K1(v)}">${$1(b)}</span>`)}}return s.join("")}const rg={0:"var(--vscode-terminal-ansiBlack)",1:"var(--vscode-terminal-ansiRed)",2:"var(--vscode-terminal-ansiGreen)",3:"var(--vscode-terminal-ansiYellow)",4:"var(--vscode-terminal-ansiBlue)",5:"var(--vscode-terminal-ansiMagenta)",6:"var(--vscode-terminal-ansiCyan)",7:"var(--vscode-terminal-ansiWhite)"},fg={0:"var(--vscode-terminal-ansiBrightBlack)",1:"var(--vscode-terminal-ansiBrightRed)",2:"var(--vscode-terminal-ansiBrightGreen)",3:"var(--vscode-terminal-ansiBrightYellow)",4:"var(--vscode-terminal-ansiBrightBlue)",5:"var(--vscode-terminal-ansiBrightMagenta)",6:"var(--vscode-terminal-ansiBrightCyan)",7:"var(--vscode-terminal-ansiBrightWhite)"};function $1(u){return u.replace(/[&"<>]/g,l=>({"&":"&amp;",'"':"&quot;","<":"&lt;",">":"&gt;"})[l])}function K1(u){return Object.entries(u).map(([l,a])=>`${l}: ${a}`).join("; ")}const ff=({text:u,highlighter:l,mimeType:a,linkify:s,readOnly:c,highlight:o,revealLine:h,lineNumbers:m,isFocused:p,focusOnChange:g,wrapLines:b,onChange:v,dataTestId:O,placeholder:E})=>{const[x,S]=Mg(),[w]=he.useState(H1(()=>import("./codeMirrorModule-DeBYQozu.js"),__vite__mapDeps([0,1])).then(Q=>Q.default)),M=he.useRef(null),[R,K]=he.useState();return he.useEffect(()=>{(async()=>{var V,U;const Q=await w;V1(Q);const Z=S.current;if(!Z)return;const W=X1(l)||Q1(a)||(s?"text/linkified":"");if(M.current&&W===M.current.cm.getOption("mode")&&!!c===M.current.cm.getOption("readOnly")&&m===M.current.cm.getOption("lineNumbers")&&b===M.current.cm.getOption("lineWrapping")&&E===M.current.cm.getOption("placeholder"))return;(U=(V=M.current)==null?void 0:V.cm)==null||U.getWrapperElement().remove();const k=Q(Z,{value:"",mode:W,readOnly:!!c,lineNumbers:m,lineWrapping:b,placeholder:E,matchBrackets:!0,autoCloseBrackets:!0,extraKeys:{"Ctrl-F":"findPersistent","Cmd-F":"findPersistent"}});return M.current={cm:k},p&&k.focus(),K(k),k})()},[w,R,S,l,a,s,m,b,c,p,E]),he.useEffect(()=>{M.current&&M.current.cm.setSize(x.width,x.height)},[x]),he.useLayoutEffect(()=>{var W;if(!R)return;let Q=!1;if(R.getValue()!==u&&(R.setValue(u),Q=!0,g&&(R.execCommand("selectAll"),R.focus())),Q||JSON.stringify(o)!==JSON.stringify(M.current.highlight)){for(const U of M.current.highlight||[])R.removeLineClass(U.line-1,"wrap");for(const U of o||[])R.addLineClass(U.line-1,"wrap",`source-line-${U.type}`);for(const U of M.current.widgets||[])R.removeLineWidget(U);for(const U of M.current.markers||[])U.clear();const k=[],V=[];for(const U of o||[]){if(U.type!=="subtle-error"&&U.type!=="error")continue;const ae=(W=M.current)==null?void 0:W.cm.getLine(U.line-1);if(ae){const te={};te.title=U.message||"",V.push(R.markText({line:U.line-1,ch:0},{line:U.line-1,ch:U.column||ae.length},{className:"source-line-error-underline",attributes:te}))}if(U.type==="error"){const te=document.createElement("div");te.innerHTML=Y1(U.message||"",{bg:"var(--vscode-inputValidation-errorBackground)",fg:"var(--vscode-editor-foreground)"}),te.className="source-line-error-widget",k.push(R.addLineWidget(U.line,te,{above:!0,coverGutter:!1}))}}M.current.highlight=o,M.current.widgets=k,M.current.markers=V}typeof h=="number"&&M.current.cm.lineCount()>=h&&R.scrollIntoView({line:Math.max(0,h-1),ch:0},50);let Z;return v&&(Z=()=>v(R.getValue()),R.on("change",Z)),()=>{Z&&R.off("change",Z)}},[R,u,o,h,g,v]),X.jsx("div",{"data-testid":O,className:"cm-wrapper",ref:S,onClick:G1})};function G1(u){var a;if(!(u.target instanceof HTMLElement))return;let l;u.target.classList.contains("cm-linkified")?l=u.target.textContent:u.target.classList.contains("cm-link")&&((a=u.target.nextElementSibling)!=null&&a.classList.contains("cm-url"))&&(l=u.target.nextElementSibling.textContent.slice(1,-1)),l&&(u.preventDefault(),u.stopPropagation(),window.open(l,"_blank"))}let og=!1;function V1(u){og||(og=!0,u.defineSimpleMode("text/linkified",{start:[{regex:A1,token:"linkified"}]}))}function Q1(u){if(u){if(u.includes("javascript")||u.includes("json"))return"javascript";if(u.includes("python"))return"python";if(u.includes("csharp"))return"text/x-csharp";if(u.includes("java"))return"text/x-java";if(u.includes("markdown"))return"markdown";if(u.includes("html")||u.includes("svg"))return"htmlmixed";if(u.includes("css"))return"css"}}function X1(u){if(u)return{javascript:"javascript",jsonl:"javascript",python:"python",csharp:"text/x-csharp",java:"text/x-java",markdown:"markdown",html:"htmlmixed",css:"css",yaml:"yaml"}[u]}const Z1=50,J1=({sidebarSize:u,sidebarHidden:l=!1,sidebarIsFirst:a=!1,orientation:s="vertical",minSidebarSize:c=Z1,settingName:o,sidebar:h,main:m})=>{const p=Math.max(c,u)*window.devicePixelRatio,[g,b]=pu(o?o+"."+s+":size":void 0,p),[v,O]=pu(o?o+"."+s+":size":void 0,p),[E,x]=he.useState(null),[S,w]=Mg();let M;s==="vertical"?(M=v/window.devicePixelRatio,S&&S.height<M&&(M=S.height-10)):(M=g/window.devicePixelRatio,S&&S.width<M&&(M=S.width-10)),document.body.style.userSelect=E?"none":"inherit";let R={};return s==="vertical"?a?R={top:E?0:M-4,bottom:E?0:void 0,height:E?"initial":8}:R={bottom:E?0:M-4,top:E?0:void 0,height:E?"initial":8}:a?R={left:E?0:M-4,right:E?0:void 0,width:E?"initial":8}:R={right:E?0:M-4,left:E?0:void 0,width:E?"initial":8},X.jsxs("div",{className:Ol("split-view",s,a&&"sidebar-first"),ref:w,children:[X.jsx("div",{className:"split-view-main",children:m}),!l&&X.jsx("div",{style:{flexBasis:M},className:"split-view-sidebar",children:h}),!l&&X.jsx("div",{style:R,className:"split-view-resizer",onMouseDown:K=>x({offset:s==="vertical"?K.clientY:K.clientX,size:M}),onMouseUp:()=>x(null),onMouseMove:K=>{if(!K.buttons)x(null);else if(E){const Z=(s==="vertical"?K.clientY:K.clientX)-E.offset,W=a?E.size+Z:E.size-Z,V=K.target.parentElement.getBoundingClientRect(),U=Math.min(Math.max(c,W),(s==="vertical"?V.height:V.width)-c);s==="vertical"?O(U*window.devicePixelRatio):b(U*window.devicePixelRatio)}}})]})},xg=({noShadow:u,children:l,noMinHeight:a,className:s,sidebarBackground:c,onClick:o})=>X.jsx("div",{className:Ol("toolbar",u&&"no-shadow",a&&"no-min-height",s,c&&"toolbar-sidebar-background"),onClick:o,children:l}),W1=({tabs:u,selectedTab:l,setSelectedTab:a,leftToolbar:s,rightToolbar:c,dataTestId:o,mode:h})=>{const m=he.useId(),p=he.useRef(null);l||(l=u[0].id),h||(h="default");const g=b=>{var x;const v=Array.from(((x=p.current)==null?void 0:x.querySelectorAll('[role="tab"]'))??[]),O=v.findIndex(S=>S===document.activeElement);if(O===-1)return;let E=O;if(b.key==="ArrowRight")E=(O+1)%v.length;else if(b.key==="ArrowLeft")E=(O-1+v.length)%v.length;else if(b.key==="Home")E=0;else if(b.key==="End")E=v.length-1;else return;b.preventDefault(),v[E].focus(),a==null||a(u[E].id)};return X.jsx("div",{className:"tabbed-pane","data-testid":o,children:X.jsxs("div",{className:"vbox",children:[X.jsxs(xg,{children:[s&&X.jsxs("div",{style:{flex:"none",display:"flex",margin:"0 4px",alignItems:"center"},children:[...s]}),h==="default"&&X.jsx("div",{style:{flex:"auto",display:"flex",height:"100%",overflow:"hidden"},role:"tablist",onKeyDown:g,ref:p,children:[...u.map(b=>X.jsx(I1,{id:b.id,ariaControls:`${m}-${b.id}`,title:b.title,count:b.count,errorCount:b.errorCount,selected:l===b.id,onSelect:a,tabIndex:l===b.id?0:-1},b.id))]}),h==="select"&&X.jsx("div",{style:{flex:"auto",display:"flex",height:"100%",overflow:"hidden"},role:"tablist",children:X.jsx("select",{style:{width:"100%",background:"none",cursor:"pointer"},value:l,onChange:b=>{a==null||a(u[b.currentTarget.selectedIndex].id)},children:u.map(b=>{let v="";return b.count&&(v=` (${b.count})`),b.errorCount&&(v=` (${b.errorCount})`),X.jsxs("option",{value:b.id,role:"tab","aria-controls":`${m}-${b.id}`,children:[b.title,v]},b.id)})})}),c&&X.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center"},children:[...c]})]}),u.map(b=>{const v="tab-content tab-"+b.id;if(b.component)return X.jsx("div",{id:`${m}-${b.id}`,role:"tabpanel","aria-label":b.title,className:v,style:{display:l===b.id?"inherit":"none"},children:b.component},b.id);if(l===b.id)return X.jsx("div",{id:`${m}-${b.id}`,role:"tabpanel","aria-label":b.title,className:v,children:b.render()},b.id)})]})})},I1=({id:u,title:l,count:a,errorCount:s,selected:c,onSelect:o,ariaControls:h,tabIndex:m})=>X.jsxs("div",{className:Ol("tabbed-pane-tab",c&&"selected"),onClick:()=>o==null?void 0:o(u),role:"tab",title:l,tabIndex:m??(c?0:-1),"aria-controls":h,"aria-selected":c,children:[X.jsx("div",{className:"tabbed-pane-tab-label",children:l}),!!a&&X.jsx("div",{className:"tabbed-pane-tab-counter",children:a}),!!s&&X.jsx("div",{className:"tabbed-pane-tab-counter error",children:s})]}),F1=({sources:u,fileId:l,setFileId:a})=>X.jsx("select",{className:"source-chooser",hidden:!u.length,title:"Source chooser",value:l,onChange:s=>{a(s.target.selectedOptions[0].value)},children:P1(u)});function P1(u){const l=c=>c.replace(/.*[/\\]([^/\\]+)/,"$1"),a=c=>X.jsx("option",{value:c.id,children:l(c.label)},c.id),s=new Map;for(const c of u){let o=s.get(c.group||"Debugger");o||(o=[],s.set(c.group||"Debugger",o)),o.push(c)}return[...s.entries()].map(([c,o])=>X.jsx("optgroup",{label:c,children:o.filter(h=>(h.group||"Debugger")===c).map(h=>a(h))},c))}function ev(){return{id:"default",isRecorded:!1,text:"",language:"javascript",label:"",highlight:[]}}const Dt=he.forwardRef(function({children:l,title:a="",icon:s,disabled:c=!1,toggled:o=!1,onClick:h=()=>{},style:m,testId:p,className:g,ariaLabel:b,errorBadge:v},O){const E=he.useId();return X.jsxs("button",{ref:O,className:Ol(g,"toolbar-button",s,o&&"toggled"),onMouseDown:dg,onClick:h,onDoubleClick:dg,title:a,disabled:!!c,style:m,"data-testid":p,"aria-label":b||a,"aria-describedby":v?E:void 0,children:[s&&X.jsx("span",{className:`codicon codicon-${s}`,style:l?{marginRight:5}:{}}),l,v&&X.jsx("span",{id:E,className:"toolbar-button-error-badge",title:v,"aria-label":v})]})}),hg=({style:u})=>X.jsx("div",{className:"toolbar-separator",style:u}),dg=u=>{u.stopPropagation(),u.preventDefault()};function tv(u){if(u<0||!isFinite(u))return"-";if(u===0)return"0ms";if(u<1e3)return u.toFixed(0)+"ms";const l=u/1e3;if(l<60)return l.toFixed(1)+"s";const a=l/60;if(a<60)return a.toFixed(1)+"m";const s=a/60;return s<24?s.toFixed(1)+"h":(s/24).toFixed(1)+"d"}const We=function(u,l,a){return u>=l&&u<=a};function bt(u){return We(u,48,57)}function mg(u){return bt(u)||We(u,65,70)||We(u,97,102)}function nv(u){return We(u,65,90)}function lv(u){return We(u,97,122)}function iv(u){return nv(u)||lv(u)}function av(u){return u>=128}function uu(u){return iv(u)||av(u)||u===95}function gg(u){return uu(u)||bt(u)||u===45}function sv(u){return We(u,0,8)||u===11||We(u,14,31)||u===127}function cu(u){return u===10}function En(u){return cu(u)||u===9||u===32}const uv=1114111;class Df extends Error{constructor(l){super(l),this.name="InvalidCharacterError"}}function cv(u){const l=[];for(let a=0;a<u.length;a++){let s=u.charCodeAt(a);if(s===13&&u.charCodeAt(a+1)===10&&(s=10,a++),(s===13||s===12)&&(s=10),s===0&&(s=65533),We(s,55296,56319)&&We(u.charCodeAt(a+1),56320,57343)){const c=s-55296,o=u.charCodeAt(a+1)-56320;s=Math.pow(2,16)+c*Math.pow(2,10)+o,a++}l.push(s)}return l}function Fe(u){if(u<=65535)return String.fromCharCode(u);u-=Math.pow(2,16);const l=Math.floor(u/Math.pow(2,10))+55296,a=u%Math.pow(2,10)+56320;return String.fromCharCode(l)+String.fromCharCode(a)}function rv(u){const l=cv(u);let a=-1;const s=[];let c;const o=function($){return $>=l.length?-1:l[$]},h=function($){if($===void 0&&($=1),$>3)throw"Spec Error: no more than three codepoints of lookahead.";return o(a+$)},m=function($){return $===void 0&&($=1),a+=$,c=o(a),!0},p=function(){return a-=1,!0},g=function($){return $===void 0&&($=c),$===-1},b=function(){if(v(),m(),En(c)){for(;En(h());)m();return new wf}else{if(c===34)return x();if(c===35)if(gg(h())||M(h(1),h(2))){const $=new Qg("");return K(h(1),h(2),h(3))&&($.type="id"),$.value=k(),$}else return new ut(c);else return c===36?h()===61?(m(),new dv):new ut(c):c===39?x():c===40?new Yg:c===41?new $g:c===42?h()===61?(m(),new mv):new ut(c):c===43?W()?(p(),O()):new ut(c):c===44?new Bg:c===45?W()?(p(),O()):h(1)===45&&h(2)===62?(m(2),new Ug):Q()?(p(),E()):new ut(c):c===46?W()?(p(),O()):new ut(c):c===58?new Rg:c===59?new jg:c===60?h(1)===33&&h(2)===45&&h(3)===45?(m(3),new Lg):new ut(c):c===64?K(h(1),h(2),h(3))?new Vg(k()):new ut(c):c===91?new Hg:c===92?R()?(p(),E()):new ut(c):c===93?new Af:c===94?h()===61?(m(),new hv):new ut(c):c===123?new kg:c===124?h()===61?(m(),new ov):h()===124?(m(),new Kg):new ut(c):c===125?new qg:c===126?h()===61?(m(),new fv):new ut(c):bt(c)?(p(),O()):uu(c)?(p(),E()):g()?new fu:new ut(c)}},v=function(){for(;h(1)===47&&h(2)===42;)for(m(2);;)if(m(),c===42&&h()===47){m();break}else if(g())return},O=function(){const $=V();if(K(h(1),h(2),h(3))){const ee=new gv;return ee.value=$.value,ee.repr=$.repr,ee.type=$.type,ee.unit=k(),ee}else if(h()===37){m();const ee=new Wg;return ee.value=$.value,ee.repr=$.repr,ee}else{const ee=new Jg;return ee.value=$.value,ee.repr=$.repr,ee.type=$.type,ee}},E=function(){const $=k();if($.toLowerCase()==="url"&&h()===40){for(m();En(h(1))&&En(h(2));)m();return h()===34||h()===39?new ou($):En(h())&&(h(2)===34||h(2)===39)?new ou($):S()}else return h()===40?(m(),new ou($)):new Gg($)},x=function($){$===void 0&&($=c);let ee="";for(;m();){if(c===$||g())return new Xg(ee);if(cu(c))return p(),new Dg;c===92?g(h())||(cu(h())?m():ee+=Fe(w())):ee+=Fe(c)}throw new Error("Internal error")},S=function(){const $=new Zg("");for(;En(h());)m();if(g(h()))return $;for(;m();){if(c===41||g())return $;if(En(c)){for(;En(h());)m();return h()===41||g(h())?(m(),$):(ae(),new ru)}else{if(c===34||c===39||c===40||sv(c))return ae(),new ru;if(c===92)if(R())$.value+=Fe(w());else return ae(),new ru;else $.value+=Fe(c)}}throw new Error("Internal error")},w=function(){if(m(),mg(c)){const $=[c];for(let we=0;we<5&&mg(h());we++)m(),$.push(c);En(h())&&m();let ee=parseInt($.map(function(we){return String.fromCharCode(we)}).join(""),16);return ee>uv&&(ee=65533),ee}else return g()?65533:c},M=function($,ee){return!($!==92||cu(ee))},R=function(){return M(c,h())},K=function($,ee,we){return $===45?uu(ee)||ee===45||M(ee,we):uu($)?!0:$===92?M($,ee):!1},Q=function(){return K(c,h(1),h(2))},Z=function($,ee,we){return $===43||$===45?!!(bt(ee)||ee===46&&bt(we)):$===46?!!bt(ee):!!bt($)},W=function(){return Z(c,h(1),h(2))},k=function(){let $="";for(;m();)if(gg(c))$+=Fe(c);else if(R())$+=Fe(w());else return p(),$;throw new Error("Internal parse error")},V=function(){let $="",ee="integer";for((h()===43||h()===45)&&(m(),$+=Fe(c));bt(h());)m(),$+=Fe(c);if(h(1)===46&&bt(h(2)))for(m(),$+=Fe(c),m(),$+=Fe(c),ee="number";bt(h());)m(),$+=Fe(c);const we=h(1),se=h(2),D=h(3);if((we===69||we===101)&&bt(se))for(m(),$+=Fe(c),m(),$+=Fe(c),ee="number";bt(h());)m(),$+=Fe(c);else if((we===69||we===101)&&(se===43||se===45)&&bt(D))for(m(),$+=Fe(c),m(),$+=Fe(c),m(),$+=Fe(c),ee="number";bt(h());)m(),$+=Fe(c);const G=U($);return{type:ee,value:G,repr:$}},U=function($){return+$},ae=function(){for(;m();){if(c===41||g())return;R()&&w()}};let te=0;for(;!g(h());)if(s.push(b()),te++,te>l.length*2)throw new Error("I'm infinite-looping!");return s}class Ve{constructor(){this.tokenType=""}toJSON(){return{token:this.tokenType}}toString(){return this.tokenType}toSource(){return""+this}}class Dg extends Ve{constructor(){super(...arguments),this.tokenType="BADSTRING"}}class ru extends Ve{constructor(){super(...arguments),this.tokenType="BADURL"}}class wf extends Ve{constructor(){super(...arguments),this.tokenType="WHITESPACE"}toString(){return"WS"}toSource(){return" "}}class Lg extends Ve{constructor(){super(...arguments),this.tokenType="CDO"}toSource(){return"<!--"}}class Ug extends Ve{constructor(){super(...arguments),this.tokenType="CDC"}toSource(){return"-->"}}class Rg extends Ve{constructor(){super(...arguments),this.tokenType=":"}}class jg extends Ve{constructor(){super(...arguments),this.tokenType=";"}}class Bg extends Ve{constructor(){super(...arguments),this.tokenType=","}}class Ai extends Ve{constructor(){super(...arguments),this.value="",this.mirror=""}}class kg extends Ai{constructor(){super(),this.tokenType="{",this.value="{",this.mirror="}"}}class qg extends Ai{constructor(){super(),this.tokenType="}",this.value="}",this.mirror="{"}}class Hg extends Ai{constructor(){super(),this.tokenType="[",this.value="[",this.mirror="]"}}class Af extends Ai{constructor(){super(),this.tokenType="]",this.value="]",this.mirror="["}}class Yg extends Ai{constructor(){super(),this.tokenType="(",this.value="(",this.mirror=")"}}class $g extends Ai{constructor(){super(),this.tokenType=")",this.value=")",this.mirror="("}}class fv extends Ve{constructor(){super(...arguments),this.tokenType="~="}}class ov extends Ve{constructor(){super(...arguments),this.tokenType="|="}}class hv extends Ve{constructor(){super(...arguments),this.tokenType="^="}}class dv extends Ve{constructor(){super(...arguments),this.tokenType="$="}}class mv extends Ve{constructor(){super(...arguments),this.tokenType="*="}}class Kg extends Ve{constructor(){super(...arguments),this.tokenType="||"}}class fu extends Ve{constructor(){super(...arguments),this.tokenType="EOF"}toSource(){return""}}class ut extends Ve{constructor(l){super(),this.tokenType="DELIM",this.value="",this.value=Fe(l)}toString(){return"DELIM("+this.value+")"}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l}toSource(){return this.value==="\\"?`\\
`:this.value}}class Oi extends Ve{constructor(){super(...arguments),this.value=""}ASCIIMatch(l){return this.value.toLowerCase()===l.toLowerCase()}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l}}class Gg extends Oi{constructor(l){super(),this.tokenType="IDENT",this.value=l}toString(){return"IDENT("+this.value+")"}toSource(){return Ua(this.value)}}class ou extends Oi{constructor(l){super(),this.tokenType="FUNCTION",this.value=l,this.mirror=")"}toString(){return"FUNCTION("+this.value+")"}toSource(){return Ua(this.value)+"("}}class Vg extends Oi{constructor(l){super(),this.tokenType="AT-KEYWORD",this.value=l}toString(){return"AT("+this.value+")"}toSource(){return"@"+Ua(this.value)}}class Qg extends Oi{constructor(l){super(),this.tokenType="HASH",this.value=l,this.type="unrestricted"}toString(){return"HASH("+this.value+")"}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l.type=this.type,l}toSource(){return this.type==="id"?"#"+Ua(this.value):"#"+pv(this.value)}}class Xg extends Oi{constructor(l){super(),this.tokenType="STRING",this.value=l}toString(){return'"'+Ig(this.value)+'"'}}class Zg extends Oi{constructor(l){super(),this.tokenType="URL",this.value=l}toString(){return"URL("+this.value+")"}toSource(){return'url("'+Ig(this.value)+'")'}}class Jg extends Ve{constructor(){super(),this.tokenType="NUMBER",this.type="integer",this.repr=""}toString(){return this.type==="integer"?"INT("+this.value+")":"NUMBER("+this.value+")"}toJSON(){const l=super.toJSON();return l.value=this.value,l.type=this.type,l.repr=this.repr,l}toSource(){return this.repr}}class Wg extends Ve{constructor(){super(),this.tokenType="PERCENTAGE",this.repr=""}toString(){return"PERCENTAGE("+this.value+")"}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l.repr=this.repr,l}toSource(){return this.repr+"%"}}class gv extends Ve{constructor(){super(),this.tokenType="DIMENSION",this.type="integer",this.repr="",this.unit=""}toString(){return"DIM("+this.value+","+this.unit+")"}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l.type=this.type,l.repr=this.repr,l.unit=this.unit,l}toSource(){const l=this.repr;let a=Ua(this.unit);return a[0].toLowerCase()==="e"&&(a[1]==="-"||We(a.charCodeAt(1),48,57))&&(a="\\65 "+a.slice(1,a.length)),l+a}}function Ua(u){u=""+u;let l="";const a=u.charCodeAt(0);for(let s=0;s<u.length;s++){const c=u.charCodeAt(s);if(c===0)throw new Df("Invalid character: the input contains U+0000.");We(c,1,31)||c===127||s===0&&We(c,48,57)||s===1&&We(c,48,57)&&a===45?l+="\\"+c.toString(16)+" ":c>=128||c===45||c===95||We(c,48,57)||We(c,65,90)||We(c,97,122)?l+=u[s]:l+="\\"+u[s]}return l}function pv(u){u=""+u;let l="";for(let a=0;a<u.length;a++){const s=u.charCodeAt(a);if(s===0)throw new Df("Invalid character: the input contains U+0000.");s>=128||s===45||s===95||We(s,48,57)||We(s,65,90)||We(s,97,122)?l+=u[a]:l+="\\"+s.toString(16)+" "}return l}function Ig(u){u=""+u;let l="";for(let a=0;a<u.length;a++){const s=u.charCodeAt(a);if(s===0)throw new Df("Invalid character: the input contains U+0000.");We(s,1,31)||s===127?l+="\\"+s.toString(16)+" ":s===34||s===92?l+="\\"+u[a]:l+=u[a]}return l}class St extends Error{}function yv(u,l){let a;try{a=rv(u),a[a.length-1]instanceof fu||a.push(new fu)}catch(U){const ae=U.message+` while parsing css selector "${u}". Did you mean to CSS.escape it?`,te=(U.stack||"").indexOf(U.message);throw te!==-1&&(U.stack=U.stack.substring(0,te)+ae+U.stack.substring(te+U.message.length)),U.message=ae,U}const s=a.find(U=>U instanceof Vg||U instanceof Dg||U instanceof ru||U instanceof Kg||U instanceof Lg||U instanceof Ug||U instanceof jg||U instanceof kg||U instanceof qg||U instanceof Zg||U instanceof Wg);if(s)throw new St(`Unsupported token "${s.toSource()}" while parsing css selector "${u}". Did you mean to CSS.escape it?`);let c=0;const o=new Set;function h(){return new St(`Unexpected token "${a[c].toSource()}" while parsing css selector "${u}". Did you mean to CSS.escape it?`)}function m(){for(;a[c]instanceof wf;)c++}function p(U=c){return a[U]instanceof Gg}function g(U=c){return a[U]instanceof Xg}function b(U=c){return a[U]instanceof Jg}function v(U=c){return a[U]instanceof Bg}function O(U=c){return a[U]instanceof Yg}function E(U=c){return a[U]instanceof $g}function x(U=c){return a[U]instanceof ou}function S(U=c){return a[U]instanceof ut&&a[U].value==="*"}function w(U=c){return a[U]instanceof fu}function M(U=c){return a[U]instanceof ut&&[">","+","~"].includes(a[U].value)}function R(U=c){return v(U)||E(U)||w(U)||M(U)||a[U]instanceof wf}function K(){const U=[Q()];for(;m(),!!v();)c++,U.push(Q());return U}function Q(){return m(),b()||g()?a[c++].value:Z()}function Z(){const U={simples:[]};for(m(),M()?U.simples.push({selector:{functions:[{name:"scope",args:[]}]},combinator:""}):U.simples.push({selector:W(),combinator:""});;){if(m(),M())U.simples[U.simples.length-1].combinator=a[c++].value,m();else if(R())break;U.simples.push({combinator:"",selector:W()})}return U}function W(){let U="";const ae=[];for(;!R();)if(p()||S())U+=a[c++].toSource();else if(a[c]instanceof Qg)U+=a[c++].toSource();else if(a[c]instanceof ut&&a[c].value===".")if(c++,p())U+="."+a[c++].toSource();else throw h();else if(a[c]instanceof Rg)if(c++,p())if(!l.has(a[c].value.toLowerCase()))U+=":"+a[c++].toSource();else{const te=a[c++].value.toLowerCase();ae.push({name:te,args:[]}),o.add(te)}else if(x()){const te=a[c++].value.toLowerCase();if(l.has(te)?(ae.push({name:te,args:K()}),o.add(te)):U+=`:${te}(${k()})`,m(),!E())throw h();c++}else throw h();else if(a[c]instanceof Hg){for(U+="[",c++;!(a[c]instanceof Af)&&!w();)U+=a[c++].toSource();if(!(a[c]instanceof Af))throw h();U+="]",c++}else throw h();if(!U&&!ae.length)throw h();return{css:U||void 0,functions:ae}}function k(){let U="",ae=1;for(;!w()&&((O()||x())&&ae++,E()&&ae--,!!ae);)U+=a[c++].toSource();return U}const V=K();if(!w())throw h();if(V.some(U=>typeof U!="object"||!("simples"in U)))throw new St(`Error while parsing css selector "${u}". Did you mean to CSS.escape it?`);return{selector:V,names:Array.from(o)}}const pg=new Set(["internal:has","internal:has-not","internal:and","internal:or","internal:chain","left-of","right-of","above","below","near"]),vv=new Set(["left-of","right-of","above","below","near"]),bv=new Set(["not","is","where","has","scope","light","visible","text","text-matches","text-is","has-text","above","below","right-of","left-of","near","nth-match"]);function Fg(u){const l=Tv(u),a=[];for(const s of l.parts){if(s.name==="css"||s.name==="css:light"){s.name==="css:light"&&(s.body=":light("+s.body+")");const c=yv(s.body,bv);a.push({name:"css",body:c.selector,source:s.body});continue}if(pg.has(s.name)){let c,o;try{const g=JSON.parse("["+s.body+"]");if(!Array.isArray(g)||g.length<1||g.length>2||typeof g[0]!="string")throw new St(`Malformed selector: ${s.name}=`+s.body);if(c=g[0],g.length===2){if(typeof g[1]!="number"||!vv.has(s.name))throw new St(`Malformed selector: ${s.name}=`+s.body);o=g[1]}}catch{throw new St(`Malformed selector: ${s.name}=`+s.body)}const h={name:s.name,source:s.body,body:{parsed:Fg(c),distance:o}},m=[...h.body.parsed.parts].reverse().find(g=>g.name==="internal:control"&&g.body==="enter-frame"),p=m?h.body.parsed.parts.indexOf(m):-1;p!==-1&&Sv(h.body.parsed.parts.slice(0,p+1),a.slice(0,p+1))&&h.body.parsed.parts.splice(0,p+1),a.push(h);continue}a.push({...s,source:s.body})}if(pg.has(a[0].name))throw new St(`"${a[0].name}" selector cannot be first`);return{capture:l.capture,parts:a}}function Sv(u,l){return In({parts:u})===In({parts:l})}function In(u,l){return typeof u=="string"?u:u.parts.map((a,s)=>{let c=!0;!l&&s!==u.capture&&(a.name==="css"||a.name==="xpath"&&a.source.startsWith("//")||a.source.startsWith(".."))&&(c=!1);const o=c?a.name+"=":"";return`${s===u.capture?"*":""}${o}${a.source}`}).join(" >> ")}function Tv(u){let l=0,a,s=0;const c={parts:[]},o=()=>{const m=u.substring(s,l).trim(),p=m.indexOf("=");let g,b;p!==-1&&m.substring(0,p).trim().match(/^[a-zA-Z_0-9-+:*]+$/)?(g=m.substring(0,p).trim(),b=m.substring(p+1)):m.length>1&&m[0]==='"'&&m[m.length-1]==='"'||m.length>1&&m[0]==="'"&&m[m.length-1]==="'"?(g="text",b=m):/^\(*\/\//.test(m)||m.startsWith("..")?(g="xpath",b=m):(g="css",b=m);let v=!1;if(g[0]==="*"&&(v=!0,g=g.substring(1)),c.parts.push({name:g,body:b}),v){if(c.capture!==void 0)throw new St("Only one of the selectors can capture using * modifier");c.capture=c.parts.length-1}};if(!u.includes(">>"))return l=u.length,o(),c;const h=()=>{const p=u.substring(s,l).match(/^\s*text\s*=(.*)$/);return!!p&&!!p[1]};for(;l<u.length;){const m=u[l];m==="\\"&&l+1<u.length?l+=2:m===a?(a=void 0,l++):!a&&(m==='"'||m==="'"||m==="`")&&!h()?(a=m,l++):!a&&m===">"&&u[l+1]===">"?(o(),l+=2,s=l):l++}return o(),c}function of(u,l){let a=0,s=u.length===0;const c=()=>u[a]||"",o=()=>{const w=c();return++a,s=a>=u.length,w},h=w=>{throw s?new St(`Unexpected end of selector while parsing selector \`${u}\``):new St(`Error while parsing selector \`${u}\` - unexpected symbol "${c()}" at position ${a}`+(w?" during "+w:""))};function m(){for(;!s&&/\s/.test(c());)o()}function p(w){return w>="€"||w>="0"&&w<="9"||w>="A"&&w<="Z"||w>="a"&&w<="z"||w>="0"&&w<="9"||w==="_"||w==="-"}function g(){let w="";for(m();!s&&p(c());)w+=o();return w}function b(w){let M=o();for(M!==w&&h("parsing quoted string");!s&&c()!==w;)c()==="\\"&&o(),M+=o();return c()!==w&&h("parsing quoted string"),M+=o(),M}function v(){o()!=="/"&&h("parsing regular expression");let w="",M=!1;for(;!s;){if(c()==="\\")w+=o(),s&&h("parsing regular expression");else if(M&&c()==="]")M=!1;else if(!M&&c()==="[")M=!0;else if(!M&&c()==="/")break;w+=o()}o()!=="/"&&h("parsing regular expression");let R="";for(;!s&&c().match(/[dgimsuy]/);)R+=o();try{return new RegExp(w,R)}catch(K){throw new St(`Error while parsing selector \`${u}\`: ${K.message}`)}}function O(){let w="";return m(),c()==="'"||c()==='"'?w=b(c()).slice(1,-1):w=g(),w||h("parsing property path"),w}function E(){m();let w="";return s||(w+=o()),!s&&w!=="="&&(w+=o()),["=","*=","^=","$=","|=","~="].includes(w)||h("parsing operator"),w}function x(){o();const w=[];for(w.push(O()),m();c()===".";)o(),w.push(O()),m();if(c()==="]")return o(),{name:w.join("."),jsonPath:w,op:"<truthy>",value:null,caseSensitive:!1};const M=E();let R,K=!0;if(m(),c()==="/"){if(M!=="=")throw new St(`Error while parsing selector \`${u}\` - cannot use ${M} in attribute with regular expression`);R=v()}else if(c()==="'"||c()==='"')R=b(c()).slice(1,-1),m(),c()==="i"||c()==="I"?(K=!1,o()):(c()==="s"||c()==="S")&&(K=!0,o());else{for(R="";!s&&(p(c())||c()==="+"||c()===".");)R+=o();R==="true"?R=!0:R==="false"&&(R=!1)}if(m(),c()!=="]"&&h("parsing attribute value"),o(),M!=="="&&typeof R!="string")throw new St(`Error while parsing selector \`${u}\` - cannot use ${M} in attribute with non-string matching value - ${R}`);return{name:w.join("."),jsonPath:w,op:M,value:R,caseSensitive:K}}const S={name:"",attributes:[]};for(S.name=g(),m();c()==="[";)S.attributes.push(x()),m();if(s||h(void 0),!S.name&&!S.attributes.length)throw new St(`Error while parsing selector \`${u}\` - selector cannot be empty`);return S}function wu(u,l="'"){const a=JSON.stringify(u),s=a.substring(1,a.length-1).replace(/\\"/g,'"');if(l==="'")return l+s.replace(/[']/g,"\\'")+l;if(l==='"')return l+s.replace(/["]/g,'\\"')+l;if(l==="`")return l+s.replace(/[`]/g,"\\`")+l;throw new Error("Invalid escape char")}function yu(u){return u.charAt(0).toUpperCase()+u.substring(1)}function Pg(u){return u.replace(/([a-z0-9])([A-Z])/g,"$1_$2").replace(/([A-Z])([A-Z][a-z])/g,"$1_$2").toLowerCase()}function Au(u){return u.replace(/(^|[^\\])(\\\\)*\\(['"`])/g,"$1$2$3")}function ep(u,l,a=!1){return Ev(u,l,a,1)[0]}function Ev(u,l,a=!1,s=20,c){try{return gi(new Cv[u](c),Fg(l),a,s)}catch{return[l]}}function gi(u,l,a=!1,s=20){const c=[...l.parts],o=[];let h=a?"frame-locator":"page";for(let m=0;m<c.length;m++){const p=c[m],g=h;if(h="locator",p.name==="internal:describe")continue;if(p.name==="nth"){p.body==="0"?o.push([u.generateLocator(g,"first",""),u.generateLocator(g,"nth","0")]):p.body==="-1"?o.push([u.generateLocator(g,"last",""),u.generateLocator(g,"nth","-1")]):o.push([u.generateLocator(g,"nth",p.body)]);continue}if(p.name==="visible"){o.push([u.generateLocator(g,"visible",p.body),u.generateLocator(g,"default",`visible=${p.body}`)]);continue}if(p.name==="internal:text"){const{exact:x,text:S}=Na(p.body);o.push([u.generateLocator(g,"text",S,{exact:x})]);continue}if(p.name==="internal:has-text"){const{exact:x,text:S}=Na(p.body);if(!x){o.push([u.generateLocator(g,"has-text",S,{exact:x})]);continue}}if(p.name==="internal:has-not-text"){const{exact:x,text:S}=Na(p.body);if(!x){o.push([u.generateLocator(g,"has-not-text",S,{exact:x})]);continue}}if(p.name==="internal:has"){const x=gi(u,p.body.parsed,!1,s);o.push(x.map(S=>u.generateLocator(g,"has",S)));continue}if(p.name==="internal:has-not"){const x=gi(u,p.body.parsed,!1,s);o.push(x.map(S=>u.generateLocator(g,"hasNot",S)));continue}if(p.name==="internal:and"){const x=gi(u,p.body.parsed,!1,s);o.push(x.map(S=>u.generateLocator(g,"and",S)));continue}if(p.name==="internal:or"){const x=gi(u,p.body.parsed,!1,s);o.push(x.map(S=>u.generateLocator(g,"or",S)));continue}if(p.name==="internal:chain"){const x=gi(u,p.body.parsed,!1,s);o.push(x.map(S=>u.generateLocator(g,"chain",S)));continue}if(p.name==="internal:label"){const{exact:x,text:S}=Na(p.body);o.push([u.generateLocator(g,"label",S,{exact:x})]);continue}if(p.name==="internal:role"){const x=of(p.body),S={attrs:[]};for(const w of x.attributes)if(w.name==="name"){if(S.exact!==void 0&&S.exact!==w.caseSensitive)throw new Error(`Conflicting exactness in internal:role selector: ${In({parts:[p]})}`);S.exact=w.caseSensitive,S.name=w.value}else if(w.name==="description"){if(S.exact!==void 0&&S.exact!==w.caseSensitive)throw new Error(`Conflicting exactness in internal:role selector: ${In({parts:[p]})}`);S.exact=w.caseSensitive,S.description=w.value}else w.name==="level"&&typeof w.value=="string"&&(w.value=+w.value),S.attrs.push({name:w.name==="include-hidden"?"includeHidden":w.name,value:w.value});o.push([u.generateLocator(g,"role",x.name,S)]);continue}if(p.name==="internal:testid"){const x=of(p.body),{value:S}=x.attributes[0];o.push([u.generateLocator(g,"test-id",S)]);continue}if(p.name==="internal:attr"){const x=of(p.body),{name:S,value:w,caseSensitive:M}=x.attributes[0],R=w,K=!!M;if(S==="placeholder"){o.push([u.generateLocator(g,"placeholder",R,{exact:K})]);continue}if(S==="alt"){o.push([u.generateLocator(g,"alt",R,{exact:K})]);continue}if(S==="title"){o.push([u.generateLocator(g,"title",R,{exact:K})]);continue}}if(p.name==="internal:control"&&p.body==="enter-frame"){const x=o[o.length-1],S=c[m-1],w=x.map(M=>u.chainLocators([M,u.generateLocator(g,"frame","")]));["xpath","css"].includes(S.name)&&w.push(u.generateLocator(g,"frame-locator",In({parts:[S]})),u.generateLocator(g,"frame-locator",In({parts:[S]},!0))),x.splice(0,x.length,...w),h="frame-locator";continue}const b=c[m+1],v=In({parts:[p]}),O=u.generateLocator(g,"default",v);if(b&&["internal:has-text","internal:has-not-text"].includes(b.name)){const{exact:x,text:S}=Na(b.body);if(!x){const w=u.generateLocator("locator",b.name==="internal:has-text"?"has-text":"has-not-text",S,{exact:x}),M={};b.name==="internal:has-text"?M.hasText=S:M.hasNotText=S;const R=u.generateLocator(g,"default",v,M);o.push([u.chainLocators([O,w]),R]),m++;continue}}let E;if(["xpath","css"].includes(p.name)){const x=In({parts:[p]},!0);E=u.generateLocator(g,"default",x)}o.push([O,E].filter(Boolean))}return wv(u,o,s)}function wv(u,l,a){const s=l.map(()=>""),c=[],o=h=>{if(h===l.length)return c.push(u.chainLocators(s)),c.length<a;for(const m of l[h])if(s[h]=m,!o(h+1))return!1;return!0};return o(0),c}function Na(u){let l=!1;const a=u.match(/^\/(.*)\/([igm]*)$/);return a?{text:new RegExp(a[1],a[2])}:(u.endsWith('"')?(u=JSON.parse(u),l=!0):u.endsWith('"s')?(u=JSON.parse(u.substring(0,u.length-1)),l=!0):u.endsWith('"i')&&(u=JSON.parse(u.substring(0,u.length-1)),l=!1),{exact:l,text:u})}class Av{constructor(l){this.preferredQuote=l}generateLocator(l,a,s,c={}){switch(a){case"default":return c.hasText!==void 0?`locator(${this.quote(s)}, { hasText: ${this.toHasText(c.hasText)} })`:c.hasNotText!==void 0?`locator(${this.quote(s)}, { hasNotText: ${this.toHasText(c.hasNotText)} })`:`locator(${this.quote(s)})`;case"frame-locator":return`frameLocator(${this.quote(s)})`;case"frame":return"contentFrame()";case"nth":return`nth(${s})`;case"first":return"first()";case"last":return"last()";case"visible":return`filter({ visible: ${s==="true"?"true":"false"} })`;case"role":const o=[];Ge(c.name)?o.push(`name: ${this.regexToSourceString(c.name)}`):typeof c.name=="string"&&o.push(`name: ${this.quote(c.name)}`),Ge(c.description)?o.push(`description: ${this.regexToSourceString(c.description)}`):typeof c.description=="string"&&o.push(`description: ${this.quote(c.description)}`),c.exact&&(typeof c.name=="string"||typeof c.description=="string")&&o.push("exact: true");for(const{name:m,value:p}of c.attrs)o.push(`${m}: ${typeof p=="string"?this.quote(p):p}`);const h=o.length?`, { ${o.join(", ")} }`:"";return`getByRole(${this.quote(s)}${h})`;case"has-text":return`filter({ hasText: ${this.toHasText(s)} })`;case"has-not-text":return`filter({ hasNotText: ${this.toHasText(s)} })`;case"has":return`filter({ has: ${s} })`;case"hasNot":return`filter({ hasNot: ${s} })`;case"and":return`and(${s})`;case"or":return`or(${s})`;case"chain":return`locator(${s})`;case"test-id":return`getByTestId(${this.toTestIdValue(s)})`;case"text":return this.toCallWithExact("getByText",s,!!c.exact);case"alt":return this.toCallWithExact("getByAltText",s,!!c.exact);case"placeholder":return this.toCallWithExact("getByPlaceholder",s,!!c.exact);case"label":return this.toCallWithExact("getByLabel",s,!!c.exact);case"title":return this.toCallWithExact("getByTitle",s,!!c.exact);default:throw new Error("Unknown selector kind "+a)}}chainLocators(l){return l.join(".")}regexToSourceString(l){return Au(String(l))}toCallWithExact(l,a,s){return Ge(a)?`${l}(${this.regexToSourceString(a)})`:s?`${l}(${this.quote(a)}, { exact: true })`:`${l}(${this.quote(a)})`}toHasText(l){return Ge(l)?this.regexToSourceString(l):this.quote(l)}toTestIdValue(l){return Ge(l)?this.regexToSourceString(l):this.quote(l)}quote(l){return wu(l,this.preferredQuote??"'")}}class Ov{generateLocator(l,a,s,c={}){switch(a){case"default":return c.hasText!==void 0?`locator(${this.quote(s)}, has_text=${this.toHasText(c.hasText)})`:c.hasNotText!==void 0?`locator(${this.quote(s)}, has_not_text=${this.toHasText(c.hasNotText)})`:`locator(${this.quote(s)})`;case"frame-locator":return`frame_locator(${this.quote(s)})`;case"frame":return"content_frame";case"nth":return`nth(${s})`;case"first":return"first";case"last":return"last";case"visible":return`filter(visible=${s==="true"?"True":"False"})`;case"role":const o=[];Ge(c.name)?o.push(`name=${this.regexToString(c.name)}`):typeof c.name=="string"&&o.push(`name=${this.quote(c.name)}`),Ge(c.description)?o.push(`description=${this.regexToString(c.description)}`):typeof c.description=="string"&&o.push(`description=${this.quote(c.description)}`),c.exact&&(typeof c.name=="string"||typeof c.description=="string")&&o.push("exact=True");for(const{name:m,value:p}of c.attrs){let g=typeof p=="string"?this.quote(p):p;typeof p=="boolean"&&(g=p?"True":"False"),o.push(`${Pg(m)}=${g}`)}const h=o.length?`, ${o.join(", ")}`:"";return`get_by_role(${this.quote(s)}${h})`;case"has-text":return`filter(has_text=${this.toHasText(s)})`;case"has-not-text":return`filter(has_not_text=${this.toHasText(s)})`;case"has":return`filter(has=${s})`;case"hasNot":return`filter(has_not=${s})`;case"and":return`and_(${s})`;case"or":return`or_(${s})`;case"chain":return`locator(${s})`;case"test-id":return`get_by_test_id(${this.toTestIdValue(s)})`;case"text":return this.toCallWithExact("get_by_text",s,!!c.exact);case"alt":return this.toCallWithExact("get_by_alt_text",s,!!c.exact);case"placeholder":return this.toCallWithExact("get_by_placeholder",s,!!c.exact);case"label":return this.toCallWithExact("get_by_label",s,!!c.exact);case"title":return this.toCallWithExact("get_by_title",s,!!c.exact);default:throw new Error("Unknown selector kind "+a)}}chainLocators(l){return l.join(".")}regexToString(l){const a=l.flags.includes("i")?", re.IGNORECASE":"";return`re.compile(r"${Au(l.source).replace(/\\\//,"/").replace(/"/g,'\\"')}"${a})`}toCallWithExact(l,a,s){return Ge(a)?`${l}(${this.regexToString(a)})`:s?`${l}(${this.quote(a)}, exact=True)`:`${l}(${this.quote(a)})`}toHasText(l){return Ge(l)?this.regexToString(l):`${this.quote(l)}`}toTestIdValue(l){return Ge(l)?this.regexToString(l):this.quote(l)}quote(l){return wu(l,'"')}}class _v{generateLocator(l,a,s,c={}){let o;switch(l){case"page":o="Page";break;case"frame-locator":o="FrameLocator";break;case"locator":o="Locator";break}switch(a){case"default":return c.hasText!==void 0?`locator(${this.quote(s)}, new ${o}.LocatorOptions().setHasText(${this.toHasText(c.hasText)}))`:c.hasNotText!==void 0?`locator(${this.quote(s)}, new ${o}.LocatorOptions().setHasNotText(${this.toHasText(c.hasNotText)}))`:`locator(${this.quote(s)})`;case"frame-locator":return`frameLocator(${this.quote(s)})`;case"frame":return"contentFrame()";case"nth":return`nth(${s})`;case"first":return"first()";case"last":return"last()";case"visible":return`filter(new ${o}.FilterOptions().setVisible(${s==="true"?"true":"false"}))`;case"role":const h=[];Ge(c.name)?h.push(`.setName(${this.regexToString(c.name)})`):typeof c.name=="string"&&h.push(`.setName(${this.quote(c.name)})`),Ge(c.description)?h.push(`.setDescription(${this.regexToString(c.description)})`):typeof c.description=="string"&&h.push(`.setDescription(${this.quote(c.description)})`),c.exact&&(typeof c.name=="string"||typeof c.description=="string")&&h.push(".setExact(true)");for(const{name:p,value:g}of c.attrs)h.push(`.set${yu(p)}(${typeof g=="string"?this.quote(g):g})`);const m=h.length?`, new ${o}.GetByRoleOptions()${h.join("")}`:"";return`getByRole(AriaRole.${Pg(s).toUpperCase()}${m})`;case"has-text":return`filter(new ${o}.FilterOptions().setHasText(${this.toHasText(s)}))`;case"has-not-text":return`filter(new ${o}.FilterOptions().setHasNotText(${this.toHasText(s)}))`;case"has":return`filter(new ${o}.FilterOptions().setHas(${s}))`;case"hasNot":return`filter(new ${o}.FilterOptions().setHasNot(${s}))`;case"and":return`and(${s})`;case"or":return`or(${s})`;case"chain":return`locator(${s})`;case"test-id":return`getByTestId(${this.toTestIdValue(s)})`;case"text":return this.toCallWithExact(o,"getByText",s,!!c.exact);case"alt":return this.toCallWithExact(o,"getByAltText",s,!!c.exact);case"placeholder":return this.toCallWithExact(o,"getByPlaceholder",s,!!c.exact);case"label":return this.toCallWithExact(o,"getByLabel",s,!!c.exact);case"title":return this.toCallWithExact(o,"getByTitle",s,!!c.exact);default:throw new Error("Unknown selector kind "+a)}}chainLocators(l){return l.join(".")}regexToString(l){const a=l.flags.includes("i")?", Pattern.CASE_INSENSITIVE":"";return`Pattern.compile(${this.quote(Au(l.source))}${a})`}toCallWithExact(l,a,s,c){return Ge(s)?`${a}(${this.regexToString(s)})`:c?`${a}(${this.quote(s)}, new ${l}.${yu(a)}Options().setExact(true))`:`${a}(${this.quote(s)})`}toHasText(l){return Ge(l)?this.regexToString(l):this.quote(l)}toTestIdValue(l){return Ge(l)?this.regexToString(l):this.quote(l)}quote(l){return wu(l,'"')}}class Nv{generateLocator(l,a,s,c={}){switch(a){case"default":return c.hasText!==void 0?`Locator(${this.quote(s)}, new() { ${this.toHasText(c.hasText)} })`:c.hasNotText!==void 0?`Locator(${this.quote(s)}, new() { ${this.toHasNotText(c.hasNotText)} })`:`Locator(${this.quote(s)})`;case"frame-locator":return`FrameLocator(${this.quote(s)})`;case"frame":return"ContentFrame";case"nth":return`Nth(${s})`;case"first":return"First";case"last":return"Last";case"visible":return`Filter(new() { Visible = ${s==="true"?"true":"false"} })`;case"role":const o=[];Ge(c.name)?o.push(`NameRegex = ${this.regexToString(c.name)}`):typeof c.name=="string"&&o.push(`Name = ${this.quote(c.name)}`),Ge(c.description)?o.push(`DescriptionRegex = ${this.regexToString(c.description)}`):typeof c.description=="string"&&o.push(`Description = ${this.quote(c.description)}`),c.exact&&(typeof c.name=="string"||typeof c.description=="string")&&o.push("Exact = true");for(const{name:m,value:p}of c.attrs)o.push(`${yu(m)} = ${typeof p=="string"?this.quote(p):p}`);const h=o.length?`, new() { ${o.join(", ")} }`:"";return`GetByRole(AriaRole.${yu(s)}${h})`;case"has-text":return`Filter(new() { ${this.toHasText(s)} })`;case"has-not-text":return`Filter(new() { ${this.toHasNotText(s)} })`;case"has":return`Filter(new() { Has = ${s} })`;case"hasNot":return`Filter(new() { HasNot = ${s} })`;case"and":return`And(${s})`;case"or":return`Or(${s})`;case"chain":return`Locator(${s})`;case"test-id":return`GetByTestId(${this.toTestIdValue(s)})`;case"text":return this.toCallWithExact("GetByText",s,!!c.exact);case"alt":return this.toCallWithExact("GetByAltText",s,!!c.exact);case"placeholder":return this.toCallWithExact("GetByPlaceholder",s,!!c.exact);case"label":return this.toCallWithExact("GetByLabel",s,!!c.exact);case"title":return this.toCallWithExact("GetByTitle",s,!!c.exact);default:throw new Error("Unknown selector kind "+a)}}chainLocators(l){return l.join(".")}regexToString(l){const a=l.flags.includes("i")?", RegexOptions.IgnoreCase":"";return`new Regex(${this.quote(Au(l.source))}${a})`}toCallWithExact(l,a,s){return Ge(a)?`${l}(${this.regexToString(a)})`:s?`${l}(${this.quote(a)}, new() { Exact = true })`:`${l}(${this.quote(a)})`}toHasText(l){return Ge(l)?`HasTextRegex = ${this.regexToString(l)}`:`HasText = ${this.quote(l)}`}toTestIdValue(l){return Ge(l)?this.regexToString(l):this.quote(l)}toHasNotText(l){return Ge(l)?`HasNotTextRegex = ${this.regexToString(l)}`:`HasNotText = ${this.quote(l)}`}quote(l){return wu(l,'"')}}class Mv{generateLocator(l,a,s,c={}){return JSON.stringify({kind:a,body:s,options:c})}chainLocators(l){const a=l.map(s=>JSON.parse(s));for(let s=0;s<a.length-1;++s)a[s].next=a[s+1];return JSON.stringify(a[0])}}const Cv={javascript:Av,python:Ov,java:_v,csharp:Nv,jsonl:Mv};function Ge(u){return u instanceof RegExp}const zv=({language:u,log:l})=>{const a=he.useRef(null),[s,c]=he.useState(new Map);return he.useLayoutEffect(()=>{var o;l.find(h=>h.reveal)&&((o=a.current)==null||o.scrollIntoView({block:"center",inline:"nearest"}))},[a,l]),X.jsxs("div",{className:"call-log",style:{flex:"auto"},children:[l.map(o=>{const h=s.get(o.id),m=typeof h=="boolean"?h:o.status!=="done",p=o.params.selector?ep(u,o.params.selector):null;let g=o.title,b="";return o.title.startsWith("expect.to")||o.title.startsWith("expect.not.to")?(g="expect(",b=`).${o.title.substring(7)}()`):o.title.startsWith("locator.")?(g="",b=`.${o.title.substring(8)}()`):(p||o.params.url)&&(g=o.title+"(",b=")"),X.jsxs("div",{className:Ol("call-log-call",o.status),children:[X.jsxs("div",{className:"call-log-call-header",children:[X.jsx("span",{className:Ol("codicon",`codicon-chevron-${m?"down":"right"}`),style:{cursor:"pointer"},onClick:()=>{const v=new Map(s);v.set(o.id,!m),c(v)}}),g,o.params.url?X.jsx("span",{className:"call-log-details",children:X.jsx("span",{className:"call-log-url",title:o.params.url,children:o.params.url})}):void 0,p?X.jsx("span",{className:"call-log-details",children:X.jsx("span",{className:"call-log-selector",title:`page.${p}`,children:`page.${p}`})}):void 0,b,X.jsx("span",{className:Ol("codicon",xv(o))}),typeof o.duration=="number"?X.jsxs("span",{className:"call-log-time",children:["— ",tv(o.duration)]}):void 0]}),(m?o.messages:[]).map((v,O)=>X.jsx("div",{className:"call-log-message",children:v.trim()},O)),!!o.error&&X.jsx("div",{className:"call-log-message error",hidden:!m,children:o.error})]},o.id)}),X.jsx("div",{ref:a})]})};function xv(u){switch(u.status){case"done":return"codicon-check";case"in-progress":return"codicon-clock";case"paused":return"codicon-debug-pause";case"error":return"codicon-error"}}const Lf=Symbol.for("yaml.alias"),Of=Symbol.for("yaml.document"),Pn=Symbol.for("yaml.map"),tp=Symbol.for("yaml.pair"),nn=Symbol.for("yaml.scalar"),_i=Symbol.for("yaml.seq"),Vt=Symbol.for("yaml.node.type"),tl=u=>!!u&&typeof u=="object"&&u[Vt]===Lf,Nl=u=>!!u&&typeof u=="object"&&u[Vt]===Of,Ni=u=>!!u&&typeof u=="object"&&u[Vt]===Pn,je=u=>!!u&&typeof u=="object"&&u[Vt]===tp,De=u=>!!u&&typeof u=="object"&&u[Vt]===nn,Mi=u=>!!u&&typeof u=="object"&&u[Vt]===_i;function Be(u){if(u&&typeof u=="object")switch(u[Vt]){case Pn:case _i:return!0}return!1}function ke(u){if(u&&typeof u=="object")switch(u[Vt]){case Lf:case Pn:case nn:case _i:return!0}return!1}const np=u=>(De(u)||Be(u))&&!!u.anchor,Tt=Symbol("break visit"),lp=Symbol("skip children"),tn=Symbol("remove node");function Ml(u,l){const a=ip(l);Nl(u)?pi(null,u.contents,a,Object.freeze([u]))===tn&&(u.contents=null):pi(null,u,a,Object.freeze([]))}Ml.BREAK=Tt;Ml.SKIP=lp;Ml.REMOVE=tn;function pi(u,l,a,s){const c=ap(u,l,a,s);if(ke(c)||je(c))return sp(u,s,c),pi(u,c,a,s);if(typeof c!="symbol"){if(Be(l)){s=Object.freeze(s.concat(l));for(let o=0;o<l.items.length;++o){const h=pi(o,l.items[o],a,s);if(typeof h=="number")o=h-1;else{if(h===Tt)return Tt;h===tn&&(l.items.splice(o,1),o-=1)}}}else if(je(l)){s=Object.freeze(s.concat(l));const o=pi("key",l.key,a,s);if(o===Tt)return Tt;o===tn&&(l.key=null);const h=pi("value",l.value,a,s);if(h===Tt)return Tt;h===tn&&(l.value=null)}}return c}async function Ou(u,l){const a=ip(l);Nl(u)?await yi(null,u.contents,a,Object.freeze([u]))===tn&&(u.contents=null):await yi(null,u,a,Object.freeze([]))}Ou.BREAK=Tt;Ou.SKIP=lp;Ou.REMOVE=tn;async function yi(u,l,a,s){const c=await ap(u,l,a,s);if(ke(c)||je(c))return sp(u,s,c),yi(u,c,a,s);if(typeof c!="symbol"){if(Be(l)){s=Object.freeze(s.concat(l));for(let o=0;o<l.items.length;++o){const h=await yi(o,l.items[o],a,s);if(typeof h=="number")o=h-1;else{if(h===Tt)return Tt;h===tn&&(l.items.splice(o,1),o-=1)}}}else if(je(l)){s=Object.freeze(s.concat(l));const o=await yi("key",l.key,a,s);if(o===Tt)return Tt;o===tn&&(l.key=null);const h=await yi("value",l.value,a,s);if(h===Tt)return Tt;h===tn&&(l.value=null)}}return c}function ip(u){return typeof u=="object"&&(u.Collection||u.Node||u.Value)?Object.assign({Alias:u.Node,Map:u.Node,Scalar:u.Node,Seq:u.Node},u.Value&&{Map:u.Value,Scalar:u.Value,Seq:u.Value},u.Collection&&{Map:u.Collection,Seq:u.Collection},u):u}function ap(u,l,a,s){var c,o,h,m,p;if(typeof a=="function")return a(u,l,s);if(Ni(l))return(c=a.Map)==null?void 0:c.call(a,u,l,s);if(Mi(l))return(o=a.Seq)==null?void 0:o.call(a,u,l,s);if(je(l))return(h=a.Pair)==null?void 0:h.call(a,u,l,s);if(De(l))return(m=a.Scalar)==null?void 0:m.call(a,u,l,s);if(tl(l))return(p=a.Alias)==null?void 0:p.call(a,u,l,s)}function sp(u,l,a){const s=l[l.length-1];if(Be(s))s.items[u]=a;else if(je(s))u==="key"?s.key=a:s.value=a;else if(Nl(s))s.contents=a;else{const c=tl(s)?"alias":"scalar";throw new Error(`Cannot replace node with ${c} parent`)}}const Dv={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},Lv=u=>u.replace(/[!,[\]{}]/g,l=>Dv[l]);class ot{constructor(l,a){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},ot.defaultYaml,l),this.tags=Object.assign({},ot.defaultTags,a)}clone(){const l=new ot(this.yaml,this.tags);return l.docStart=this.docStart,l}atDocument(){const l=new ot(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:ot.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},ot.defaultTags);break}return l}add(l,a){this.atNextDocument&&(this.yaml={explicit:ot.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},ot.defaultTags),this.atNextDocument=!1);const s=l.trim().split(/[ \t]+/),c=s.shift();switch(c){case"%TAG":{if(s.length!==2&&(a(0,"%TAG directive should contain exactly two parts"),s.length<2))return!1;const[o,h]=s;return this.tags[o]=h,!0}case"%YAML":{if(this.yaml.explicit=!0,s.length!==1)return a(0,"%YAML directive should contain exactly one part"),!1;const[o]=s;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{const h=/^\d+\.\d+$/.test(o);return a(6,`Unsupported YAML version ${o}`,h),!1}}default:return a(0,`Unknown directive ${c}`,!0),!1}}tagName(l,a){if(l==="!")return"!";if(l[0]!=="!")return a(`Not a valid tag: ${l}`),null;if(l[1]==="<"){const h=l.slice(2,-1);return h==="!"||h==="!!"?(a(`Verbatim tags aren't resolved, so ${l} is invalid.`),null):(l[l.length-1]!==">"&&a("Verbatim tags must end with a >"),h)}const[,s,c]=l.match(/^(.*!)([^!]*)$/s);c||a(`The ${l} tag has no suffix`);const o=this.tags[s];if(o)try{return o+decodeURIComponent(c)}catch(h){return a(String(h)),null}return s==="!"?l:(a(`Could not resolve tag: ${l}`),null)}tagString(l){for(const[a,s]of Object.entries(this.tags))if(l.startsWith(s))return a+Lv(l.substring(s.length));return l[0]==="!"?l:`!<${l}>`}toString(l){const a=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],s=Object.entries(this.tags);let c;if(l&&s.length>0&&ke(l.contents)){const o={};Ml(l.contents,(h,m)=>{ke(m)&&m.tag&&(o[m.tag]=!0)}),c=Object.keys(o)}else c=[];for(const[o,h]of s)o==="!!"&&h==="tag:yaml.org,2002:"||(!l||c.some(m=>m.startsWith(h)))&&a.push(`%TAG ${o} ${h}`);return a.join(`
`)}}ot.defaultYaml={explicit:!1,version:"1.2"};ot.defaultTags={"!!":"tag:yaml.org,2002:"};function up(u){if(/[\x00-\x19\s,[\]{}]/.test(u)){const a=`Anchor must not contain whitespace or control characters: ${JSON.stringify(u)}`;throw new Error(a)}return!0}function cp(u){const l=new Set;return Ml(u,{Value(a,s){s.anchor&&l.add(s.anchor)}}),l}function rp(u,l){for(let a=1;;++a){const s=`${u}${a}`;if(!l.has(s))return s}}function Uv(u,l){const a=[],s=new Map;let c=null;return{onAnchor:o=>{a.push(o),c??(c=cp(u));const h=rp(l,c);return c.add(h),h},setAnchors:()=>{for(const o of a){const h=s.get(o);if(typeof h=="object"&&h.anchor&&(De(h.node)||Be(h.node)))h.node.anchor=h.anchor;else{const m=new Error("Failed to resolve repeated object (this should not happen)");throw m.source=o,m}}},sourceObjects:s}}function vi(u,l,a,s){if(s&&typeof s=="object")if(Array.isArray(s))for(let c=0,o=s.length;c<o;++c){const h=s[c],m=vi(u,s,String(c),h);m===void 0?delete s[c]:m!==h&&(s[c]=m)}else if(s instanceof Map)for(const c of Array.from(s.keys())){const o=s.get(c),h=vi(u,s,c,o);h===void 0?s.delete(c):h!==o&&s.set(c,h)}else if(s instanceof Set)for(const c of Array.from(s)){const o=vi(u,s,c,c);o===void 0?s.delete(c):o!==c&&(s.delete(c),s.add(o))}else for(const[c,o]of Object.entries(s)){const h=vi(u,s,c,o);h===void 0?delete s[c]:h!==o&&(s[c]=h)}return u.call(l,a,s)}function Gt(u,l,a){if(Array.isArray(u))return u.map((s,c)=>Gt(s,String(c),a));if(u&&typeof u.toJSON=="function"){if(!a||!np(u))return u.toJSON(l,a);const s={aliasCount:0,count:1,res:void 0};a.anchors.set(u,s),a.onCreate=o=>{s.res=o,delete a.onCreate};const c=u.toJSON(l,a);return a.onCreate&&a.onCreate(c),c}return typeof u=="bigint"&&!(a!=null&&a.keep)?Number(u):u}class Uf{constructor(l){Object.defineProperty(this,Vt,{value:l})}clone(){const l=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(l.range=this.range.slice()),l}toJS(l,{mapAsMap:a,maxAliasCount:s,onAnchor:c,reviver:o}={}){if(!Nl(l))throw new TypeError("A document argument is required");const h={anchors:new Map,doc:l,keep:!0,mapAsMap:a===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},m=Gt(this,"",h);if(typeof c=="function")for(const{count:p,res:g}of h.anchors.values())c(g,p);return typeof o=="function"?vi(o,{"":m},"",m):m}}class _u extends Uf{constructor(l){super(Lf),this.source=l,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(l,a){let s;a!=null&&a.aliasResolveCache?s=a.aliasResolveCache:(s=[],Ml(l,{Node:(o,h)=>{(tl(h)||np(h))&&s.push(h)}}),a&&(a.aliasResolveCache=s));let c;for(const o of s){if(o===this)break;o.anchor===this.source&&(c=o)}return c}toJSON(l,a){if(!a)return{source:this.source};const{anchors:s,doc:c,maxAliasCount:o}=a,h=this.resolve(c,a);if(!h){const p=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(p)}let m=s.get(h);if(m||(Gt(h,null,a),m=s.get(h)),(m==null?void 0:m.res)===void 0){const p="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(p)}if(o>=0&&(m.count+=1,m.aliasCount===0&&(m.aliasCount=hu(c,h,s)),m.count*m.aliasCount>o)){const p="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(p)}return m.res}toString(l,a,s){const c=`*${this.source}`;if(l){if(up(this.source),l.options.verifyAliasOrder&&!l.anchors.has(this.source)){const o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(l.implicitKey)return`${c} `}return c}}function hu(u,l,a){if(tl(l)){const s=l.resolve(u),c=a&&s&&a.get(s);return c?c.count*c.aliasCount:0}else if(Be(l)){let s=0;for(const c of l.items){const o=hu(u,c,a);o>s&&(s=o)}return s}else if(je(l)){const s=hu(u,l.key,a),c=hu(u,l.value,a);return Math.max(s,c)}return 1}const fp=u=>!u||typeof u!="function"&&typeof u!="object";class ce extends Uf{constructor(l){super(nn),this.value=l}toJSON(l,a){return a!=null&&a.keep?this.value:Gt(this.value,l,a)}toString(){return String(this.value)}}ce.BLOCK_FOLDED="BLOCK_FOLDED";ce.BLOCK_LITERAL="BLOCK_LITERAL";ce.PLAIN="PLAIN";ce.QUOTE_DOUBLE="QUOTE_DOUBLE";ce.QUOTE_SINGLE="QUOTE_SINGLE";const Rv="tag:yaml.org,2002:";function jv(u,l,a){if(l){const s=a.filter(o=>o.tag===l),c=s.find(o=>!o.format)??s[0];if(!c)throw new Error(`Tag ${l} not found`);return c}return a.find(s=>{var c;return((c=s.identify)==null?void 0:c.call(s,u))&&!s.format})}function xa(u,l,a){var v,O,E;if(Nl(u)&&(u=u.contents),ke(u))return u;if(je(u)){const x=(O=(v=a.schema[Pn]).createNode)==null?void 0:O.call(v,a.schema,null,a);return x.items.push(u),x}(u instanceof String||u instanceof Number||u instanceof Boolean||typeof BigInt<"u"&&u instanceof BigInt)&&(u=u.valueOf());const{aliasDuplicateObjects:s,onAnchor:c,onTagObj:o,schema:h,sourceObjects:m}=a;let p;if(s&&u&&typeof u=="object"){if(p=m.get(u),p)return p.anchor??(p.anchor=c(u)),new _u(p.anchor);p={anchor:null,node:null},m.set(u,p)}l!=null&&l.startsWith("!!")&&(l=Rv+l.slice(2));let g=jv(u,l,h.tags);if(!g){if(u&&typeof u.toJSON=="function"&&(u=u.toJSON()),!u||typeof u!="object"){const x=new ce(u);return p&&(p.node=x),x}g=u instanceof Map?h[Pn]:Symbol.iterator in Object(u)?h[_i]:h[Pn]}o&&(o(g),delete a.onTagObj);const b=g!=null&&g.createNode?g.createNode(a.schema,u,a):typeof((E=g==null?void 0:g.nodeClass)==null?void 0:E.from)=="function"?g.nodeClass.from(a.schema,u,a):new ce(u);return l?b.tag=l:g.default||(b.tag=g.tag),p&&(p.node=b),b}function vu(u,l,a){let s=a;for(let c=l.length-1;c>=0;--c){const o=l[c];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){const h=[];h[o]=s,s=h}else s=new Map([[o,s]])}return xa(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:u,sourceObjects:new Map})}const Ca=u=>u==null||typeof u=="object"&&!!u[Symbol.iterator]().next().done;class op extends Uf{constructor(l,a){super(l),Object.defineProperty(this,"schema",{value:a,configurable:!0,enumerable:!1,writable:!0})}clone(l){const a=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return l&&(a.schema=l),a.items=a.items.map(s=>ke(s)||je(s)?s.clone(l):s),this.range&&(a.range=this.range.slice()),a}addIn(l,a){if(Ca(l))this.add(a);else{const[s,...c]=l,o=this.get(s,!0);if(Be(o))o.addIn(c,a);else if(o===void 0&&this.schema)this.set(s,vu(this.schema,c,a));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${c}`)}}deleteIn(l){const[a,...s]=l;if(s.length===0)return this.delete(a);const c=this.get(a,!0);if(Be(c))return c.deleteIn(s);throw new Error(`Expected YAML collection at ${a}. Remaining path: ${s}`)}getIn(l,a){const[s,...c]=l,o=this.get(s,!0);return c.length===0?!a&&De(o)?o.value:o:Be(o)?o.getIn(c,a):void 0}hasAllNullValues(l){return this.items.every(a=>{if(!je(a))return!1;const s=a.value;return s==null||l&&De(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(l){const[a,...s]=l;if(s.length===0)return this.has(a);const c=this.get(a,!0);return Be(c)?c.hasIn(s):!1}setIn(l,a){const[s,...c]=l;if(c.length===0)this.set(s,a);else{const o=this.get(s,!0);if(Be(o))o.setIn(c,a);else if(o===void 0&&this.schema)this.set(s,vu(this.schema,c,a));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${c}`)}}}const Bv=u=>u.replace(/^(?!$)(?: $)?/gm,"#");function wn(u,l){return/^\n+$/.test(u)?u.substring(1):l?u.replace(/^(?! *$)/gm,l):u}const El=(u,l,a)=>u.endsWith(`
`)?wn(a,l):a.includes(`
`)?`
`+wn(a,l):(u.endsWith(" ")?"":" ")+a,hp="flow",_f="block",du="quoted";function Nu(u,l,a="flow",{indentAtStart:s,lineWidth:c=80,minContentWidth:o=20,onFold:h,onOverflow:m}={}){if(!c||c<0)return u;c<o&&(o=0);const p=Math.max(1+o,1+c-l.length);if(u.length<=p)return u;const g=[],b={};let v=c-l.length;typeof s=="number"&&(s>c-Math.max(2,o)?g.push(0):v=c-s);let O,E,x=!1,S=-1,w=-1,M=-1;a===_f&&(S=yg(u,S,l.length),S!==-1&&(v=S+p));for(let K;K=u[S+=1];){if(a===du&&K==="\\"){switch(w=S,u[S+1]){case"x":S+=3;break;case"u":S+=5;break;case"U":S+=9;break;default:S+=1}M=S}if(K===`
`)a===_f&&(S=yg(u,S,l.length)),v=S+l.length+p,O=void 0;else{if(K===" "&&E&&E!==" "&&E!==`
`&&E!=="    "){const Q=u[S+1];Q&&Q!==" "&&Q!==`
`&&Q!=="    "&&(O=S)}if(S>=v)if(O)g.push(O),v=O+p,O=void 0;else if(a===du){for(;E===" "||E==="    ";)E=K,K=u[S+=1],x=!0;const Q=S>M+1?S-2:w-1;if(b[Q])return u;g.push(Q),b[Q]=!0,v=Q+p,O=void 0}else x=!0}E=K}if(x&&m&&m(),g.length===0)return u;h&&h();let R=u.slice(0,g[0]);for(let K=0;K<g.length;++K){const Q=g[K],Z=g[K+1]||u.length;Q===0?R=`
${l}${u.slice(0,Z)}`:(a===du&&b[Q]&&(R+=`${u[Q]}\\`),R+=`
${l}${u.slice(Q+1,Z)}`)}return R}function yg(u,l,a){let s=l,c=l+1,o=u[c];for(;o===" "||o==="    ";)if(l<c+a)o=u[++l];else{do o=u[++l];while(o&&o!==`
`);s=l,c=l+1,o=u[c]}return s}const Mu=(u,l)=>({indentAtStart:l?u.indent.length:u.indentAtStart,lineWidth:u.options.lineWidth,minContentWidth:u.options.minContentWidth}),Cu=u=>/^(%|---|\.\.\.)/m.test(u);function kv(u,l,a){if(!l||l<0)return!1;const s=l-a,c=u.length;if(c<=s)return!1;for(let o=0,h=0;o<c;++o)if(u[o]===`
`){if(o-h>s)return!0;if(h=o+1,c-h<=s)return!1}return!0}function za(u,l){const a=JSON.stringify(u);if(l.options.doubleQuotedAsJSON)return a;const{implicitKey:s}=l,c=l.options.doubleQuotedMinMultiLineLength,o=l.indent||(Cu(u)?"  ":"");let h="",m=0;for(let p=0,g=a[p];g;g=a[++p])if(g===" "&&a[p+1]==="\\"&&a[p+2]==="n"&&(h+=a.slice(m,p)+"\\ ",p+=1,m=p,g="\\"),g==="\\")switch(a[p+1]){case"u":{h+=a.slice(m,p);const b=a.substr(p+2,4);switch(b){case"0000":h+="\\0";break;case"0007":h+="\\a";break;case"000b":h+="\\v";break;case"001b":h+="\\e";break;case"0085":h+="\\N";break;case"00a0":h+="\\_";break;case"2028":h+="\\L";break;case"2029":h+="\\P";break;default:b.substr(0,2)==="00"?h+="\\x"+b.substr(2):h+=a.substr(p,6)}p+=5,m=p+1}break;case"n":if(s||a[p+2]==='"'||a.length<c)p+=1;else{for(h+=a.slice(m,p)+`
`;a[p+2]==="\\"&&a[p+3]==="n"&&a[p+4]!=='"';)h+=`
`,p+=2;h+=o,a[p+2]===" "&&(h+="\\"),p+=1,m=p+1}break;default:p+=1}return h=m?h+a.slice(m):a,s?h:Nu(h,o,du,Mu(l,!1))}function Nf(u,l){if(l.options.singleQuote===!1||l.implicitKey&&u.includes(`
`)||/[ \t]\n|\n[ \t]/.test(u))return za(u,l);const a=l.indent||(Cu(u)?"  ":""),s="'"+u.replace(/'/g,"''").replace(/\n+/g,`$&
${a}`)+"'";return l.implicitKey?s:Nu(s,a,hp,Mu(l,!1))}function bi(u,l){const{singleQuote:a}=l.options;let s;if(a===!1)s=za;else{const c=u.includes('"'),o=u.includes("'");c&&!o?s=Nf:o&&!c?s=za:s=a?Nf:za}return s(u,l)}let Mf;try{Mf=new RegExp(`(^|(?<!
))
+(?!
|$)`,"g")}catch{Mf=/\n+(?!\n|$)/g}function mu({comment:u,type:l,value:a},s,c,o){const{blockQuote:h,commentString:m,lineWidth:p}=s.options;if(!h||/\n[\t ]+$/.test(a))return bi(a,s);const g=s.indent||(s.forceBlockIndent||Cu(a)?"  ":""),b=h==="literal"?!0:h==="folded"||l===ce.BLOCK_FOLDED?!1:l===ce.BLOCK_LITERAL?!0:!kv(a,p,g.length);if(!a)return b?`|
`:`>
`;let v,O;for(O=a.length;O>0;--O){const Z=a[O-1];if(Z!==`
`&&Z!=="    "&&Z!==" ")break}let E=a.substring(O);const x=E.indexOf(`
`);x===-1?v="-":a===E||x!==E.length-1?(v="+",o&&o()):v="",E&&(a=a.slice(0,-E.length),E[E.length-1]===`
`&&(E=E.slice(0,-1)),E=E.replace(Mf,`$&${g}`));let S=!1,w,M=-1;for(w=0;w<a.length;++w){const Z=a[w];if(Z===" ")S=!0;else if(Z===`
`)M=w;else break}let R=a.substring(0,M<w?M+1:w);R&&(a=a.substring(R.length),R=R.replace(/\n+/g,`$&${g}`));let Q=(S?g?"2":"1":"")+v;if(u&&(Q+=" "+m(u.replace(/ ?[\r\n]+/g," ")),c&&c()),!b){const Z=a.replace(/\n+/g,`
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${g}`);let W=!1;const k=Mu(s,!0);h!=="folded"&&l!==ce.BLOCK_FOLDED&&(k.onOverflow=()=>{W=!0});const V=Nu(`${R}${Z}${E}`,g,_f,k);if(!W)return`>${Q}
${g}${V}`}return a=a.replace(/\n+/g,`$&${g}`),`|${Q}
${g}${R}${a}${E}`}function qv(u,l,a,s){const{type:c,value:o}=u,{actualString:h,implicitKey:m,indent:p,indentStep:g,inFlow:b}=l;if(m&&o.includes(`
`)||b&&/[[\]{},]/.test(o))return bi(o,l);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return m||b||!o.includes(`
`)?bi(o,l):mu(u,l,a,s);if(!m&&!b&&c!==ce.PLAIN&&o.includes(`
`))return mu(u,l,a,s);if(Cu(o)){if(p==="")return l.forceBlockIndent=!0,mu(u,l,a,s);if(m&&p===g)return bi(o,l)}const v=o.replace(/\n+/g,`$&
${p}`);if(h){const O=S=>{var w;return S.default&&S.tag!=="tag:yaml.org,2002:str"&&((w=S.test)==null?void 0:w.test(v))},{compat:E,tags:x}=l.doc.schema;if(x.some(O)||E!=null&&E.some(O))return bi(o,l)}return m?v:Nu(v,p,hp,Mu(l,!1))}function Ra(u,l,a,s){const{implicitKey:c,inFlow:o}=l,h=typeof u.value=="string"?u:Object.assign({},u,{value:String(u.value)});let{type:m}=u;m!==ce.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(h.value)&&(m=ce.QUOTE_DOUBLE);const p=b=>{switch(b){case ce.BLOCK_FOLDED:case ce.BLOCK_LITERAL:return c||o?bi(h.value,l):mu(h,l,a,s);case ce.QUOTE_DOUBLE:return za(h.value,l);case ce.QUOTE_SINGLE:return Nf(h.value,l);case ce.PLAIN:return qv(h,l,a,s);default:return null}};let g=p(m);if(g===null){const{defaultKeyType:b,defaultStringType:v}=l.options,O=c&&b||v;if(g=p(O),g===null)throw new Error(`Unsupported default string type ${O}`)}return g}function dp(u,l){const a=Object.assign({blockQuote:!0,commentString:Bv,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},u.schema.toStringOptions,l);let s;switch(a.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:u,flowCollectionPadding:a.flowCollectionPadding?" ":"",indent:"",indentStep:typeof a.indent=="number"?" ".repeat(a.indent):"  ",inFlow:s,options:a}}function Hv(u,l){var c;if(l.tag){const o=u.filter(h=>h.tag===l.tag);if(o.length>0)return o.find(h=>h.format===l.format)??o[0]}let a,s;if(De(l)){s=l.value;let o=u.filter(h=>{var m;return(m=h.identify)==null?void 0:m.call(h,s)});if(o.length>1){const h=o.filter(m=>m.test);h.length>0&&(o=h)}a=o.find(h=>h.format===l.format)??o.find(h=>!h.format)}else s=l,a=u.find(o=>o.nodeClass&&s instanceof o.nodeClass);if(!a){const o=((c=s==null?void 0:s.constructor)==null?void 0:c.name)??(s===null?"null":typeof s);throw new Error(`Tag not resolved for ${o} value`)}return a}function Yv(u,l,{anchors:a,doc:s}){if(!s.directives)return"";const c=[],o=(De(u)||Be(u))&&u.anchor;o&&up(o)&&(a.add(o),c.push(`&${o}`));const h=u.tag??(l.default?null:l.tag);return h&&c.push(s.directives.tagString(h)),c.join(" ")}function Ei(u,l,a,s){var p;if(je(u))return u.toString(l,a,s);if(tl(u)){if(l.doc.directives)return u.toString(l);if((p=l.resolvedAliases)!=null&&p.has(u))throw new TypeError("Cannot stringify circular structure without alias nodes");l.resolvedAliases?l.resolvedAliases.add(u):l.resolvedAliases=new Set([u]),u=u.resolve(l.doc)}let c;const o=ke(u)?u:l.doc.createNode(u,{onTagObj:g=>c=g});c??(c=Hv(l.doc.schema.tags,o));const h=Yv(o,c,l);h.length>0&&(l.indentAtStart=(l.indentAtStart??0)+h.length+1);const m=typeof c.stringify=="function"?c.stringify(o,l,a,s):De(o)?Ra(o,l,a,s):o.toString(l,a,s);return h?De(o)||m[0]==="{"||m[0]==="["?`${h} ${m}`:`${h}
${l.indent}${m}`:m}function $v({key:u,value:l},a,s,c){const{allNullValues:o,doc:h,indent:m,indentStep:p,options:{commentString:g,indentSeq:b,simpleKeys:v}}=a;let O=ke(u)&&u.comment||null;if(v){if(O)throw new Error("With simple keys, key nodes cannot have comments");if(Be(u)||!ke(u)&&typeof u=="object"){const k="With simple keys, collection cannot be used as a key value";throw new Error(k)}}let E=!v&&(!u||O&&l==null&&!a.inFlow||Be(u)||(De(u)?u.type===ce.BLOCK_FOLDED||u.type===ce.BLOCK_LITERAL:typeof u=="object"));a=Object.assign({},a,{allNullValues:!1,implicitKey:!E&&(v||!o),indent:m+p});let x=!1,S=!1,w=Ei(u,a,()=>x=!0,()=>S=!0);if(!E&&!a.inFlow&&w.length>1024){if(v)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");E=!0}if(a.inFlow){if(o||l==null)return x&&s&&s(),w===""?"?":E?`? ${w}`:w}else if(o&&!v||l==null&&E)return w=`? ${w}`,O&&!x?w+=El(w,a.indent,g(O)):S&&c&&c(),w;x&&(O=null),E?(O&&(w+=El(w,a.indent,g(O))),w=`? ${w}
${m}:`):(w=`${w}:`,O&&(w+=El(w,a.indent,g(O))));let M,R,K;ke(l)?(M=!!l.spaceBefore,R=l.commentBefore,K=l.comment):(M=!1,R=null,K=null,l&&typeof l=="object"&&(l=h.createNode(l))),a.implicitKey=!1,!E&&!O&&De(l)&&(a.indentAtStart=w.length+1),S=!1,!b&&p.length>=2&&!a.inFlow&&!E&&Mi(l)&&!l.flow&&!l.tag&&!l.anchor&&(a.indent=a.indent.substring(2));let Q=!1;const Z=Ei(l,a,()=>Q=!0,()=>S=!0);let W=" ";if(O||M||R){if(W=M?`
`:"",R){const k=g(R);W+=`
${wn(k,a.indent)}`}Z===""&&!a.inFlow?W===`
`&&K&&(W=`
`):W+=`
${a.indent}`}else if(!E&&Be(l)){const k=Z[0],V=Z.indexOf(`
`),U=V!==-1,ae=a.inFlow??l.flow??l.items.length===0;if(U||!ae){let te=!1;if(U&&(k==="&"||k==="!")){let $=Z.indexOf(" ");k==="&"&&$!==-1&&$<V&&Z[$+1]==="!"&&($=Z.indexOf(" ",$+1)),($===-1||V<$)&&(te=!0)}te||(W=`
${a.indent}`)}}else(Z===""||Z[0]===`
`)&&(W="");return w+=W+Z,a.inFlow?Q&&s&&s():K&&!Q?w+=El(w,a.indent,g(K)):S&&c&&c(),w}function mp(u,l){(u==="debug"||u==="warn")&&console.warn(l)}const nu="<<",On={identify:u=>u===nu||typeof u=="symbol"&&u.description===nu,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new ce(Symbol(nu)),{addToJSMap:gp}),stringify:()=>nu},Kv=(u,l)=>(On.identify(l)||De(l)&&(!l.type||l.type===ce.PLAIN)&&On.identify(l.value))&&(u==null?void 0:u.doc.schema.tags.some(a=>a.tag===On.tag&&a.default));function gp(u,l,a){if(a=u&&tl(a)?a.resolve(u.doc):a,Mi(a))for(const s of a.items)hf(u,l,s);else if(Array.isArray(a))for(const s of a)hf(u,l,s);else hf(u,l,a)}function hf(u,l,a){const s=u&&tl(a)?a.resolve(u.doc):a;if(!Ni(s))throw new Error("Merge sources must be maps or map aliases");const c=s.toJSON(null,u,Map);for(const[o,h]of c)l instanceof Map?l.has(o)||l.set(o,h):l instanceof Set?l.add(o):Object.prototype.hasOwnProperty.call(l,o)||Object.defineProperty(l,o,{value:h,writable:!0,enumerable:!0,configurable:!0});return l}function pp(u,l,{key:a,value:s}){if(ke(a)&&a.addToJSMap)a.addToJSMap(u,l,s);else if(Kv(u,a))gp(u,l,s);else{const c=Gt(a,"",u);if(l instanceof Map)l.set(c,Gt(s,c,u));else if(l instanceof Set)l.add(c);else{const o=Gv(a,c,u),h=Gt(s,o,u);o in l?Object.defineProperty(l,o,{value:h,writable:!0,enumerable:!0,configurable:!0}):l[o]=h}}return l}function Gv(u,l,a){if(l===null)return"";if(typeof l!="object")return String(l);if(ke(u)&&(a!=null&&a.doc)){const s=dp(a.doc,{});s.anchors=new Set;for(const o of a.anchors.keys())s.anchors.add(o.anchor);s.inFlow=!0,s.inStringifyKey=!0;const c=u.toString(s);if(!a.mapKeyWarned){let o=JSON.stringify(c);o.length>40&&(o=o.substring(0,36)+'..."'),mp(a.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),a.mapKeyWarned=!0}return c}return JSON.stringify(l)}function Rf(u,l,a){const s=xa(u,void 0,a),c=xa(l,void 0,a);return new ct(s,c)}class ct{constructor(l,a=null){Object.defineProperty(this,Vt,{value:tp}),this.key=l,this.value=a}clone(l){let{key:a,value:s}=this;return ke(a)&&(a=a.clone(l)),ke(s)&&(s=s.clone(l)),new ct(a,s)}toJSON(l,a){const s=a!=null&&a.mapAsMap?new Map:{};return pp(a,s,this)}toString(l,a,s){return l!=null&&l.doc?$v(this,l,a,s):JSON.stringify(this)}}function yp(u,l,a){return(l.inFlow??u.flow?Qv:Vv)(u,l,a)}function Vv({comment:u,items:l},a,{blockItemPrefix:s,flowChars:c,itemIndent:o,onChompKeep:h,onComment:m}){const{indent:p,options:{commentString:g}}=a,b=Object.assign({},a,{indent:o,type:null});let v=!1;const O=[];for(let x=0;x<l.length;++x){const S=l[x];let w=null;if(ke(S))!v&&S.spaceBefore&&O.push(""),bu(a,O,S.commentBefore,v),S.comment&&(w=S.comment);else if(je(S)){const R=ke(S.key)?S.key:null;R&&(!v&&R.spaceBefore&&O.push(""),bu(a,O,R.commentBefore,v))}v=!1;let M=Ei(S,b,()=>w=null,()=>v=!0);w&&(M+=El(M,o,g(w))),v&&w&&(v=!1),O.push(s+M)}let E;if(O.length===0)E=c.start+c.end;else{E=O[0];for(let x=1;x<O.length;++x){const S=O[x];E+=S?`
${p}${S}`:`
`}}return u?(E+=`
`+wn(g(u),p),m&&m()):v&&h&&h(),E}function Qv({items:u},l,{flowChars:a,itemIndent:s}){const{indent:c,indentStep:o,flowCollectionPadding:h,options:{commentString:m}}=l;s+=o;const p=Object.assign({},l,{indent:s,inFlow:!0,type:null});let g=!1,b=0;const v=[];for(let x=0;x<u.length;++x){const S=u[x];let w=null;if(ke(S))S.spaceBefore&&v.push(""),bu(l,v,S.commentBefore,!1),S.comment&&(w=S.comment);else if(je(S)){const R=ke(S.key)?S.key:null;R&&(R.spaceBefore&&v.push(""),bu(l,v,R.commentBefore,!1),R.comment&&(g=!0));const K=ke(S.value)?S.value:null;K?(K.comment&&(w=K.comment),K.commentBefore&&(g=!0)):S.value==null&&(R!=null&&R.comment)&&(w=R.comment)}w&&(g=!0);let M=Ei(S,p,()=>w=null);g||(g=v.length>b||M.includes(`
`)),x<u.length-1?M+=",":l.options.trailingComma&&(l.options.lineWidth>0&&(g||(g=v.reduce((R,K)=>R+K.length+2,2)+(M.length+2)>l.options.lineWidth)),g&&(M+=",")),w&&(M+=El(M,s,m(w))),v.push(M),b=v.length}const{start:O,end:E}=a;if(v.length===0)return O+E;if(!g){const x=v.reduce((S,w)=>S+w.length+2,2);g=l.options.lineWidth>0&&x>l.options.lineWidth}if(g){let x=O;for(const S of v)x+=S?`
${o}${c}${S}`:`
`;return`${x}
${c}${E}`}else return`${O}${h}${v.join(" ")}${h}${E}`}function bu({indent:u,options:{commentString:l}},a,s,c){if(s&&c&&(s=s.replace(/^\n+/,"")),s){const o=wn(l(s),u);a.push(o.trimStart())}}function wl(u,l){const a=De(l)?l.value:l;for(const s of u)if(je(s)&&(s.key===l||s.key===a||De(s.key)&&s.key.value===a))return s}class Lt extends op{static get tagName(){return"tag:yaml.org,2002:map"}constructor(l){super(Pn,l),this.items=[]}static from(l,a,s){const{keepUndefined:c,replacer:o}=s,h=new this(l),m=(p,g)=>{if(typeof o=="function")g=o.call(a,p,g);else if(Array.isArray(o)&&!o.includes(p))return;(g!==void 0||c)&&h.items.push(Rf(p,g,s))};if(a instanceof Map)for(const[p,g]of a)m(p,g);else if(a&&typeof a=="object")for(const p of Object.keys(a))m(p,a[p]);return typeof l.sortMapEntries=="function"&&h.items.sort(l.sortMapEntries),h}add(l,a){var h;let s;je(l)?s=l:!l||typeof l!="object"||!("key"in l)?s=new ct(l,l==null?void 0:l.value):s=new ct(l.key,l.value);const c=wl(this.items,s.key),o=(h=this.schema)==null?void 0:h.sortMapEntries;if(c){if(!a)throw new Error(`Key ${s.key} already set`);De(c.value)&&fp(s.value)?c.value.value=s.value:c.value=s.value}else if(o){const m=this.items.findIndex(p=>o(s,p)<0);m===-1?this.items.push(s):this.items.splice(m,0,s)}else this.items.push(s)}delete(l){const a=wl(this.items,l);return a?this.items.splice(this.items.indexOf(a),1).length>0:!1}get(l,a){const s=wl(this.items,l),c=s==null?void 0:s.value;return(!a&&De(c)?c.value:c)??void 0}has(l){return!!wl(this.items,l)}set(l,a){this.add(new ct(l,a),!0)}toJSON(l,a,s){const c=s?new s:a!=null&&a.mapAsMap?new Map:{};a!=null&&a.onCreate&&a.onCreate(c);for(const o of this.items)pp(a,c,o);return c}toString(l,a,s){if(!l)return JSON.stringify(this);for(const c of this.items)if(!je(c))throw new Error(`Map items must all be pairs; found ${JSON.stringify(c)} instead`);return!l.allNullValues&&this.hasAllNullValues(!1)&&(l=Object.assign({},l,{allNullValues:!0})),yp(this,l,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:l.indent||"",onChompKeep:s,onComment:a})}}const Ci={collection:"map",default:!0,nodeClass:Lt,tag:"tag:yaml.org,2002:map",resolve(u,l){return Ni(u)||l("Expected a mapping for this tag"),u},createNode:(u,l,a)=>Lt.from(u,l,a)};class el extends op{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(l){super(_i,l),this.items=[]}add(l){this.items.push(l)}delete(l){const a=lu(l);return typeof a!="number"?!1:this.items.splice(a,1).length>0}get(l,a){const s=lu(l);if(typeof s!="number")return;const c=this.items[s];return!a&&De(c)?c.value:c}has(l){const a=lu(l);return typeof a=="number"&&a<this.items.length}set(l,a){const s=lu(l);if(typeof s!="number")throw new Error(`Expected a valid index, not ${l}.`);const c=this.items[s];De(c)&&fp(a)?c.value=a:this.items[s]=a}toJSON(l,a){const s=[];a!=null&&a.onCreate&&a.onCreate(s);let c=0;for(const o of this.items)s.push(Gt(o,String(c++),a));return s}toString(l,a,s){return l?yp(this,l,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(l.indent||"")+"  ",onChompKeep:s,onComment:a}):JSON.stringify(this)}static from(l,a,s){const{replacer:c}=s,o=new this(l);if(a&&Symbol.iterator in Object(a)){let h=0;for(let m of a){if(typeof c=="function"){const p=a instanceof Set?m:String(h++);m=c.call(a,p,m)}o.items.push(xa(m,void 0,s))}}return o}}function lu(u){let l=De(u)?u.value:u;return l&&typeof l=="string"&&(l=Number(l)),typeof l=="number"&&Number.isInteger(l)&&l>=0?l:null}const zi={collection:"seq",default:!0,nodeClass:el,tag:"tag:yaml.org,2002:seq",resolve(u,l){return Mi(u)||l("Expected a sequence for this tag"),u},createNode:(u,l,a)=>el.from(u,l,a)},zu={identify:u=>typeof u=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:u=>u,stringify(u,l,a,s){return l=Object.assign({actualString:!0},l),Ra(u,l,a,s)}},xu={identify:u=>u==null,createNode:()=>new ce(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new ce(null),stringify:({source:u},l)=>typeof u=="string"&&xu.test.test(u)?u:l.options.nullStr},jf={identify:u=>typeof u=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:u=>new ce(u[0]==="t"||u[0]==="T"),stringify({source:u,value:l},a){if(u&&jf.test.test(u)){const s=u[0]==="t"||u[0]==="T";if(l===s)return u}return l?a.options.trueStr:a.options.falseStr}};function Wt({format:u,minFractionDigits:l,tag:a,value:s}){if(typeof s=="bigint")return String(s);const c=typeof s=="number"?s:Number(s);if(!isFinite(c))return isNaN(c)?".nan":c<0?"-.inf":".inf";let o=Object.is(s,-0)?"-0":JSON.stringify(s);if(!u&&l&&(!a||a==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let h=o.indexOf(".");h<0&&(h=o.length,o+=".");let m=l-(o.length-h-1);for(;m-- >0;)o+="0"}return o}const vp={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:u=>u.slice(-3).toLowerCase()==="nan"?NaN:u[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Wt},bp={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:u=>parseFloat(u),stringify(u){const l=Number(u.value);return isFinite(l)?l.toExponential():Wt(u)}},Sp={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(u){const l=new ce(parseFloat(u)),a=u.indexOf(".");return a!==-1&&u[u.length-1]==="0"&&(l.minFractionDigits=u.length-a-1),l},stringify:Wt},Du=u=>typeof u=="bigint"||Number.isInteger(u),Bf=(u,l,a,{intAsBigInt:s})=>s?BigInt(u):parseInt(u.substring(l),a);function Tp(u,l,a){const{value:s}=u;return Du(s)&&s>=0?a+s.toString(l):Wt(u)}const Ep={identify:u=>Du(u)&&u>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(u,l,a)=>Bf(u,2,8,a),stringify:u=>Tp(u,8,"0o")},wp={identify:Du,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(u,l,a)=>Bf(u,0,10,a),stringify:Wt},Ap={identify:u=>Du(u)&&u>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(u,l,a)=>Bf(u,2,16,a),stringify:u=>Tp(u,16,"0x")},Xv=[Ci,zi,zu,xu,jf,Ep,wp,Ap,vp,bp,Sp];function vg(u){return typeof u=="bigint"||Number.isInteger(u)}const iu=({value:u})=>JSON.stringify(u),Zv=[{identify:u=>typeof u=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:u=>u,stringify:iu},{identify:u=>u==null,createNode:()=>new ce(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:iu},{identify:u=>typeof u=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:u=>u==="true",stringify:iu},{identify:vg,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(u,l,{intAsBigInt:a})=>a?BigInt(u):parseInt(u,10),stringify:({value:u})=>vg(u)?u.toString():JSON.stringify(u)},{identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:u=>parseFloat(u),stringify:iu}],Jv={default:!0,tag:"",test:/^/,resolve(u,l){return l(`Unresolved plain scalar ${JSON.stringify(u)}`),u}},Wv=[Ci,zi].concat(Zv,Jv),kf={identify:u=>u instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(u,l){if(typeof atob=="function"){const a=atob(u.replace(/[\n\r]/g,"")),s=new Uint8Array(a.length);for(let c=0;c<a.length;++c)s[c]=a.charCodeAt(c);return s}else return l("This environment does not support reading binary tags; either Buffer or atob is required"),u},stringify({comment:u,type:l,value:a},s,c,o){if(!a)return"";const h=a;let m;if(typeof btoa=="function"){let p="";for(let g=0;g<h.length;++g)p+=String.fromCharCode(h[g]);m=btoa(p)}else throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(l??(l=ce.BLOCK_LITERAL),l!==ce.QUOTE_DOUBLE){const p=Math.max(s.options.lineWidth-s.indent.length,s.options.minContentWidth),g=Math.ceil(m.length/p),b=new Array(g);for(let v=0,O=0;v<g;++v,O+=p)b[v]=m.substr(O,p);m=b.join(l===ce.BLOCK_LITERAL?`
`:" ")}return Ra({comment:u,type:l,value:m},s,c,o)}};function Op(u,l){if(Mi(u))for(let a=0;a<u.items.length;++a){let s=u.items[a];if(!je(s)){if(Ni(s)){s.items.length>1&&l("Each pair must have its own sequence indicator");const c=s.items[0]||new ct(new ce(null));if(s.commentBefore&&(c.key.commentBefore=c.key.commentBefore?`${s.commentBefore}
${c.key.commentBefore}`:s.commentBefore),s.comment){const o=c.value??c.key;o.comment=o.comment?`${s.comment}
${o.comment}`:s.comment}s=c}u.items[a]=je(s)?s:new ct(s)}}else l("Expected a sequence for this tag");return u}function _p(u,l,a){const{replacer:s}=a,c=new el(u);c.tag="tag:yaml.org,2002:pairs";let o=0;if(l&&Symbol.iterator in Object(l))for(let h of l){typeof s=="function"&&(h=s.call(l,String(o++),h));let m,p;if(Array.isArray(h))if(h.length===2)m=h[0],p=h[1];else throw new TypeError(`Expected [key, value] tuple: ${h}`);else if(h&&h instanceof Object){const g=Object.keys(h);if(g.length===1)m=g[0],p=h[m];else throw new TypeError(`Expected tuple with one key, not ${g.length} keys`)}else m=h;c.items.push(Rf(m,p,a))}return c}const qf={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:Op,createNode:_p};class Si extends el{constructor(){super(),this.add=Lt.prototype.add.bind(this),this.delete=Lt.prototype.delete.bind(this),this.get=Lt.prototype.get.bind(this),this.has=Lt.prototype.has.bind(this),this.set=Lt.prototype.set.bind(this),this.tag=Si.tag}toJSON(l,a){if(!a)return super.toJSON(l);const s=new Map;a!=null&&a.onCreate&&a.onCreate(s);for(const c of this.items){let o,h;if(je(c)?(o=Gt(c.key,"",a),h=Gt(c.value,o,a)):o=Gt(c,"",a),s.has(o))throw new Error("Ordered maps must not include duplicate keys");s.set(o,h)}return s}static from(l,a,s){const c=_p(l,a,s),o=new this;return o.items=c.items,o}}Si.tag="tag:yaml.org,2002:omap";const Hf={collection:"seq",identify:u=>u instanceof Map,nodeClass:Si,default:!1,tag:"tag:yaml.org,2002:omap",resolve(u,l){const a=Op(u,l),s=[];for(const{key:c}of a.items)De(c)&&(s.includes(c.value)?l(`Ordered maps must not include duplicate keys: ${c.value}`):s.push(c.value));return Object.assign(new Si,a)},createNode:(u,l,a)=>Si.from(u,l,a)};function Np({value:u,source:l},a){return l&&(u?Mp:Cp).test.test(l)?l:u?a.options.trueStr:a.options.falseStr}const Mp={identify:u=>u===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new ce(!0),stringify:Np},Cp={identify:u=>u===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new ce(!1),stringify:Np},Iv={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:u=>u.slice(-3).toLowerCase()==="nan"?NaN:u[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Wt},Fv={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:u=>parseFloat(u.replace(/_/g,"")),stringify(u){const l=Number(u.value);return isFinite(l)?l.toExponential():Wt(u)}},Pv={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(u){const l=new ce(parseFloat(u.replace(/_/g,""))),a=u.indexOf(".");if(a!==-1){const s=u.substring(a+1).replace(/_/g,"");s[s.length-1]==="0"&&(l.minFractionDigits=s.length)}return l},stringify:Wt},ja=u=>typeof u=="bigint"||Number.isInteger(u);function Lu(u,l,a,{intAsBigInt:s}){const c=u[0];if((c==="-"||c==="+")&&(l+=1),u=u.substring(l).replace(/_/g,""),s){switch(a){case 2:u=`0b${u}`;break;case 8:u=`0o${u}`;break;case 16:u=`0x${u}`;break}const h=BigInt(u);return c==="-"?BigInt(-1)*h:h}const o=parseInt(u,a);return c==="-"?-1*o:o}function Yf(u,l,a){const{value:s}=u;if(ja(s)){const c=s.toString(l);return s<0?"-"+a+c.substr(1):a+c}return Wt(u)}const eb={identify:ja,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(u,l,a)=>Lu(u,2,2,a),stringify:u=>Yf(u,2,"0b")},tb={identify:ja,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(u,l,a)=>Lu(u,1,8,a),stringify:u=>Yf(u,8,"0")},nb={identify:ja,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(u,l,a)=>Lu(u,0,10,a),stringify:Wt},lb={identify:ja,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(u,l,a)=>Lu(u,2,16,a),stringify:u=>Yf(u,16,"0x")};class Ti extends Lt{constructor(l){super(l),this.tag=Ti.tag}add(l){let a;je(l)?a=l:l&&typeof l=="object"&&"key"in l&&"value"in l&&l.value===null?a=new ct(l.key,null):a=new ct(l,null),wl(this.items,a.key)||this.items.push(a)}get(l,a){const s=wl(this.items,l);return!a&&je(s)?De(s.key)?s.key.value:s.key:s}set(l,a){if(typeof a!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof a}`);const s=wl(this.items,l);s&&!a?this.items.splice(this.items.indexOf(s),1):!s&&a&&this.items.push(new ct(l))}toJSON(l,a){return super.toJSON(l,a,Set)}toString(l,a,s){if(!l)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},l,{allNullValues:!0}),a,s);throw new Error("Set items must all have null values")}static from(l,a,s){const{replacer:c}=s,o=new this(l);if(a&&Symbol.iterator in Object(a))for(let h of a)typeof c=="function"&&(h=c.call(a,h,h)),o.items.push(Rf(h,null,s));return o}}Ti.tag="tag:yaml.org,2002:set";const $f={collection:"map",identify:u=>u instanceof Set,nodeClass:Ti,default:!1,tag:"tag:yaml.org,2002:set",createNode:(u,l,a)=>Ti.from(u,l,a),resolve(u,l){if(Ni(u)){if(u.hasAllNullValues(!0))return Object.assign(new Ti,u);l("Set items must all have null values")}else l("Expected a mapping for this tag");return u}};function Kf(u,l){const a=u[0],s=a==="-"||a==="+"?u.substring(1):u,c=h=>l?BigInt(h):Number(h),o=s.replace(/_/g,"").split(":").reduce((h,m)=>h*c(60)+c(m),c(0));return a==="-"?c(-1)*o:o}function zp(u){let{value:l}=u,a=h=>h;if(typeof l=="bigint")a=h=>BigInt(h);else if(isNaN(l)||!isFinite(l))return Wt(u);let s="";l<0&&(s="-",l*=a(-1));const c=a(60),o=[l%c];return l<60?o.unshift(0):(l=(l-o[0])/c,o.unshift(l%c),l>=60&&(l=(l-o[0])/c,o.unshift(l))),s+o.map(h=>String(h).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}const xp={identify:u=>typeof u=="bigint"||Number.isInteger(u),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(u,l,{intAsBigInt:a})=>Kf(u,a),stringify:zp},Dp={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:u=>Kf(u,!1),stringify:zp},Uu={identify:u=>u instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(u){const l=u.match(Uu.test);if(!l)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,a,s,c,o,h,m]=l.map(Number),p=l[7]?Number((l[7]+"00").substr(1,3)):0;let g=Date.UTC(a,s-1,c,o||0,h||0,m||0,p);const b=l[8];if(b&&b!=="Z"){let v=Kf(b,!1);Math.abs(v)<30&&(v*=60),g-=6e4*v}return new Date(g)},stringify:({value:u})=>(u==null?void 0:u.toISOString().replace(/(T00:00:00)?\.000Z$/,""))??""},bg=[Ci,zi,zu,xu,Mp,Cp,eb,tb,nb,lb,Iv,Fv,Pv,kf,On,Hf,qf,$f,xp,Dp,Uu],Sg=new Map([["core",Xv],["failsafe",[Ci,zi,zu]],["json",Wv],["yaml11",bg],["yaml-1.1",bg]]),Tg={binary:kf,bool:jf,float:Sp,floatExp:bp,floatNaN:vp,floatTime:Dp,int:wp,intHex:Ap,intOct:Ep,intTime:xp,map:Ci,merge:On,null:xu,omap:Hf,pairs:qf,seq:zi,set:$f,timestamp:Uu},ib={"tag:yaml.org,2002:binary":kf,"tag:yaml.org,2002:merge":On,"tag:yaml.org,2002:omap":Hf,"tag:yaml.org,2002:pairs":qf,"tag:yaml.org,2002:set":$f,"tag:yaml.org,2002:timestamp":Uu};function df(u,l,a){const s=Sg.get(l);if(s&&!u)return a&&!s.includes(On)?s.concat(On):s.slice();let c=s;if(!c)if(Array.isArray(u))c=[];else{const o=Array.from(Sg.keys()).filter(h=>h!=="yaml11").map(h=>JSON.stringify(h)).join(", ");throw new Error(`Unknown schema "${l}"; use one of ${o} or define customTags array`)}if(Array.isArray(u))for(const o of u)c=c.concat(o);else typeof u=="function"&&(c=u(c.slice()));return a&&(c=c.concat(On)),c.reduce((o,h)=>{const m=typeof h=="string"?Tg[h]:h;if(!m){const p=JSON.stringify(h),g=Object.keys(Tg).map(b=>JSON.stringify(b)).join(", ");throw new Error(`Unknown custom tag ${p}; use one of ${g}`)}return o.includes(m)||o.push(m),o},[])}const ab=(u,l)=>u.key<l.key?-1:u.key>l.key?1:0;class Ru{constructor({compat:l,customTags:a,merge:s,resolveKnownTags:c,schema:o,sortMapEntries:h,toStringDefaults:m}){this.compat=Array.isArray(l)?df(l,"compat"):l?df(null,l):null,this.name=typeof o=="string"&&o||"core",this.knownTags=c?ib:{},this.tags=df(a,this.name,s),this.toStringOptions=m??null,Object.defineProperty(this,Pn,{value:Ci}),Object.defineProperty(this,nn,{value:zu}),Object.defineProperty(this,_i,{value:zi}),this.sortMapEntries=typeof h=="function"?h:h===!0?ab:null}clone(){const l=Object.create(Ru.prototype,Object.getOwnPropertyDescriptors(this));return l.tags=this.tags.slice(),l}}function sb(u,l){var p;const a=[];let s=l.directives===!0;if(l.directives!==!1&&u.directives){const g=u.directives.toString(u);g?(a.push(g),s=!0):u.directives.docStart&&(s=!0)}s&&a.push("---");const c=dp(u,l),{commentString:o}=c.options;if(u.commentBefore){a.length!==1&&a.unshift("");const g=o(u.commentBefore);a.unshift(wn(g,""))}let h=!1,m=null;if(u.contents){if(ke(u.contents)){if(u.contents.spaceBefore&&s&&a.push(""),u.contents.commentBefore){const v=o(u.contents.commentBefore);a.push(wn(v,""))}c.forceBlockIndent=!!u.comment,m=u.contents.comment}const g=m?void 0:()=>h=!0;let b=Ei(u.contents,c,()=>m=null,g);m&&(b+=El(b,"",o(m))),(b[0]==="|"||b[0]===">")&&a[a.length-1]==="---"?a[a.length-1]=`--- ${b}`:a.push(b)}else a.push(Ei(u.contents,c));if((p=u.directives)!=null&&p.docEnd)if(u.comment){const g=o(u.comment);g.includes(`
`)?(a.push("..."),a.push(wn(g,""))):a.push(`... ${g}`)}else a.push("...");else{let g=u.comment;g&&h&&(g=g.replace(/^\n+/,"")),g&&((!h||m)&&a[a.length-1]!==""&&a.push(""),a.push(wn(o(g),"")))}return a.join(`
`)+`
`}class xi{constructor(l,a,s){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,Vt,{value:Of});let c=null;typeof a=="function"||Array.isArray(a)?c=a:s===void 0&&a&&(s=a,a=void 0);const o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},s);this.options=o;let{version:h}=o;s!=null&&s._directives?(this.directives=s._directives.atDocument(),this.directives.yaml.explicit&&(h=this.directives.yaml.version)):this.directives=new ot({version:h}),this.setSchema(h,s),this.contents=l===void 0?null:this.createNode(l,c,s)}clone(){const l=Object.create(xi.prototype,{[Vt]:{value:Of}});return l.commentBefore=this.commentBefore,l.comment=this.comment,l.errors=this.errors.slice(),l.warnings=this.warnings.slice(),l.options=Object.assign({},this.options),this.directives&&(l.directives=this.directives.clone()),l.schema=this.schema.clone(),l.contents=ke(this.contents)?this.contents.clone(l.schema):this.contents,this.range&&(l.range=this.range.slice()),l}add(l){di(this.contents)&&this.contents.add(l)}addIn(l,a){di(this.contents)&&this.contents.addIn(l,a)}createAlias(l,a){if(!l.anchor){const s=cp(this);l.anchor=!a||s.has(a)?rp(a||"a",s):a}return new _u(l.anchor)}createNode(l,a,s){let c;if(typeof a=="function")l=a.call({"":l},"",l),c=a;else if(Array.isArray(a)){const w=R=>typeof R=="number"||R instanceof String||R instanceof Number,M=a.filter(w).map(String);M.length>0&&(a=a.concat(M)),c=a}else s===void 0&&a&&(s=a,a=void 0);const{aliasDuplicateObjects:o,anchorPrefix:h,flow:m,keepUndefined:p,onTagObj:g,tag:b}=s??{},{onAnchor:v,setAnchors:O,sourceObjects:E}=Uv(this,h||"a"),x={aliasDuplicateObjects:o??!0,keepUndefined:p??!1,onAnchor:v,onTagObj:g,replacer:c,schema:this.schema,sourceObjects:E},S=xa(l,b,x);return m&&Be(S)&&(S.flow=!0),O(),S}createPair(l,a,s={}){const c=this.createNode(l,null,s),o=this.createNode(a,null,s);return new ct(c,o)}delete(l){return di(this.contents)?this.contents.delete(l):!1}deleteIn(l){return Ca(l)?this.contents==null?!1:(this.contents=null,!0):di(this.contents)?this.contents.deleteIn(l):!1}get(l,a){return Be(this.contents)?this.contents.get(l,a):void 0}getIn(l,a){return Ca(l)?!a&&De(this.contents)?this.contents.value:this.contents:Be(this.contents)?this.contents.getIn(l,a):void 0}has(l){return Be(this.contents)?this.contents.has(l):!1}hasIn(l){return Ca(l)?this.contents!==void 0:Be(this.contents)?this.contents.hasIn(l):!1}set(l,a){this.contents==null?this.contents=vu(this.schema,[l],a):di(this.contents)&&this.contents.set(l,a)}setIn(l,a){Ca(l)?this.contents=a:this.contents==null?this.contents=vu(this.schema,Array.from(l),a):di(this.contents)&&this.contents.setIn(l,a)}setSchema(l,a={}){typeof l=="number"&&(l=String(l));let s;switch(l){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new ot({version:"1.1"}),s={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=l:this.directives=new ot({version:l}),s={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,s=null;break;default:{const c=JSON.stringify(l);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${c}`)}}if(a.schema instanceof Object)this.schema=a.schema;else if(s)this.schema=new Ru(Object.assign(s,a));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:l,jsonArg:a,mapAsMap:s,maxAliasCount:c,onAnchor:o,reviver:h}={}){const m={anchors:new Map,doc:this,keep:!l,mapAsMap:s===!0,mapKeyWarned:!1,maxAliasCount:typeof c=="number"?c:100},p=Gt(this.contents,a??"",m);if(typeof o=="function")for(const{count:g,res:b}of m.anchors.values())o(b,g);return typeof h=="function"?vi(h,{"":p},"",p):p}toJSON(l,a){return this.toJS({json:!0,jsonArg:l,mapAsMap:!1,onAnchor:a})}toString(l={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in l&&(!Number.isInteger(l.indent)||Number(l.indent)<=0)){const a=JSON.stringify(l.indent);throw new Error(`"indent" option must be a positive integer, not ${a}`)}return sb(this,l)}}function di(u){if(Be(u))return!0;throw new Error("Expected a YAML collection as document contents")}class Gf extends Error{constructor(l,a,s,c){super(),this.name=l,this.code=s,this.message=c,this.pos=a}}class Al extends Gf{constructor(l,a,s){super("YAMLParseError",l,a,s)}}class Lp extends Gf{constructor(l,a,s){super("YAMLWarning",l,a,s)}}const Su=(u,l)=>a=>{if(a.pos[0]===-1)return;a.linePos=a.pos.map(m=>l.linePos(m));const{line:s,col:c}=a.linePos[0];a.message+=` at line ${s}, column ${c}`;let o=c-1,h=u.substring(l.lineStarts[s-1],l.lineStarts[s]).replace(/[\n\r]+$/,"");if(o>=60&&h.length>80){const m=Math.min(o-39,h.length-79);h="…"+h.substring(m),o-=m-1}if(h.length>80&&(h=h.substring(0,79)+"…"),s>1&&/^ *$/.test(h.substring(0,o))){let m=u.substring(l.lineStarts[s-2],l.lineStarts[s-1]);m.length>80&&(m=m.substring(0,79)+`…
`),h=m+h}if(/[^ ]/.test(h)){let m=1;const p=a.linePos[1];(p==null?void 0:p.line)===s&&p.col>c&&(m=Math.max(1,Math.min(p.col-c,80-o)));const g=" ".repeat(o)+"^".repeat(m);a.message+=`:
${h}
${g}
`}};function wi(u,{flow:l,indicator:a,next:s,offset:c,onError:o,parentIndent:h,startOnNewline:m}){let p=!1,g=m,b=m,v="",O="",E=!1,x=!1,S=null,w=null,M=null,R=null,K=null,Q=null,Z=null;for(const V of u)switch(x&&(V.type!=="space"&&V.type!=="newline"&&V.type!=="comma"&&o(V.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),x=!1),S&&(g&&V.type!=="comment"&&V.type!=="newline"&&o(S,"TAB_AS_INDENT","Tabs are not allowed as indentation"),S=null),V.type){case"space":!l&&(a!=="doc-start"||(s==null?void 0:s.type)!=="flow-collection")&&V.source.includes("    ")&&(S=V),b=!0;break;case"comment":{b||o(V,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const U=V.source.substring(1)||" ";v?v+=O+U:v=U,O="",g=!1;break}case"newline":g?v?v+=V.source:(!Q||a!=="seq-item-ind")&&(p=!0):O+=V.source,g=!0,E=!0,(w||M)&&(R=V),b=!0;break;case"anchor":w&&o(V,"MULTIPLE_ANCHORS","A node can have at most one anchor"),V.source.endsWith(":")&&o(V.offset+V.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),w=V,Z??(Z=V.offset),g=!1,b=!1,x=!0;break;case"tag":{M&&o(V,"MULTIPLE_TAGS","A node can have at most one tag"),M=V,Z??(Z=V.offset),g=!1,b=!1,x=!0;break}case a:(w||M)&&o(V,"BAD_PROP_ORDER",`Anchors and tags must be after the ${V.source} indicator`),Q&&o(V,"UNEXPECTED_TOKEN",`Unexpected ${V.source} in ${l??"collection"}`),Q=V,g=a==="seq-item-ind"||a==="explicit-key-ind",b=!1;break;case"comma":if(l){K&&o(V,"UNEXPECTED_TOKEN",`Unexpected , in ${l}`),K=V,g=!1,b=!1;break}default:o(V,"UNEXPECTED_TOKEN",`Unexpected ${V.type} token`),g=!1,b=!1}const W=u[u.length-1],k=W?W.offset+W.source.length:c;return x&&s&&s.type!=="space"&&s.type!=="newline"&&s.type!=="comma"&&(s.type!=="scalar"||s.source!=="")&&o(s.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),S&&(g&&S.indent<=h||(s==null?void 0:s.type)==="block-map"||(s==null?void 0:s.type)==="block-seq")&&o(S,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:K,found:Q,spaceBefore:p,comment:v,hasNewline:E,anchor:w,tag:M,newlineAfterProp:R,end:k,start:Z??k}}function Da(u){if(!u)return null;switch(u.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(u.source.includes(`
`))return!0;if(u.end){for(const l of u.end)if(l.type==="newline")return!0}return!1;case"flow-collection":for(const l of u.items){for(const a of l.start)if(a.type==="newline")return!0;if(l.sep){for(const a of l.sep)if(a.type==="newline")return!0}if(Da(l.key)||Da(l.value))return!0}return!1;default:return!0}}function Cf(u,l,a){if((l==null?void 0:l.type)==="flow-collection"){const s=l.end[0];s.indent===u&&(s.source==="]"||s.source==="}")&&Da(l)&&a(s,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function Up(u,l,a){const{uniqueKeys:s}=u.options;if(s===!1)return!1;const c=typeof s=="function"?s:(o,h)=>o===h||De(o)&&De(h)&&o.value===h.value;return l.some(o=>c(o.key,a))}const Eg="All mapping items must start at the same column";function ub({composeNode:u,composeEmptyNode:l},a,s,c,o){var b;const h=(o==null?void 0:o.nodeClass)??Lt,m=new h(a.schema);a.atRoot&&(a.atRoot=!1);let p=s.offset,g=null;for(const v of s.items){const{start:O,key:E,sep:x,value:S}=v,w=wi(O,{indicator:"explicit-key-ind",next:E??(x==null?void 0:x[0]),offset:p,onError:c,parentIndent:s.indent,startOnNewline:!0}),M=!w.found;if(M){if(E&&(E.type==="block-seq"?c(p,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in E&&E.indent!==s.indent&&c(p,"BAD_INDENT",Eg)),!w.anchor&&!w.tag&&!x){g=w.end,w.comment&&(m.comment?m.comment+=`
`+w.comment:m.comment=w.comment);continue}(w.newlineAfterProp||Da(E))&&c(E??O[O.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else((b=w.found)==null?void 0:b.indent)!==s.indent&&c(p,"BAD_INDENT",Eg);a.atKey=!0;const R=w.end,K=E?u(a,E,w,c):l(a,R,O,null,w,c);a.schema.compat&&Cf(s.indent,E,c),a.atKey=!1,Up(a,m.items,K)&&c(R,"DUPLICATE_KEY","Map keys must be unique");const Q=wi(x??[],{indicator:"map-value-ind",next:S,offset:K.range[2],onError:c,parentIndent:s.indent,startOnNewline:!E||E.type==="block-scalar"});if(p=Q.end,Q.found){M&&((S==null?void 0:S.type)==="block-map"&&!Q.hasNewline&&c(p,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),a.options.strict&&w.start<Q.found.offset-1024&&c(K.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key"));const Z=S?u(a,S,Q,c):l(a,p,x,null,Q,c);a.schema.compat&&Cf(s.indent,S,c),p=Z.range[2];const W=new ct(K,Z);a.options.keepSourceTokens&&(W.srcToken=v),m.items.push(W)}else{M&&c(K.range,"MISSING_CHAR","Implicit map keys need to be followed by map values"),Q.comment&&(K.comment?K.comment+=`
`+Q.comment:K.comment=Q.comment);const Z=new ct(K);a.options.keepSourceTokens&&(Z.srcToken=v),m.items.push(Z)}}return g&&g<p&&c(g,"IMPOSSIBLE","Map comment with trailing content"),m.range=[s.offset,p,g??p],m}function cb({composeNode:u,composeEmptyNode:l},a,s,c,o){const h=(o==null?void 0:o.nodeClass)??el,m=new h(a.schema);a.atRoot&&(a.atRoot=!1),a.atKey&&(a.atKey=!1);let p=s.offset,g=null;for(const{start:b,value:v}of s.items){const O=wi(b,{indicator:"seq-item-ind",next:v,offset:p,onError:c,parentIndent:s.indent,startOnNewline:!0});if(!O.found)if(O.anchor||O.tag||v)(v==null?void 0:v.type)==="block-seq"?c(O.end,"BAD_INDENT","All sequence items must start at the same column"):c(p,"MISSING_CHAR","Sequence item without - indicator");else{g=O.end,O.comment&&(m.comment=O.comment);continue}const E=v?u(a,v,O,c):l(a,O.end,b,null,O,c);a.schema.compat&&Cf(s.indent,v,c),p=E.range[2],m.items.push(E)}return m.range=[s.offset,p,g??p],m}function Ba(u,l,a,s){let c="";if(u){let o=!1,h="";for(const m of u){const{source:p,type:g}=m;switch(g){case"space":o=!0;break;case"comment":{a&&!o&&s(m,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const b=p.substring(1)||" ";c?c+=h+b:c=b,h="";break}case"newline":c&&(h+=p),o=!0;break;default:s(m,"UNEXPECTED_TOKEN",`Unexpected ${g} at node end`)}l+=p.length}}return{comment:c,offset:l}}const mf="Block collections are not allowed within flow collections",gf=u=>u&&(u.type==="block-map"||u.type==="block-seq");function rb({composeNode:u,composeEmptyNode:l},a,s,c,o){var w;const h=s.start.source==="{",m=h?"flow map":"flow sequence",p=(o==null?void 0:o.nodeClass)??(h?Lt:el),g=new p(a.schema);g.flow=!0;const b=a.atRoot;b&&(a.atRoot=!1),a.atKey&&(a.atKey=!1);let v=s.offset+s.start.source.length;for(let M=0;M<s.items.length;++M){const R=s.items[M],{start:K,key:Q,sep:Z,value:W}=R,k=wi(K,{flow:m,indicator:"explicit-key-ind",next:Q??(Z==null?void 0:Z[0]),offset:v,onError:c,parentIndent:s.indent,startOnNewline:!1});if(!k.found){if(!k.anchor&&!k.tag&&!Z&&!W){M===0&&k.comma?c(k.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${m}`):M<s.items.length-1&&c(k.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${m}`),k.comment&&(g.comment?g.comment+=`
`+k.comment:g.comment=k.comment),v=k.end;continue}!h&&a.options.strict&&Da(Q)&&c(Q,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(M===0)k.comma&&c(k.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${m}`);else if(k.comma||c(k.start,"MISSING_CHAR",`Missing , between ${m} items`),k.comment){let V="";e:for(const U of K)switch(U.type){case"comma":case"space":break;case"comment":V=U.source.substring(1);break e;default:break e}if(V){let U=g.items[g.items.length-1];je(U)&&(U=U.value??U.key),U.comment?U.comment+=`
`+V:U.comment=V,k.comment=k.comment.substring(V.length+1)}}if(!h&&!Z&&!k.found){const V=W?u(a,W,k,c):l(a,k.end,Z,null,k,c);g.items.push(V),v=V.range[2],gf(W)&&c(V.range,"BLOCK_IN_FLOW",mf)}else{a.atKey=!0;const V=k.end,U=Q?u(a,Q,k,c):l(a,V,K,null,k,c);gf(Q)&&c(U.range,"BLOCK_IN_FLOW",mf),a.atKey=!1;const ae=wi(Z??[],{flow:m,indicator:"map-value-ind",next:W,offset:U.range[2],onError:c,parentIndent:s.indent,startOnNewline:!1});if(ae.found){if(!h&&!k.found&&a.options.strict){if(Z)for(const ee of Z){if(ee===ae.found)break;if(ee.type==="newline"){c(ee,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}k.start<ae.found.offset-1024&&c(ae.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else W&&("source"in W&&((w=W.source)==null?void 0:w[0])===":"?c(W,"MISSING_CHAR",`Missing space after : in ${m}`):c(ae.start,"MISSING_CHAR",`Missing , or : between ${m} items`));const te=W?u(a,W,ae,c):ae.found?l(a,ae.end,Z,null,ae,c):null;te?gf(W)&&c(te.range,"BLOCK_IN_FLOW",mf):ae.comment&&(U.comment?U.comment+=`
`+ae.comment:U.comment=ae.comment);const $=new ct(U,te);if(a.options.keepSourceTokens&&($.srcToken=R),h){const ee=g;Up(a,ee.items,U)&&c(V,"DUPLICATE_KEY","Map keys must be unique"),ee.items.push($)}else{const ee=new Lt(a.schema);ee.flow=!0,ee.items.push($);const we=(te??U).range;ee.range=[U.range[0],we[1],we[2]],g.items.push(ee)}v=te?te.range[2]:ae.end}}const O=h?"}":"]",[E,...x]=s.end;let S=v;if((E==null?void 0:E.source)===O)S=E.offset+E.source.length;else{const M=m[0].toUpperCase()+m.substring(1),R=b?`${M} must end with a ${O}`:`${M} in block collection must be sufficiently indented and end with a ${O}`;c(v,b?"MISSING_CHAR":"BAD_INDENT",R),E&&E.source.length!==1&&x.unshift(E)}if(x.length>0){const M=Ba(x,S,a.options.strict,c);M.comment&&(g.comment?g.comment+=`
`+M.comment:g.comment=M.comment),g.range=[s.offset,S,M.offset]}else g.range=[s.offset,S,S];return g}function pf(u,l,a,s,c,o){const h=a.type==="block-map"?ub(u,l,a,s,o):a.type==="block-seq"?cb(u,l,a,s,o):rb(u,l,a,s,o),m=h.constructor;return c==="!"||c===m.tagName?(h.tag=m.tagName,h):(c&&(h.tag=c),h)}function fb(u,l,a,s,c){var O;const o=s.tag,h=o?l.directives.tagName(o.source,E=>c(o,"TAG_RESOLVE_FAILED",E)):null;if(a.type==="block-seq"){const{anchor:E,newlineAfterProp:x}=s,S=E&&o?E.offset>o.offset?E:o:E??o;S&&(!x||x.offset<S.offset)&&c(S,"MISSING_CHAR","Missing newline after block sequence props")}const m=a.type==="block-map"?"map":a.type==="block-seq"?"seq":a.start.source==="{"?"map":"seq";if(!o||!h||h==="!"||h===Lt.tagName&&m==="map"||h===el.tagName&&m==="seq")return pf(u,l,a,c,h);let p=l.schema.tags.find(E=>E.tag===h&&E.collection===m);if(!p){const E=l.schema.knownTags[h];if((E==null?void 0:E.collection)===m)l.schema.tags.push(Object.assign({},E,{default:!1})),p=E;else return E?c(o,"BAD_COLLECTION_TYPE",`${E.tag} used for ${m} collection, but expects ${E.collection??"scalar"}`,!0):c(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${h}`,!0),pf(u,l,a,c,h)}const g=pf(u,l,a,c,h,p),b=((O=p.resolve)==null?void 0:O.call(p,g,E=>c(o,"TAG_RESOLVE_FAILED",E),l.options))??g,v=ke(b)?b:new ce(b);return v.range=g.range,v.tag=h,p!=null&&p.format&&(v.format=p.format),v}function Rp(u,l,a){const s=l.offset,c=ob(l,u.options.strict,a);if(!c)return{value:"",type:null,comment:"",range:[s,s,s]};const o=c.mode===">"?ce.BLOCK_FOLDED:ce.BLOCK_LITERAL,h=l.source?hb(l.source):[];let m=h.length;for(let S=h.length-1;S>=0;--S){const w=h[S][1];if(w===""||w==="\r")m=S;else break}if(m===0){const S=c.chomp==="+"&&h.length>0?`
`.repeat(Math.max(1,h.length-1)):"";let w=s+c.length;return l.source&&(w+=l.source.length),{value:S,type:o,comment:c.comment,range:[s,w,w]}}let p=l.indent+c.indent,g=l.offset+c.length,b=0;for(let S=0;S<m;++S){const[w,M]=h[S];if(M===""||M==="\r")c.indent===0&&w.length>p&&(p=w.length);else{w.length<p&&a(g+w.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),c.indent===0&&(p=w.length),b=S,p===0&&!u.atRoot&&a(g,"BAD_INDENT","Block scalar values in collections must be indented");break}g+=w.length+M.length+1}for(let S=h.length-1;S>=m;--S)h[S][0].length>p&&(m=S+1);let v="",O="",E=!1;for(let S=0;S<b;++S)v+=h[S][0].slice(p)+`
`;for(let S=b;S<m;++S){let[w,M]=h[S];g+=w.length+M.length+1;const R=M[M.length-1]==="\r";if(R&&(M=M.slice(0,-1)),M&&w.length<p){const Q=`Block scalar lines must not be less indented than their ${c.indent?"explicit indentation indicator":"first line"}`;a(g-M.length-(R?2:1),"BAD_INDENT",Q),w=""}o===ce.BLOCK_LITERAL?(v+=O+w.slice(p)+M,O=`
`):w.length>p||M[0]==="    "?(O===" "?O=`
`:!E&&O===`
`&&(O=`
`),v+=O+w.slice(p)+M,O=`
`,E=!0):M===""?O===`
`?v+=`
`:O=`
`:(v+=O+M,O=" ",E=!1)}switch(c.chomp){case"-":break;case"+":for(let S=m;S<h.length;++S)v+=`
`+h[S][0].slice(p);v[v.length-1]!==`
`&&(v+=`
`);break;default:v+=`
`}const x=s+c.length+l.source.length;return{value:v,type:o,comment:c.comment,range:[s,x,x]}}function ob({offset:u,props:l},a,s){if(l[0].type!=="block-scalar-header")return s(l[0],"IMPOSSIBLE","Block scalar header not found"),null;const{source:c}=l[0],o=c[0];let h=0,m="",p=-1;for(let O=1;O<c.length;++O){const E=c[O];if(!m&&(E==="-"||E==="+"))m=E;else{const x=Number(E);!h&&x?h=x:p===-1&&(p=u+O)}}p!==-1&&s(p,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${c}`);let g=!1,b="",v=c.length;for(let O=1;O<l.length;++O){const E=l[O];switch(E.type){case"space":g=!0;case"newline":v+=E.source.length;break;case"comment":a&&!g&&s(E,"MISSING_CHAR","Comments must be separated from other tokens by white space characters"),v+=E.source.length,b=E.source.substring(1);break;case"error":s(E,"UNEXPECTED_TOKEN",E.message),v+=E.source.length;break;default:{const x=`Unexpected token in block scalar header: ${E.type}`;s(E,"UNEXPECTED_TOKEN",x);const S=E.source;S&&typeof S=="string"&&(v+=S.length)}}}return{mode:o,indent:h,chomp:m,comment:b,length:v}}function hb(u){const l=u.split(/\n( *)/),a=l[0],s=a.match(/^( *)/),o=[s!=null&&s[1]?[s[1],a.slice(s[1].length)]:["",a]];for(let h=1;h<l.length;h+=2)o.push([l[h],l[h+1]]);return o}function jp(u,l,a){const{offset:s,type:c,source:o,end:h}=u;let m,p;const g=(O,E,x)=>a(s+O,E,x);switch(c){case"scalar":m=ce.PLAIN,p=db(o,g);break;case"single-quoted-scalar":m=ce.QUOTE_SINGLE,p=mb(o,g);break;case"double-quoted-scalar":m=ce.QUOTE_DOUBLE,p=gb(o,g);break;default:return a(u,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${c}`),{value:"",type:null,comment:"",range:[s,s+o.length,s+o.length]}}const b=s+o.length,v=Ba(h,b,l,a);return{value:p,type:m,comment:v.comment,range:[s,b,v.offset]}}function db(u,l){let a="";switch(u[0]){case"    ":a="a tab character";break;case",":a="flow indicator character ,";break;case"%":a="directive indicator character %";break;case"|":case">":{a=`block scalar indicator ${u[0]}`;break}case"@":case"`":{a=`reserved character ${u[0]}`;break}}return a&&l(0,"BAD_SCALAR_START",`Plain value cannot start with ${a}`),Bp(u)}function mb(u,l){return(u[u.length-1]!=="'"||u.length===1)&&l(u.length,"MISSING_CHAR","Missing closing 'quote"),Bp(u.slice(1,-1)).replace(/''/g,"'")}function Bp(u){let l,a;try{l=new RegExp(`(.*?)(?<![     ])[     ]*\r?
`,"sy"),a=new RegExp(`[     ]*(.*?)(?:(?<![     ])[     ]*)?\r?
`,"sy")}catch{l=/(.*?)[ \t]*\r?\n/sy,a=/[ \t]*(.*?)[ \t]*\r?\n/sy}let s=l.exec(u);if(!s)return u;let c=s[1],o=" ",h=l.lastIndex;for(a.lastIndex=h;s=a.exec(u);)s[1]===""?o===`
`?c+=o:o=`
`:(c+=o+s[1],o=" "),h=a.lastIndex;const m=/[ \t]*(.*)/sy;return m.lastIndex=h,s=m.exec(u),c+o+((s==null?void 0:s[1])??"")}function gb(u,l){let a="";for(let s=1;s<u.length-1;++s){const c=u[s];if(!(c==="\r"&&u[s+1]===`
`))if(c===`
`){const{fold:o,offset:h}=pb(u,s);a+=o,s=h}else if(c==="\\"){let o=u[++s];const h=yb[o];if(h)a+=h;else if(o===`
`)for(o=u[s+1];o===" "||o==="    ";)o=u[++s+1];else if(o==="\r"&&u[s+1]===`
`)for(o=u[++s+1];o===" "||o==="    ";)o=u[++s+1];else if(o==="x"||o==="u"||o==="U"){const m={x:2,u:4,U:8}[o];a+=vb(u,s+1,m,l),s+=m}else{const m=u.substr(s-1,2);l(s-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${m}`),a+=m}}else if(c===" "||c==="    "){const o=s;let h=u[s+1];for(;h===" "||h==="    ";)h=u[++s+1];h!==`
`&&!(h==="\r"&&u[s+2]===`
`)&&(a+=s>o?u.slice(o,s+1):c)}else a+=c}return(u[u.length-1]!=='"'||u.length===1)&&l(u.length,"MISSING_CHAR",'Missing closing "quote'),a}function pb(u,l){let a="",s=u[l+1];for(;(s===" "||s==="    "||s===`
`||s==="\r")&&!(s==="\r"&&u[l+2]!==`
`);)s===`
`&&(a+=`
`),l+=1,s=u[l+1];return a||(a=" "),{fold:a,offset:l}}const yb={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
`,r:"\r",t:"    ",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","    ":"    "};function vb(u,l,a,s){const c=u.substr(l,a),h=c.length===a&&/^[0-9a-fA-F]+$/.test(c)?parseInt(c,16):NaN;if(isNaN(h)){const m=u.substr(l-2,a+2);return s(l-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${m}`),m}return String.fromCodePoint(h)}function kp(u,l,a,s){const{value:c,type:o,comment:h,range:m}=l.type==="block-scalar"?Rp(u,l,s):jp(l,u.options.strict,s),p=a?u.directives.tagName(a.source,v=>s(a,"TAG_RESOLVE_FAILED",v)):null;let g;u.options.stringKeys&&u.atKey?g=u.schema[nn]:p?g=bb(u.schema,c,p,a,s):l.type==="scalar"?g=Sb(u,c,l,s):g=u.schema[nn];let b;try{const v=g.resolve(c,O=>s(a??l,"TAG_RESOLVE_FAILED",O),u.options);b=De(v)?v:new ce(v)}catch(v){const O=v instanceof Error?v.message:String(v);s(a??l,"TAG_RESOLVE_FAILED",O),b=new ce(c)}return b.range=m,b.source=c,o&&(b.type=o),p&&(b.tag=p),g.format&&(b.format=g.format),h&&(b.comment=h),b}function bb(u,l,a,s,c){var m;if(a==="!")return u[nn];const o=[];for(const p of u.tags)if(!p.collection&&p.tag===a)if(p.default&&p.test)o.push(p);else return p;for(const p of o)if((m=p.test)!=null&&m.test(l))return p;const h=u.knownTags[a];return h&&!h.collection?(u.tags.push(Object.assign({},h,{default:!1,test:void 0})),h):(c(s,"TAG_RESOLVE_FAILED",`Unresolved tag: ${a}`,a!=="tag:yaml.org,2002:str"),u[nn])}function Sb({atKey:u,directives:l,schema:a},s,c,o){const h=a.tags.find(m=>{var p;return(m.default===!0||u&&m.default==="key")&&((p=m.test)==null?void 0:p.test(s))})||a[nn];if(a.compat){const m=a.compat.find(p=>{var g;return p.default&&((g=p.test)==null?void 0:g.test(s))})??a[nn];if(h.tag!==m.tag){const p=l.tagString(h.tag),g=l.tagString(m.tag),b=`Value may be parsed as either ${p} or ${g}`;o(c,"TAG_RESOLVE_FAILED",b,!0)}}return h}function Tb(u,l,a){if(l){a??(a=l.length);for(let s=a-1;s>=0;--s){let c=l[s];switch(c.type){case"space":case"comment":case"newline":u-=c.source.length;continue}for(c=l[++s];(c==null?void 0:c.type)==="space";)u+=c.source.length,c=l[++s];break}}return u}const Eb={composeNode:qp,composeEmptyNode:Vf};function qp(u,l,a,s){const c=u.atKey,{spaceBefore:o,comment:h,anchor:m,tag:p}=a;let g,b=!0;switch(l.type){case"alias":g=wb(u,l,s),(m||p)&&s(l,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":g=kp(u,l,p,s),m&&(g.anchor=m.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":try{g=fb(Eb,u,l,a,s),m&&(g.anchor=m.source.substring(1))}catch(v){const O=v instanceof Error?v.message:String(v);s(l,"RESOURCE_EXHAUSTION",O)}break;default:{const v=l.type==="error"?l.message:`Unsupported token (type: ${l.type})`;s(l,"UNEXPECTED_TOKEN",v),b=!1}}return g??(g=Vf(u,l.offset,void 0,null,a,s)),m&&g.anchor===""&&s(m,"BAD_ALIAS","Anchor cannot be an empty string"),c&&u.options.stringKeys&&(!De(g)||typeof g.value!="string"||g.tag&&g.tag!=="tag:yaml.org,2002:str")&&s(p??l,"NON_STRING_KEY","With stringKeys, all keys must be strings"),o&&(g.spaceBefore=!0),h&&(l.type==="scalar"&&l.source===""?g.comment=h:g.commentBefore=h),u.options.keepSourceTokens&&b&&(g.srcToken=l),g}function Vf(u,l,a,s,{spaceBefore:c,comment:o,anchor:h,tag:m,end:p},g){const b={type:"scalar",offset:Tb(l,a,s),indent:-1,source:""},v=kp(u,b,m,g);return h&&(v.anchor=h.source.substring(1),v.anchor===""&&g(h,"BAD_ALIAS","Anchor cannot be an empty string")),c&&(v.spaceBefore=!0),o&&(v.comment=o,v.range[2]=p),v}function wb({options:u},{offset:l,source:a,end:s},c){const o=new _u(a.substring(1));o.source===""&&c(l,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&c(l+a.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);const h=l+a.length,m=Ba(s,h,u.strict,c);return o.range=[l,h,m.offset],m.comment&&(o.comment=m.comment),o}function Ab(u,l,{offset:a,start:s,value:c,end:o},h){const m=Object.assign({_directives:l},u),p=new xi(void 0,m),g={atKey:!1,atRoot:!0,directives:p.directives,options:p.options,schema:p.schema},b=wi(s,{indicator:"doc-start",next:c??(o==null?void 0:o[0]),offset:a,onError:h,parentIndent:0,startOnNewline:!0});b.found&&(p.directives.docStart=!0,c&&(c.type==="block-map"||c.type==="block-seq")&&!b.hasNewline&&h(b.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),p.contents=c?qp(g,c,b,h):Vf(g,b.end,s,null,b,h);const v=p.contents.range[2],O=Ba(o,v,!1,h);return O.comment&&(p.comment=O.comment),p.range=[a,v,O.offset],p}function Ma(u){if(typeof u=="number")return[u,u+1];if(Array.isArray(u))return u.length===2?u:[u[0],u[1]];const{offset:l,source:a}=u;return[l,l+(typeof a=="string"?a.length:1)]}function wg(u){var c;let l="",a=!1,s=!1;for(let o=0;o<u.length;++o){const h=u[o];switch(h[0]){case"#":l+=(l===""?"":s?`
`:`
`)+(h.substring(1)||" "),a=!0,s=!1;break;case"%":((c=u[o+1])==null?void 0:c[0])!=="#"&&(o+=1),a=!1;break;default:a||(s=!0),a=!1}}return{comment:l,afterEmptyLine:s}}class Qf{constructor(l={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(a,s,c,o)=>{const h=Ma(a);o?this.warnings.push(new Lp(h,s,c)):this.errors.push(new Al(h,s,c))},this.directives=new ot({version:l.version||"1.2"}),this.options=l}decorate(l,a){const{comment:s,afterEmptyLine:c}=wg(this.prelude);if(s){const o=l.contents;if(a)l.comment=l.comment?`${l.comment}
${s}`:s;else if(c||l.directives.docStart||!o)l.commentBefore=s;else if(Be(o)&&!o.flow&&o.items.length>0){let h=o.items[0];je(h)&&(h=h.key);const m=h.commentBefore;h.commentBefore=m?`${s}
${m}`:s}else{const h=o.commentBefore;o.commentBefore=h?`${s}
${h}`:s}}a?(Array.prototype.push.apply(l.errors,this.errors),Array.prototype.push.apply(l.warnings,this.warnings)):(l.errors=this.errors,l.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:wg(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(l,a=!1,s=-1){for(const c of l)yield*this.next(c);yield*this.end(a,s)}*next(l){switch(l.type){case"directive":this.directives.add(l.source,(a,s,c)=>{const o=Ma(l);o[0]+=a,this.onError(o,"BAD_DIRECTIVE",s,c)}),this.prelude.push(l.source),this.atDirectives=!0;break;case"document":{const a=Ab(this.options,this.directives,l,this.onError);this.atDirectives&&!a.directives.docStart&&this.onError(l,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(a,!1),this.doc&&(yield this.doc),this.doc=a,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(l.source);break;case"error":{const a=l.source?`${l.message}: ${JSON.stringify(l.source)}`:l.message,s=new Al(Ma(l),"UNEXPECTED_TOKEN",a);this.atDirectives||!this.doc?this.errors.push(s):this.doc.errors.push(s);break}case"doc-end":{if(!this.doc){const s="Unexpected doc-end without preceding document";this.errors.push(new Al(Ma(l),"UNEXPECTED_TOKEN",s));break}this.doc.directives.docEnd=!0;const a=Ba(l.end,l.offset+l.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),a.comment){const s=this.doc.comment;this.doc.comment=s?`${s}
${a.comment}`:a.comment}this.doc.range[2]=a.offset;break}default:this.errors.push(new Al(Ma(l),"UNEXPECTED_TOKEN",`Unsupported token ${l.type}`))}}*end(l=!1,a=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(l){const s=Object.assign({_directives:this.directives},this.options),c=new xi(void 0,s);this.atDirectives&&this.onError(a,"MISSING_CHAR","Missing directives-end indicator line"),c.range=[0,a,a],this.decorate(c,!1),yield c}}}function Ob(u,l=!0,a){if(u){const s=(c,o,h)=>{const m=typeof c=="number"?c:Array.isArray(c)?c[0]:c.offset;if(a)a(m,o,h);else throw new Al([m,m+1],o,h)};switch(u.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return jp(u,l,s);case"block-scalar":return Rp({options:{strict:l}},u,s)}}return null}function _b(u,l){const{implicitKey:a=!1,indent:s,inFlow:c=!1,offset:o=-1,type:h="PLAIN"}=l,m=Ra({type:h,value:u},{implicitKey:a,indent:s>0?" ".repeat(s):"",inFlow:c,options:{blockQuote:!0,lineWidth:-1}}),p=l.end??[{type:"newline",offset:-1,indent:s,source:`
`}];switch(m[0]){case"|":case">":{const g=m.indexOf(`
`),b=m.substring(0,g),v=m.substring(g+1)+`
`,O=[{type:"block-scalar-header",offset:o,indent:s,source:b}];return Hp(O,p)||O.push({type:"newline",offset:-1,indent:s,source:`
`}),{type:"block-scalar",offset:o,indent:s,props:O,source:v}}case'"':return{type:"double-quoted-scalar",offset:o,indent:s,source:m,end:p};case"'":return{type:"single-quoted-scalar",offset:o,indent:s,source:m,end:p};default:return{type:"scalar",offset:o,indent:s,source:m,end:p}}}function Nb(u,l,a={}){let{afterKey:s=!1,implicitKey:c=!1,inFlow:o=!1,type:h}=a,m="indent"in u?u.indent:null;if(s&&typeof m=="number"&&(m+=2),!h)switch(u.type){case"single-quoted-scalar":h="QUOTE_SINGLE";break;case"double-quoted-scalar":h="QUOTE_DOUBLE";break;case"block-scalar":{const g=u.props[0];if(g.type!=="block-scalar-header")throw new Error("Invalid block scalar header");h=g.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:h="PLAIN"}const p=Ra({type:h,value:l},{implicitKey:c||m===null,indent:m!==null&&m>0?" ".repeat(m):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(p[0]){case"|":case">":Mb(u,p);break;case'"':yf(u,p,"double-quoted-scalar");break;case"'":yf(u,p,"single-quoted-scalar");break;default:yf(u,p,"scalar")}}function Mb(u,l){const a=l.indexOf(`
`),s=l.substring(0,a),c=l.substring(a+1)+`
`;if(u.type==="block-scalar"){const o=u.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=s,u.source=c}else{const{offset:o}=u,h="indent"in u?u.indent:-1,m=[{type:"block-scalar-header",offset:o,indent:h,source:s}];Hp(m,"end"in u?u.end:void 0)||m.push({type:"newline",offset:-1,indent:h,source:`
`});for(const p of Object.keys(u))p!=="type"&&p!=="offset"&&delete u[p];Object.assign(u,{type:"block-scalar",indent:h,props:m,source:c})}}function Hp(u,l){if(l)for(const a of l)switch(a.type){case"space":case"comment":u.push(a);break;case"newline":return u.push(a),!0}return!1}function yf(u,l,a){switch(u.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":u.type=a,u.source=l;break;case"block-scalar":{const s=u.props.slice(1);let c=l.length;u.props[0].type==="block-scalar-header"&&(c-=u.props[0].source.length);for(const o of s)o.offset+=c;delete u.props,Object.assign(u,{type:a,source:l,end:s});break}case"block-map":case"block-seq":{const c={type:"newline",offset:u.offset+l.length,indent:u.indent,source:`
`};delete u.items,Object.assign(u,{type:a,source:l,end:[c]});break}default:{const s="indent"in u?u.indent:-1,c="end"in u&&Array.isArray(u.end)?u.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(const o of Object.keys(u))o!=="type"&&o!=="offset"&&delete u[o];Object.assign(u,{type:a,indent:s,source:l,end:c})}}}const Cb=u=>"type"in u?Tu(u):gu(u);function Tu(u){switch(u.type){case"block-scalar":{let l="";for(const a of u.props)l+=Tu(a);return l+u.source}case"block-map":case"block-seq":{let l="";for(const a of u.items)l+=gu(a);return l}case"flow-collection":{let l=u.start.source;for(const a of u.items)l+=gu(a);for(const a of u.end)l+=a.source;return l}case"document":{let l=gu(u);if(u.end)for(const a of u.end)l+=a.source;return l}default:{let l=u.source;if("end"in u&&u.end)for(const a of u.end)l+=a.source;return l}}}function gu({start:u,key:l,sep:a,value:s}){let c="";for(const o of u)c+=o.source;if(l&&(c+=Tu(l)),a)for(const o of a)c+=o.source;return s&&(c+=Tu(s)),c}const zf=Symbol("break visit"),zb=Symbol("skip children"),Yp=Symbol("remove item");function _l(u,l){"type"in u&&u.type==="document"&&(u={start:u.start,value:u.value}),$p(Object.freeze([]),u,l)}_l.BREAK=zf;_l.SKIP=zb;_l.REMOVE=Yp;_l.itemAtPath=(u,l)=>{let a=u;for(const[s,c]of l){const o=a==null?void 0:a[s];if(o&&"items"in o)a=o.items[c];else return}return a};_l.parentCollection=(u,l)=>{const a=_l.itemAtPath(u,l.slice(0,-1)),s=l[l.length-1][0],c=a==null?void 0:a[s];if(c&&"items"in c)return c;throw new Error("Parent collection not found")};function $p(u,l,a){let s=a(l,u);if(typeof s=="symbol")return s;for(const c of["key","value"]){const o=l[c];if(o&&"items"in o){for(let h=0;h<o.items.length;++h){const m=$p(Object.freeze(u.concat([[c,h]])),o.items[h],a);if(typeof m=="number")h=m-1;else{if(m===zf)return zf;m===Yp&&(o.items.splice(h,1),h-=1)}}typeof s=="function"&&c==="key"&&(s=s(l,u))}}return typeof s=="function"?s(l,u):s}const ju="\uFEFF",Bu="",ku="",La="",xb=u=>!!u&&"items"in u,Db=u=>!!u&&(u.type==="scalar"||u.type==="single-quoted-scalar"||u.type==="double-quoted-scalar"||u.type==="block-scalar");function Lb(u){switch(u){case ju:return"<BOM>";case Bu:return"<DOC>";case ku:return"<FLOW_END>";case La:return"<SCALAR>";default:return JSON.stringify(u)}}function Kp(u){switch(u){case ju:return"byte-order-mark";case Bu:return"doc-mode";case ku:return"flow-error-end";case La:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
`:case`\r
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(u[0]){case" ":case"    ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}const Ub=Object.freeze(Object.defineProperty({__proto__:null,BOM:ju,DOCUMENT:Bu,FLOW_END:ku,SCALAR:La,createScalarToken:_b,isCollection:xb,isScalar:Db,prettyToken:Lb,resolveAsScalar:Ob,setScalarValue:Nb,stringify:Cb,tokenType:Kp,visit:_l},Symbol.toStringTag,{value:"Module"}));function Jt(u){switch(u){case void 0:case" ":case`
`:case"\r":case"    ":return!0;default:return!1}}const Ag=new Set("0123456789ABCDEFabcdef"),Rb=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),au=new Set(",[]{}"),jb=new Set(` ,[]{}
\r    `),vf=u=>!u||jb.has(u);class Gp{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(l,a=!1){if(l){if(typeof l!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+l:l,this.lineEndPos=null}this.atEnd=!a;let s=this.next??"stream";for(;s&&(a||this.hasChars(1));)s=yield*this.parseNext(s)}atLineEnd(){let l=this.pos,a=this.buffer[l];for(;a===" "||a==="    ";)a=this.buffer[++l];return!a||a==="#"||a===`
`?!0:a==="\r"?this.buffer[l+1]===`
`:!1}charAt(l){return this.buffer[this.pos+l]}continueScalar(l){let a=this.buffer[l];if(this.indentNext>0){let s=0;for(;a===" ";)a=this.buffer[++s+l];if(a==="\r"){const c=this.buffer[s+l+1];if(c===`
`||!c&&!this.atEnd)return l+s+1}return a===`
`||s>=this.indentNext||!a&&!this.atEnd?l+s:-1}if(a==="-"||a==="."){const s=this.buffer.substr(l,3);if((s==="---"||s==="...")&&Jt(this.buffer[l+3]))return-1}return l}getLine(){let l=this.lineEndPos;return(typeof l!="number"||l!==-1&&l<this.pos)&&(l=this.buffer.indexOf(`
`,this.pos),this.lineEndPos=l),l===-1?this.atEnd?this.buffer.substring(this.pos):null:(this.buffer[l-1]==="\r"&&(l-=1),this.buffer.substring(this.pos,l))}hasChars(l){return this.pos+l<=this.buffer.length}setNext(l){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=l,null}peek(l){return this.buffer.substr(this.pos,l)}*parseNext(l){switch(l){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let l=this.getLine();if(l===null)return this.setNext("stream");if(l[0]===ju&&(yield*this.pushCount(1),l=l.substring(1)),l[0]==="%"){let a=l.length,s=l.indexOf("#");for(;s!==-1;){const o=l[s-1];if(o===" "||o==="    "){a=s-1;break}else s=l.indexOf("#",s+1)}for(;;){const o=l[a-1];if(o===" "||o==="    ")a-=1;else break}const c=(yield*this.pushCount(a))+(yield*this.pushSpaces(!0));return yield*this.pushCount(l.length-c),this.pushNewline(),"stream"}if(this.atLineEnd()){const a=yield*this.pushSpaces(!0);return yield*this.pushCount(l.length-a),yield*this.pushNewline(),"stream"}return yield Bu,yield*this.parseLineStart()}*parseLineStart(){const l=this.charAt(0);if(!l&&!this.atEnd)return this.setNext("line-start");if(l==="-"||l==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");const a=this.peek(3);if((a==="---"||a==="...")&&Jt(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,a==="---"?"doc":"stream"}return this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!Jt(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){const[l,a]=this.peek(2);if(!a&&!this.atEnd)return this.setNext("block-start");if((l==="-"||l==="?"||l===":")&&Jt(a)){const s=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=s,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);const l=this.getLine();if(l===null)return this.setNext("doc");let a=yield*this.pushIndicators();switch(l[a]){case"#":yield*this.pushCount(l.length-a);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(vf),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return a+=yield*this.parseBlockScalarHeader(),a+=yield*this.pushSpaces(!0),yield*this.pushCount(l.length-a),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let l,a,s=-1;do l=yield*this.pushNewline(),l>0?(a=yield*this.pushSpaces(!1),this.indentValue=s=a):a=0,a+=yield*this.pushSpaces(!0);while(l+a>0);const c=this.getLine();if(c===null)return this.setNext("flow");if((s!==-1&&s<this.indentNext&&c[0]!=="#"||s===0&&(c.startsWith("---")||c.startsWith("..."))&&Jt(c[3]))&&!(s===this.indentNext-1&&this.flowLevel===1&&(c[0]==="]"||c[0]==="}")))return this.flowLevel=0,yield ku,yield*this.parseLineStart();let o=0;for(;c[o]===",";)o+=yield*this.pushCount(1),o+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(o+=yield*this.pushIndicators(),c[o]){case void 0:return"flow";case"#":return yield*this.pushCount(c.length-o),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(vf),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{const h=this.charAt(1);if(this.flowKey||Jt(h)||h===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){const l=this.charAt(0);let a=this.buffer.indexOf(l,this.pos+1);if(l==="'")for(;a!==-1&&this.buffer[a+1]==="'";)a=this.buffer.indexOf("'",a+2);else for(;a!==-1;){let o=0;for(;this.buffer[a-1-o]==="\\";)o+=1;if(o%2===0)break;a=this.buffer.indexOf('"',a+1)}const s=this.buffer.substring(0,a);let c=s.indexOf(`
`,this.pos);if(c!==-1){for(;c!==-1;){const o=this.continueScalar(c+1);if(o===-1)break;c=s.indexOf(`
`,o)}c!==-1&&(a=c-(s[c-1]==="\r"?2:1))}if(a===-1){if(!this.atEnd)return this.setNext("quoted-scalar");a=this.buffer.length}return yield*this.pushToIndex(a+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let l=this.pos;for(;;){const a=this.buffer[++l];if(a==="+")this.blockScalarKeep=!0;else if(a>"0"&&a<="9")this.blockScalarIndent=Number(a)-1;else if(a!=="-")break}return yield*this.pushUntil(a=>Jt(a)||a==="#")}*parseBlockScalar(){let l=this.pos-1,a=0,s;e:for(let o=this.pos;s=this.buffer[o];++o)switch(s){case" ":a+=1;break;case`
`:l=o,a=0;break;case"\r":{const h=this.buffer[o+1];if(!h&&!this.atEnd)return this.setNext("block-scalar");if(h===`
`)break}default:break e}if(!s&&!this.atEnd)return this.setNext("block-scalar");if(a>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=a:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{const o=this.continueScalar(l+1);if(o===-1)break;l=this.buffer.indexOf(`
`,o)}while(l!==-1);if(l===-1){if(!this.atEnd)return this.setNext("block-scalar");l=this.buffer.length}}let c=l+1;for(s=this.buffer[c];s===" ";)s=this.buffer[++c];if(s==="    "){for(;s==="    "||s===" "||s==="\r"||s===`
`;)s=this.buffer[++c];l=c-1}else if(!this.blockScalarKeep)do{let o=l-1,h=this.buffer[o];h==="\r"&&(h=this.buffer[--o]);const m=o;for(;h===" ";)h=this.buffer[--o];if(h===`
`&&o>=this.pos&&o+1+a>m)l=o;else break}while(!0);return yield La,yield*this.pushToIndex(l+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){const l=this.flowLevel>0;let a=this.pos-1,s=this.pos-1,c;for(;c=this.buffer[++s];)if(c===":"){const o=this.buffer[s+1];if(Jt(o)||l&&au.has(o))break;a=s}else if(Jt(c)){let o=this.buffer[s+1];if(c==="\r"&&(o===`
`?(s+=1,c=`
`,o=this.buffer[s+1]):a=s),o==="#"||l&&au.has(o))break;if(c===`
`){const h=this.continueScalar(s+1);if(h===-1)break;s=Math.max(s,h-2)}}else{if(l&&au.has(c))break;a=s}return!c&&!this.atEnd?this.setNext("plain-scalar"):(yield La,yield*this.pushToIndex(a+1,!0),l?"flow":"doc")}*pushCount(l){return l>0?(yield this.buffer.substr(this.pos,l),this.pos+=l,l):0}*pushToIndex(l,a){const s=this.buffer.slice(this.pos,l);return s?(yield s,this.pos+=s.length,s.length):(a&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(vf))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{const l=this.flowLevel>0,a=this.charAt(1);if(Jt(a)||l&&au.has(a))return l?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let l=this.pos+2,a=this.buffer[l];for(;!Jt(a)&&a!==">";)a=this.buffer[++l];return yield*this.pushToIndex(a===">"?l+1:l,!1)}else{let l=this.pos+1,a=this.buffer[l];for(;a;)if(Rb.has(a))a=this.buffer[++l];else if(a==="%"&&Ag.has(this.buffer[l+1])&&Ag.has(this.buffer[l+2]))a=this.buffer[l+=3];else break;return yield*this.pushToIndex(l,!1)}}*pushNewline(){const l=this.buffer[this.pos];return l===`
`?yield*this.pushCount(1):l==="\r"&&this.charAt(1)===`
`?yield*this.pushCount(2):0}*pushSpaces(l){let a=this.pos-1,s;do s=this.buffer[++a];while(s===" "||l&&s==="    ");const c=a-this.pos;return c>0&&(yield this.buffer.substr(this.pos,c),this.pos=a),c}*pushUntil(l){let a=this.pos,s=this.buffer[a];for(;!l(s);)s=this.buffer[++a];return yield*this.pushToIndex(a,!1)}}class Vp{constructor(){this.lineStarts=[],this.addNewLine=l=>this.lineStarts.push(l),this.linePos=l=>{let a=0,s=this.lineStarts.length;for(;a<s;){const o=a+s>>1;this.lineStarts[o]<l?a=o+1:s=o}if(this.lineStarts[a]===l)return{line:a+1,col:1};if(a===0)return{line:0,col:l};const c=this.lineStarts[a-1];return{line:a,col:l-c+1}}}}function Fn(u,l){for(let a=0;a<u.length;++a)if(u[a].type===l)return!0;return!1}function Og(u){for(let l=0;l<u.length;++l)switch(u[l].type){case"space":case"comment":case"newline":break;default:return l}return-1}function Qp(u){switch(u==null?void 0:u.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function su(u){switch(u.type){case"document":return u.start;case"block-map":{const l=u.items[u.items.length-1];return l.sep??l.start}case"block-seq":return u.items[u.items.length-1].start;default:return[]}}function mi(u){var a;if(u.length===0)return[];let l=u.length;e:for(;--l>=0;)switch(u[l].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;((a=u[++l])==null?void 0:a.type)==="space";);return u.splice(l,u.length)}function _g(u){if(u.start.type==="flow-seq-start")for(const l of u.items)l.sep&&!l.value&&!Fn(l.start,"explicit-key-ind")&&!Fn(l.sep,"map-value-ind")&&(l.key&&(l.value=l.key),delete l.key,Qp(l.value)?l.value.end?Array.prototype.push.apply(l.value.end,l.sep):l.value.end=l.sep:Array.prototype.push.apply(l.start,l.sep),delete l.sep)}class Xf{constructor(l){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new Gp,this.onNewLine=l}*parse(l,a=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(const s of this.lexer.lex(l,a))yield*this.next(s);a||(yield*this.end())}*next(l){if(this.source=l,this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=l.length;return}const a=Kp(l);if(a)if(a==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=a,yield*this.step(),a){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+l.length);break;case"space":this.atNewLine&&l[0]===" "&&(this.indent+=l.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=l.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=l.length}else{const s=`Not a YAML token: ${l}`;yield*this.pop({type:"error",offset:this.offset,message:s,source:l}),this.offset+=l.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){const l=this.peek(1);if(this.type==="doc-end"&&(l==null?void 0:l.type)!=="doc-end"){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!l)return yield*this.stream();switch(l.type){case"document":return yield*this.document(l);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(l);case"block-scalar":return yield*this.blockScalar(l);case"block-map":return yield*this.blockMap(l);case"block-seq":return yield*this.blockSequence(l);case"flow-collection":return yield*this.flowCollection(l);case"doc-end":return yield*this.documentEnd(l)}yield*this.pop()}peek(l){return this.stack[this.stack.length-l]}*pop(l){const a=l??this.stack.pop();if(!a)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield a;else{const s=this.peek(1);switch(a.type==="block-scalar"?a.indent="indent"in s?s.indent:0:a.type==="flow-collection"&&s.type==="document"&&(a.indent=0),a.type==="flow-collection"&&_g(a),s.type){case"document":s.value=a;break;case"block-scalar":s.props.push(a);break;case"block-map":{const c=s.items[s.items.length-1];if(c.value){s.items.push({start:[],key:a,sep:[]}),this.onKeyLine=!0;return}else if(c.sep)c.value=a;else{Object.assign(c,{key:a,sep:[]}),this.onKeyLine=!c.explicitKey;return}break}case"block-seq":{const c=s.items[s.items.length-1];c.value?s.items.push({start:[],value:a}):c.value=a;break}case"flow-collection":{const c=s.items[s.items.length-1];!c||c.value?s.items.push({start:[],key:a,sep:[]}):c.sep?c.value=a:Object.assign(c,{key:a,sep:[]});return}default:yield*this.pop(),yield*this.pop(a)}if((s.type==="document"||s.type==="block-map"||s.type==="block-seq")&&(a.type==="block-map"||a.type==="block-seq")){const c=a.items[a.items.length-1];c&&!c.sep&&!c.value&&c.start.length>0&&Og(c.start)===-1&&(a.indent===0||c.start.every(o=>o.type!=="comment"||o.indent<a.indent))&&(s.type==="document"?s.end=c.start:s.items.push({start:c.start}),a.items.splice(-1,1))}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{const l={type:"document",offset:this.offset,start:[]};this.type==="doc-start"&&l.start.push(this.sourceToken),this.stack.push(l);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(l){if(l.value)return yield*this.lineEnd(l);switch(this.type){case"doc-start":{Og(l.start)!==-1?(yield*this.pop(),yield*this.step()):l.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":l.start.push(this.sourceToken);return}const a=this.startBlockValue(l);a?this.stack.push(a):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(l){if(this.type==="map-value-ind"){const a=su(this.peek(2)),s=mi(a);let c;l.end?(c=l.end,c.push(this.sourceToken),delete l.end):c=[this.sourceToken];const o={type:"block-map",offset:l.offset,indent:l.indent,items:[{start:s,key:l,sep:c}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=o}else yield*this.lineEnd(l)}*blockScalar(l){switch(this.type){case"space":case"comment":case"newline":l.props.push(this.sourceToken);return;case"scalar":if(l.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let a=this.source.indexOf(`
`)+1;for(;a!==0;)this.onNewLine(this.offset+a),a=this.source.indexOf(`
`,a)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(l){var s;const a=l.items[l.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,a.value){const c="end"in a.value?a.value.end:void 0,o=Array.isArray(c)?c[c.length-1]:void 0;(o==null?void 0:o.type)==="comment"?c==null||c.push(this.sourceToken):l.items.push({start:[this.sourceToken]})}else a.sep?a.sep.push(this.sourceToken):a.start.push(this.sourceToken);return;case"space":case"comment":if(a.value)l.items.push({start:[this.sourceToken]});else if(a.sep)a.sep.push(this.sourceToken);else{if(this.atIndentedComment(a.start,l.indent)){const c=l.items[l.items.length-2],o=(s=c==null?void 0:c.value)==null?void 0:s.end;if(Array.isArray(o)){Array.prototype.push.apply(o,a.start),o.push(this.sourceToken),l.items.pop();return}}a.start.push(this.sourceToken)}return}if(this.indent>=l.indent){const c=!this.onKeyLine&&this.indent===l.indent,o=c&&(a.sep||a.explicitKey)&&this.type!=="seq-item-ind";let h=[];if(o&&a.sep&&!a.value){const m=[];for(let p=0;p<a.sep.length;++p){const g=a.sep[p];switch(g.type){case"newline":m.push(p);break;case"space":break;case"comment":g.indent>l.indent&&(m.length=0);break;default:m.length=0}}m.length>=2&&(h=a.sep.splice(m[1]))}switch(this.type){case"anchor":case"tag":o||a.value?(h.push(this.sourceToken),l.items.push({start:h}),this.onKeyLine=!0):a.sep?a.sep.push(this.sourceToken):a.start.push(this.sourceToken);return;case"explicit-key-ind":!a.sep&&!a.explicitKey?(a.start.push(this.sourceToken),a.explicitKey=!0):o||a.value?(h.push(this.sourceToken),l.items.push({start:h,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(a.explicitKey)if(a.sep)if(a.value)l.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Fn(a.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:h,key:null,sep:[this.sourceToken]}]});else if(Qp(a.key)&&!Fn(a.sep,"newline")){const m=mi(a.start),p=a.key,g=a.sep;g.push(this.sourceToken),delete a.key,delete a.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:m,key:p,sep:g}]})}else h.length>0?a.sep=a.sep.concat(h,this.sourceToken):a.sep.push(this.sourceToken);else if(Fn(a.start,"newline"))Object.assign(a,{key:null,sep:[this.sourceToken]});else{const m=mi(a.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:m,key:null,sep:[this.sourceToken]}]})}else a.sep?a.value||o?l.items.push({start:h,key:null,sep:[this.sourceToken]}):Fn(a.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):a.sep.push(this.sourceToken):Object.assign(a,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const m=this.flowScalar(this.type);o||a.value?(l.items.push({start:h,key:m,sep:[]}),this.onKeyLine=!0):a.sep?this.stack.push(m):(Object.assign(a,{key:m,sep:[]}),this.onKeyLine=!0);return}default:{const m=this.startBlockValue(l);if(m){if(m.type==="block-seq"){if(!a.explicitKey&&a.sep&&!Fn(a.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else c&&l.items.push({start:h});this.stack.push(m);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(l){var s;const a=l.items[l.items.length-1];switch(this.type){case"newline":if(a.value){const c="end"in a.value?a.value.end:void 0,o=Array.isArray(c)?c[c.length-1]:void 0;(o==null?void 0:o.type)==="comment"?c==null||c.push(this.sourceToken):l.items.push({start:[this.sourceToken]})}else a.start.push(this.sourceToken);return;case"space":case"comment":if(a.value)l.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(a.start,l.indent)){const c=l.items[l.items.length-2],o=(s=c==null?void 0:c.value)==null?void 0:s.end;if(Array.isArray(o)){Array.prototype.push.apply(o,a.start),o.push(this.sourceToken),l.items.pop();return}}a.start.push(this.sourceToken)}return;case"anchor":case"tag":if(a.value||this.indent<=l.indent)break;a.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==l.indent)break;a.value||Fn(a.start,"seq-item-ind")?l.items.push({start:[this.sourceToken]}):a.start.push(this.sourceToken);return}if(this.indent>l.indent){const c=this.startBlockValue(l);if(c){this.stack.push(c);return}}yield*this.pop(),yield*this.step()}*flowCollection(l){const a=l.items[l.items.length-1];if(this.type==="flow-error-end"){let s;do yield*this.pop(),s=this.peek(1);while((s==null?void 0:s.type)==="flow-collection")}else if(l.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!a||a.sep?l.items.push({start:[this.sourceToken]}):a.start.push(this.sourceToken);return;case"map-value-ind":!a||a.value?l.items.push({start:[],key:null,sep:[this.sourceToken]}):a.sep?a.sep.push(this.sourceToken):Object.assign(a,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!a||a.value?l.items.push({start:[this.sourceToken]}):a.sep?a.sep.push(this.sourceToken):a.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const c=this.flowScalar(this.type);!a||a.value?l.items.push({start:[],key:c,sep:[]}):a.sep?this.stack.push(c):Object.assign(a,{key:c,sep:[]});return}case"flow-map-end":case"flow-seq-end":l.end.push(this.sourceToken);return}const s=this.startBlockValue(l);s?this.stack.push(s):(yield*this.pop(),yield*this.step())}else{const s=this.peek(2);if(s.type==="block-map"&&(this.type==="map-value-ind"&&s.indent===l.indent||this.type==="newline"&&!s.items[s.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&s.type!=="flow-collection"){const c=su(s),o=mi(c);_g(l);const h=l.end.splice(1,l.end.length);h.push(this.sourceToken);const m={type:"block-map",offset:l.offset,indent:l.indent,items:[{start:o,key:l,sep:h}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=m}else yield*this.lineEnd(l)}}flowScalar(l){if(this.onNewLine){let a=this.source.indexOf(`
`)+1;for(;a!==0;)this.onNewLine(this.offset+a),a=this.source.indexOf(`
`,a)+1}return{type:l,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(l){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const a=su(l),s=mi(a);return s.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;const a=su(l),s=mi(a);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(l,a){return this.type!=="comment"||this.indent<=a?!1:l.every(s=>s.type==="newline"||s.type==="space")}*documentEnd(l){this.type!=="doc-mode"&&(l.end?l.end.push(this.sourceToken):l.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(l){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:l.end?l.end.push(this.sourceToken):l.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}}function Xp(u){const l=u.prettyErrors!==!1;return{lineCounter:u.lineCounter||l&&new Vp||null,prettyErrors:l}}function Bb(u,l={}){const{lineCounter:a,prettyErrors:s}=Xp(l),c=new Xf(a==null?void 0:a.addNewLine),o=new Qf(l),h=Array.from(o.compose(c.parse(u)));if(s&&a)for(const m of h)m.errors.forEach(Su(u,a)),m.warnings.forEach(Su(u,a));return h.length>0?h:Object.assign([],{empty:!0},o.streamInfo())}function Zp(u,l={}){const{lineCounter:a,prettyErrors:s}=Xp(l),c=new Xf(a==null?void 0:a.addNewLine),o=new Qf(l);let h=null;for(const m of o.compose(c.parse(u),!0,u.length))if(!h)h=m;else if(h.options.logLevel!=="silent"){h.errors.push(new Al(m.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return s&&a&&(h.errors.forEach(Su(u,a)),h.warnings.forEach(Su(u,a))),h}function kb(u,l,a){let s;typeof l=="function"?s=l:a===void 0&&l&&typeof l=="object"&&(a=l);const c=Zp(u,a);if(!c)return null;if(c.warnings.forEach(o=>mp(c.options.logLevel,o)),c.errors.length>0){if(c.options.logLevel!=="silent")throw c.errors[0];c.errors=[]}return c.toJS(Object.assign({reviver:s},a))}function qb(u,l,a){let s=null;if(typeof l=="function"||Array.isArray(l)?s=l:a===void 0&&l&&(a=l),typeof a=="string"&&(a=a.length),typeof a=="number"){const c=Math.round(a);a=c<1?void 0:c>8?{indent:8}:{indent:c}}if(u===void 0){const{keepUndefined:c}=a??l??{};if(!c)return}return Nl(u)&&!s?u.toString(a):new xi(u,s,a).toString(a)}const Hb=Object.freeze(Object.defineProperty({__proto__:null,Alias:_u,CST:Ub,Composer:Qf,Document:xi,Lexer:Gp,LineCounter:Vp,Pair:ct,Parser:Xf,Scalar:ce,Schema:Ru,YAMLError:Gf,YAMLMap:Lt,YAMLParseError:Al,YAMLSeq:el,YAMLWarning:Lp,isAlias:tl,isCollection:Be,isDocument:Nl,isMap:Ni,isNode:ke,isPair:je,isScalar:De,isSeq:Mi,parse:kb,parseAllDocuments:Bb,parseDocument:Zp,stringify:qb,visit:Ml,visitAsync:Ou},Symbol.toStringTag,{value:"Module"}));function Yb(u,l,a={}){var O;const s=new u.LineCounter,c={keepSourceTokens:!0,lineCounter:s,...a},o=u.parseDocument(l,c),h=[],m=E=>[s.linePos(E[0]),s.linePos(E[1])],p=E=>{h.push({message:E.message,range:[s.linePos(E.pos[0]),s.linePos(E.pos[1])]})},g=(E,x)=>{for(const S of x.items){if(S instanceof u.Scalar&&typeof S.value=="string"){const R=Eu.parse(S,c,h);R&&(E.children=E.children||[],E.children.push(R));continue}if(S instanceof u.YAMLMap){b(E,S);continue}h.push({message:"Sequence items should be strings or maps",range:m(S.range||x.range)})}},b=(E,x)=>{for(const S of x.items){if(E.children=E.children||[],!(S.key instanceof u.Scalar&&typeof S.key.value=="string")){h.push({message:"Only string keys are supported",range:m(S.key.range||x.range)});continue}const M=S.key,R=S.value;if(M.value==="text"){if(!(R instanceof u.Scalar&&typeof R.value=="string")){h.push({message:"Text value should be a string",range:m(S.value.range||x.range)});continue}E.children.push({kind:"text",text:bf(R.value)});continue}if(M.value==="/children"){if(!(R instanceof u.Scalar&&typeof R.value=="string")||R.value!=="contain"&&R.value!=="equal"&&R.value!=="deep-equal"){h.push({message:'Strict value should be "contain", "equal" or "deep-equal"',range:m(S.value.range||x.range)});continue}E.containerMode=R.value;continue}if(M.value.startsWith("/")){if(!(R instanceof u.Scalar&&typeof R.value=="string")){h.push({message:"Property value should be a string",range:m(S.value.range||x.range)});continue}E.props=E.props??{},E.props[M.value.slice(1)]=bf(R.value);continue}const K=Eu.parse(M,c,h);if(!K)continue;if(R instanceof u.Scalar){const W=typeof R.value;if(W!=="string"&&W!=="number"&&W!=="boolean"){h.push({message:"Node value should be a string or a sequence",range:m(S.value.range||x.range)});continue}E.children.push({...K,children:[{kind:"text",text:bf(String(R.value))}]});continue}if(R instanceof u.YAMLSeq){E.children.push(K),g(K,R);continue}h.push({message:"Map values should be strings or sequences",range:m(S.value.range||x.range)})}},v={kind:"role",role:"fragment"};return o.errors.forEach(p),h.length?{errors:h,fragment:v}:(o.contents instanceof u.YAMLSeq||h.push({message:'Aria snapshot must be a YAML sequence, elements starting with " -"',range:o.contents?m(o.contents.range):[{line:0,col:0},{line:0,col:0}]}),h.length?{errors:h,fragment:v}:(g(v,o.contents),h.length?{errors:h,fragment:$b}:((O=v.children)==null?void 0:O.length)===1&&(!v.containerMode||v.containerMode==="contain")?{fragment:v.children[0],errors:[]}:{fragment:v,errors:[]}))}const $b={kind:"role",role:"fragment"};function Jp(u){return u.replace(/[\u200b\u00ad]/g,"").replace(/[\r\n\s\t]+/g," ").trim()}function bf(u){return{raw:u,normalized:Jp(u)}}class Eu{static parse(l,a,s){try{return new Eu(l.value)._parse()}catch(c){if(c instanceof Ng){const o=a.prettyErrors===!1?c.message:c.message+`:
`+l.value+`
`+" ".repeat(c.pos)+`^
`;return s.push({message:o,range:[a.lineCounter.linePos(l.range[0]),a.lineCounter.linePos(l.range[0]+c.pos)]}),null}throw c}}constructor(l){this._input=l,this._pos=0,this._length=l.length}_peek(){return this._input[this._pos]||""}_next(){return this._pos<this._length?this._input[this._pos++]:null}_eof(){return this._pos>=this._length}_isWhitespace(){return!this._eof()&&/\s/.test(this._peek())}_skipWhitespace(){for(;this._isWhitespace();)this._pos++}_readIdentifier(l){this._eof()&&this._throwError(`Unexpected end of input when expecting ${l}`);const a=this._pos;for(;!this._eof()&&/[a-zA-Z]/.test(this._peek());)this._pos++;return this._input.slice(a,this._pos)}_readString(){let l="",a=!1;for(;!this._eof();){const s=this._next();if(a)l+=s,a=!1;else if(s==="\\")a=!0;else{if(s==='"')return l;l+=s}}this._throwError("Unterminated string")}_throwError(l,a=0){throw new Ng(l,a||this._pos)}_readRegex(){let l="",a=!1,s=!1;for(;!this._eof();){const c=this._next();if(a)l+=c,a=!1;else if(c==="\\")a=!0,l+=c;else{if(c==="/"&&!s)return{pattern:l};c==="["?(s=!0,l+=c):c==="]"&&s?(l+=c,s=!1):l+=c}}this._throwError("Unterminated regex")}_readStringOrRegex(){const l=this._peek();return l==='"'?(this._next(),Jp(this._readString())):l==="/"?(this._next(),this._readRegex()):null}_readAttributes(l){let a=this._pos;for(;this._skipWhitespace(),this._peek()==="[";){this._next(),this._skipWhitespace(),a=this._pos;const s=this._readIdentifier("attribute");this._skipWhitespace();let c="";if(this._peek()==="=")for(this._next(),this._skipWhitespace(),a=this._pos;this._peek()!=="]"&&!this._isWhitespace()&&!this._eof();)c+=this._next();this._skipWhitespace(),this._peek()!=="]"&&this._throwError("Expected ]"),this._next(),this._applyAttribute(l,s,c||"true",a)}}_parse(){this._skipWhitespace();const l=this._readIdentifier("role");this._skipWhitespace();const a=this._readStringOrRegex()||"",s={kind:"role",role:l,name:a};return this._readAttributes(s),this._skipWhitespace(),this._eof()||this._throwError("Unexpected input"),s}_applyAttribute(l,a,s,c){if(a==="checked"){this._assert(s==="true"||s==="false"||s==="mixed",'Value of "checked" attribute must be a boolean or "mixed"',c),l.checked=s==="true"?!0:s==="false"?!1:"mixed";return}if(a==="disabled"){this._assert(s==="true"||s==="false",'Value of "disabled" attribute must be a boolean',c),l.disabled=s==="true";return}if(a==="expanded"){this._assert(s==="true"||s==="false",'Value of "expanded" attribute must be a boolean',c),l.expanded=s==="true";return}if(a==="active"){this._assert(s==="true"||s==="false",'Value of "active" attribute must be a boolean',c),l.active=s==="true";return}if(a==="invalid"){this._assert(s==="true"||s==="false"||s==="grammar"||s==="spelling",'Value of "invalid" attribute must be a boolean, "grammar" or "spelling"',c),l.invalid=s==="true"?!0:s==="false"?!1:s;return}if(a==="level"){this._assert(!isNaN(Number(s)),'Value of "level" attribute must be a number',c),l.level=Number(s);return}if(a==="pressed"){this._assert(s==="true"||s==="false"||s==="mixed",'Value of "pressed" attribute must be a boolean or "mixed"',c),l.pressed=s==="true"?!0:s==="false"?!1:"mixed";return}if(a==="selected"){this._assert(s==="true"||s==="false",'Value of "selected" attribute must be a boolean',c),l.selected=s==="true";return}this._assert(!1,`Unsupported attribute [${a}]`,c)}_assert(l,a,s){l||this._throwError(a||"Assertion error",s)}}class Ng extends Error{constructor(l,a){super(l),this.pos=a}}const Kb=({className:u,style:l,open:a,isModal:s,minWidth:c,verticalOffset:o,requestClose:h,anchor:m,dataTestId:p,children:g})=>{const b=he.useRef(null),[v,O]=he.useState(0),[E]=Sf(b),[x,S]=Sf(m),w=m?Gb(E,x,o):void 0;return he.useEffect(()=>{const M=K=>{!b.current||!(K.target instanceof Node)||b.current.contains(K.target)||h==null||h()},R=K=>{K.key==="Escape"&&(h==null||h())};return a?(document.addEventListener("mousedown",M),document.addEventListener("keydown",R),()=>{document.removeEventListener("mousedown",M),document.removeEventListener("keydown",R)}):()=>{}},[a,h]),he.useLayoutEffect(()=>S(),[a,S]),he.useEffect(()=>{const M=()=>O(R=>R+1);return window.addEventListener("resize",M),()=>{window.removeEventListener("resize",M)}},[]),he.useLayoutEffect(()=>{b.current&&(a?s?b.current.showModal():b.current.show():b.current.close())},[a,s]),X.jsx("dialog",{ref:b,style:{position:"fixed",margin:w?0:void 0,zIndex:110,top:w==null?void 0:w.top,left:w==null?void 0:w.left,minWidth:c||0,...l},className:u,"data-testid":p,children:g})};function Gb(u,l,a=4,s=4){let c=Math.max(s,l.left);c+u.width>window.innerWidth-s&&(c=window.innerWidth-u.width-s);let o=Math.max(0,l.bottom)+a;return o+u.height>window.innerHeight-a&&(Math.max(0,l.top)>u.height+a?o=Math.max(0,l.top)-u.height-a:o=window.innerHeight-a-u.height),{left:c,top:o}}const Vb=({})=>{const[u,l]=he.useState([]),[a,s]=he.useState(!1),[c,o]=he.useState(new Map),[h,m]=he.useState("none"),[p,g]=he.useState(),[b,v]=pu("recorderPropertiesTab","log"),[O,E]=he.useState(),[x,S]=he.useState(),[w,M]=he.useState(!1),[R,K]=z1(),[Q,Z]=pu("autoExpect",!1),W=he.useRef(null),k=he.useMemo(Qb,[]),[V,U]=he.useState(""),ae=he.useRef(null),te=he.useMemo(()=>u.find(D=>D.id===p)??ev(),[u,p]);he.useLayoutEffect(()=>{const se={modeChanged:({mode:D})=>m(D),sourcesUpdated:({sources:D})=>{l(D),window.playwrightSourcesEchoForTest=D},pageNavigated:({url:D})=>{document.title=D?`Playwright Inspector - ${D}`:"Playwright Inspector"},pauseStateChanged:({paused:D})=>s(D),callLogsUpdated:({callLogs:D})=>{o(G=>{const ne=new Map(G);for(const de of D)de.reveal=!G.has(de.id),ne.set(de.id,de);return ne})},sourceRevealRequested:({sourceId:D})=>g(D),elementPicked:({elementInfo:D,userGesture:G})=>{const ne=te.language;U(ep(ne,D.selector)),E(D.ariaSnapshot),S([]),G&&b!=="locator"&&b!=="aria"&&v("locator"),h==="inspecting"&&b==="aria"||k.setMode({mode:h==="inspecting"?"standby":"recording"}).catch(()=>{})}};window.dispatch=D=>{se[D.method].call(se,D.params)}},[k,h,b,v,te]),he.useEffect(()=>{k.setAutoExpect({autoExpect:Q})},[Q,k]),he.useLayoutEffect(()=>{var se;(se=ae.current)==null||se.scrollIntoView({block:"center",inline:"nearest"})},[ae]),he.useLayoutEffect(()=>{const se=D=>{switch(D.key){case"F8":D.preventDefault(),a?k.resume():k.pause();break;case"F10":D.preventDefault(),a&&k.step();break}};return document.addEventListener("keydown",se),()=>document.removeEventListener("keydown",se)},[a,k]);const $=he.useCallback(se=>{(h==="none"||h==="inspecting")&&k.setMode({mode:"standby"}),U(se),k.highlightRequested({selector:se})},[h,k]),ee=he.useCallback(se=>{(h==="none"||h==="inspecting")&&k.setMode({mode:"standby"});const{fragment:D,errors:G}=Yb(Hb,se,{prettyErrors:!1}),ne=G.map(de=>({message:de.message,line:de.range[1].line,column:de.range[1].col,type:"subtle-error"}));S(ne),E(se),G.length||k.highlightRequested({ariaTemplate:D})},[h,k]),we=h==="recording"||h==="recording-inspecting"||h==="assertingText"||h==="assertingVisibility";return X.jsxs("div",{className:"recorder",children:[X.jsxs(xg,{children:[X.jsx(Dt,{icon:we?"stop-circle":"circle-large-filled",title:we?"Stop Recording":"Start Recording",toggled:we,onClick:()=>{k.setMode({mode:h==="none"||h==="standby"||h==="inspecting"?"recording":"standby"})},children:"Record"}),X.jsx(hg,{}),X.jsx(Dt,{icon:"inspect",title:"Pick locator",toggled:h==="inspecting"||h==="recording-inspecting",onClick:()=>{const se={inspecting:"standby",none:"inspecting",standby:"inspecting",recording:"recording-inspecting","recording-inspecting":"recording",assertingText:"recording-inspecting",assertingVisibility:"recording-inspecting",assertingValue:"recording-inspecting",assertingSnapshot:"recording-inspecting"}[h];k.setMode({mode:se}).catch(()=>{})}}),X.jsx(Dt,{icon:"eye",title:"Assert visibility",toggled:h==="assertingVisibility",disabled:h==="none"||h==="standby"||h==="inspecting",onClick:()=>{k.setMode({mode:h==="assertingVisibility"?"recording":"assertingVisibility"})}}),X.jsx(Dt,{icon:"whole-word",title:"Assert text",toggled:h==="assertingText",disabled:h==="none"||h==="standby"||h==="inspecting",onClick:()=>{k.setMode({mode:h==="assertingText"?"recording":"assertingText"})}}),X.jsx(Dt,{icon:"symbol-constant",title:"Assert value",toggled:h==="assertingValue",disabled:h==="none"||h==="standby"||h==="inspecting",onClick:()=>{k.setMode({mode:h==="assertingValue"?"recording":"assertingValue"})}}),X.jsx(Dt,{icon:"gist",title:"Assert snapshot",toggled:h==="assertingSnapshot",disabled:h==="none"||h==="standby"||h==="inspecting",onClick:()=>{k.setMode({mode:h==="assertingSnapshot"?"recording":"assertingSnapshot"})}}),X.jsx(hg,{}),X.jsx(Dt,{icon:"files",title:"Copy",disabled:!te||!te.text,onClick:()=>{eg(te.text)}}),X.jsx(Dt,{icon:"debug-continue",title:"Resume (F8)",ariaLabel:"Resume",disabled:!a,onClick:()=>{k.resume()}}),X.jsx(Dt,{icon:"debug-pause",title:"Pause (F8)",ariaLabel:"Pause",disabled:a,onClick:()=>{k.pause()}}),X.jsx(Dt,{icon:"debug-step-over",title:"Step over (F10)",ariaLabel:"Step over",disabled:!a,onClick:()=>{k.step()}}),X.jsx("div",{style:{flex:"auto"}}),X.jsx("div",{children:"Target:"}),X.jsx(F1,{fileId:te.id,sources:u,setFileId:se=>{g(se),k.fileChanged({fileId:se})}}),X.jsx(Dt,{icon:"clear-all",title:"Clear",disabled:!te||!te.text,onClick:()=>{k.clear()}}),X.jsx(Dt,{ref:W,icon:"settings-gear",title:"Settings",onClick:()=>M(se=>!se)}),X.jsxs(Kb,{style:{padding:"4px 8px"},open:w,verticalOffset:8,requestClose:()=>M(!1),anchor:W,dataTestId:"settings-dialog",children:[X.jsxs("div",{className:"setting setting-theme",children:[X.jsx("label",{htmlFor:"dark-mode-setting",children:"Theme:"}),X.jsx("select",{id:"dark-mode-setting",value:R,onChange:se=>K(se.target.value),children:_1.map(se=>X.jsx("option",{value:se.value,children:se.label},se.value))})]},"dark-mode-setting"),X.jsxs("div",{className:"setting",title:"Automatically generate assertions while recording",children:[X.jsx("input",{type:"checkbox",id:"auto-expect-setting",checked:Q,onChange:()=>{k.setAutoExpect({autoExpect:!Q}),Z(!Q)}}),X.jsx("label",{htmlFor:"auto-expect-setting",children:"Generate assertions"})]},"auto-expect-setting")]})]}),X.jsx(J1,{sidebarSize:200,main:X.jsx(ff,{text:te.text,highlighter:te.language,highlight:te.highlight,revealLine:te.revealLine,readOnly:!0,lineNumbers:!0}),sidebar:X.jsx(W1,{rightToolbar:b==="locator"||b==="aria"?[X.jsx(Dt,{icon:"files",title:"Copy",onClick:()=>eg((b==="locator"?V:O)||"")},1)]:[],tabs:[{id:"locator",title:"Locator",render:()=>X.jsx(ff,{text:V,placeholder:"Type locator to inspect",highlighter:te.language,focusOnChange:!0,onChange:$,wrapLines:!0})},{id:"log",title:"Log",render:()=>X.jsx(zv,{language:te.language,log:Array.from(c.values())})},{id:"aria",title:"Aria",render:()=>X.jsx(ff,{text:O||"",placeholder:"Type aria template to match",highlighter:"yaml",onChange:ee,highlight:x,wrapLines:!0})}],selectedTab:b,setSelectedTab:v})})]})};function Qb(){return new Proxy({},{get:(u,l)=>{if(typeof l=="string")return a=>window.sendCommand({method:l,params:a})}})}(async()=>(N1(),B1.createRoot(document.querySelector("#root")).render(X.jsx(Vb,{}))))();export{b1 as g};
scripts/node_modules/playwright-core/lib/vite/recorder/index.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,29 @@
<!--
  Copyright (c) Microsoft Corporation.
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at
      http://www.apache.org/licenses/LICENSE-2.0
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<!DOCTYPE html>
<html lang="en" translate="no">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" href="/playwright-logo.svg" type="image/svg+xml">
    <title>Playwright Inspector</title>
    <script type="module" crossorigin src="/assets/index-Bq-mQf8S.js"></script>
    <link rel="stylesheet" crossorigin href="/assets/index-4ZiSSCmn.css">
  </head>
  <body>
    <div id="root"></div>
  </body>
</html>
scripts/node_modules/playwright-core/lib/vite/recorder/playwright-logo.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
<svg width="400" height="400" viewBox="0 0 400 400" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M136.444 221.556C123.558 225.213 115.104 231.625 109.535 238.032C114.869 233.364 122.014 229.08 131.652 226.348C141.51 223.554 149.92 223.574 156.869 224.915V219.481C150.941 218.939 144.145 219.371 136.444 221.556ZM108.946 175.876L61.0895 188.484C61.0895 188.484 61.9617 189.716 63.5767 191.36L104.153 180.668C104.153 180.668 103.578 188.077 98.5847 194.705C108.03 187.559 108.946 175.876 108.946 175.876ZM149.005 288.347C81.6582 306.486 46.0272 228.438 35.2396 187.928C30.2556 169.229 28.0799 155.067 27.5 145.928C27.4377 144.979 27.4665 144.179 27.5336 143.446C24.04 143.657 22.3674 145.473 22.7077 150.721C23.2876 159.855 25.4633 174.016 30.4473 192.721C41.2301 233.225 76.8659 311.273 144.213 293.134C158.872 289.185 169.885 281.992 178.152 272.81C170.532 279.692 160.995 285.112 149.005 288.347ZM161.661 128.11V132.903H188.077C187.535 131.206 186.989 129.677 186.447 128.11H161.661Z" fill="#2D4552"/>
<path d="M193.981 167.584C205.861 170.958 212.144 179.287 215.465 186.658L228.711 190.42C228.711 190.42 226.904 164.623 203.57 157.995C181.741 151.793 168.308 170.124 166.674 172.496C173.024 167.972 182.297 164.268 193.981 167.584ZM299.422 186.777C277.573 180.547 264.145 198.916 262.535 201.255C268.89 196.736 278.158 193.031 289.837 196.362C301.698 199.741 307.976 208.06 311.307 215.436L324.572 219.212C324.572 219.212 322.736 193.41 299.422 186.777ZM286.262 254.795L176.072 223.99C176.072 223.99 177.265 230.038 181.842 237.869L274.617 263.805C282.255 259.386 286.262 254.795 286.262 254.795ZM209.867 321.102C122.618 297.71 133.166 186.543 147.284 133.865C153.097 112.156 159.073 96.0203 164.029 85.204C161.072 84.5953 158.623 86.1529 156.203 91.0746C150.941 101.747 144.212 119.124 137.7 143.45C123.586 196.127 113.038 307.29 200.283 330.682C241.406 341.699 273.442 324.955 297.323 298.659C274.655 319.19 245.714 330.701 209.867 321.102Z" fill="#2D4552"/>
<path d="M161.661 262.296V239.863L99.3324 257.537C99.3324 257.537 103.938 230.777 136.444 221.556C146.302 218.762 154.713 218.781 161.661 220.123V128.11H192.869C189.471 117.61 186.184 109.526 183.423 103.909C178.856 94.612 174.174 100.775 163.545 109.665C156.059 115.919 137.139 129.261 108.668 136.933C80.1966 144.61 57.179 142.574 47.5752 140.911C33.9601 138.562 26.8387 135.572 27.5049 145.928C28.0847 155.062 30.2605 169.224 35.2445 187.928C46.0272 228.433 81.663 306.481 149.01 288.342C166.602 283.602 179.019 274.233 187.626 262.291H161.661V262.296ZM61.0848 188.484L108.946 175.876C108.946 175.876 107.551 194.288 89.6087 199.018C71.6614 203.743 61.0848 188.484 61.0848 188.484Z" fill="#E2574C"/>
<path d="M341.786 129.174C329.345 131.355 299.498 134.072 262.612 124.185C225.716 114.304 201.236 97.0224 191.537 88.8994C177.788 77.3834 171.74 69.3802 165.788 81.4857C160.526 92.163 153.797 109.54 147.284 133.866C133.171 186.543 122.623 297.706 209.867 321.098C297.093 344.47 343.53 242.92 357.644 190.238C364.157 165.917 367.013 147.5 367.799 135.625C368.695 122.173 359.455 126.078 341.786 129.174ZM166.497 172.756C166.497 172.756 180.246 151.372 203.565 158C226.899 164.628 228.706 190.425 228.706 190.425L166.497 172.756ZM223.42 268.713C182.403 256.698 176.077 223.99 176.077 223.99L286.262 254.796C286.262 254.791 264.021 280.578 223.42 268.713ZM262.377 201.495C262.377 201.495 276.107 180.126 299.422 186.773C322.736 193.411 324.572 219.208 324.572 219.208L262.377 201.495Z" fill="#2EAD33"/>
<path d="M139.88 246.04L99.3324 257.532C99.3324 257.532 103.737 232.44 133.607 222.496L110.647 136.33L108.663 136.933C80.1918 144.611 57.1742 142.574 47.5704 140.911C33.9554 138.563 26.834 135.572 27.5001 145.929C28.08 155.063 30.2557 169.224 35.2397 187.929C46.0225 228.433 81.6583 306.481 149.005 288.342L150.989 287.719L139.88 246.04ZM61.0848 188.485L108.946 175.876C108.946 175.876 107.551 194.288 89.6087 199.018C71.6615 203.743 61.0848 188.485 61.0848 188.485Z" fill="#D65348"/>
<path d="M225.27 269.163L223.415 268.712C182.398 256.698 176.072 223.99 176.072 223.99L232.89 239.872L262.971 124.281L262.607 124.185C225.711 114.304 201.232 97.0224 191.532 88.8994C177.783 77.3834 171.735 69.3802 165.783 81.4857C160.526 92.163 153.797 109.54 147.284 133.866C133.171 186.543 122.623 297.706 209.867 321.097L211.655 321.5L225.27 269.163ZM166.497 172.756C166.497 172.756 180.246 151.372 203.565 158C226.899 164.628 228.706 190.425 228.706 190.425L166.497 172.756Z" fill="#1D8D22"/>
<path d="M141.946 245.451L131.072 248.537C133.641 263.019 138.169 276.917 145.276 289.195C146.513 288.922 147.74 288.687 149 288.342C152.302 287.451 155.364 286.348 158.312 285.145C150.371 273.361 145.118 259.789 141.946 245.451ZM137.7 143.451C132.112 164.307 127.113 194.326 128.489 224.436C130.952 223.367 133.554 222.371 136.444 221.551L138.457 221.101C136.003 188.939 141.308 156.165 147.284 133.866C148.799 128.225 150.318 122.978 151.832 118.085C149.393 119.637 146.767 121.228 143.776 122.867C141.759 129.093 139.722 135.898 137.7 143.451Z" fill="#C04B41"/>
</svg>
scripts/node_modules/playwright-core/lib/vite/traceViewer/assets/codeMirrorModule-LEHpjmcn.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,32 @@
import{v as Ju}from"./defaultSettingsView-BNmKHKpQ.js";import"./urlMatch-BYQrIQwR.js";var vi={exports:{}},Zu=vi.exports,pa;function mt(){return pa||(pa=1,(function(ct,xt){(function(b,pe){ct.exports=pe()})(Zu,(function(){var b=navigator.userAgent,pe=navigator.platform,_=/gecko\/\d/i.test(b),te=/MSIE \d/.test(b),oe=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(b),Q=/Edge\/(\d+)/.exec(b),k=te||oe||Q,I=k&&(te?document.documentMode||6:+(Q||oe)[1]),Y=!Q&&/WebKit\//.test(b),ne=Y&&/Qt\/\d+\.\d+/.test(b),S=!Q&&/Chrome\/(\d+)/.exec(b),R=S&&+S[1],A=/Opera\//.test(b),$=/Apple Computer/.test(navigator.vendor),ue=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(b),O=/PhantomJS/.test(b),w=$&&(/Mobile\/\w+/.test(b)||navigator.maxTouchPoints>2),M=/Android/.test(b),N=w||M||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(b),z=w||/Mac/.test(pe),X=/\bCrOS\b/.test(b),q=/win/i.test(pe),p=A&&b.match(/Version\/(\d*\.\d*)/);p&&(p=Number(p[1])),p&&p>=15&&(A=!1,Y=!0);var W=z&&(ne||A&&(p==null||p<12.11)),J=_||k&&I>=9;function P(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var V=function(e,t){var n=e.className,r=P(t).exec(n);if(r){var i=n.slice(r.index+r[0].length);e.className=n.slice(0,r.index)+(i?r[1]+i:"")}};function F(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function G(e,t){return F(e).appendChild(t)}function c(e,t,n,r){var i=document.createElement(e);if(n&&(i.className=n),r&&(i.style.cssText=r),typeof t=="string")i.appendChild(document.createTextNode(t));else if(t)for(var o=0;o<t.length;++o)i.appendChild(t[o]);return i}function T(e,t,n,r){var i=c(e,t,n,r);return i.setAttribute("role","presentation"),i}var C;document.createRange?C=function(e,t,n,r){var i=document.createRange();return i.setEnd(r||e,n),i.setStart(e,t),i}:C=function(e,t,n){var r=document.body.createTextRange();try{r.moveToElementText(e.parentNode)}catch{return r}return r.collapse(!0),r.moveEnd("character",n),r.moveStart("character",t),r};function g(e,t){if(t.nodeType==3&&(t=t.parentNode),e.contains)return e.contains(t);do if(t.nodeType==11&&(t=t.host),t==e)return!0;while(t=t.parentNode)}function y(e){var t=e.ownerDocument||e,n;try{n=e.activeElement}catch{n=t.body||null}for(;n&&n.shadowRoot&&n.shadowRoot.activeElement;)n=n.shadowRoot.activeElement;return n}function j(e,t){var n=e.className;P(t).test(n)||(e.className+=(n?" ":"")+t)}function de(e,t){for(var n=e.split(" "),r=0;r<n.length;r++)n[r]&&!P(n[r]).test(t)&&(t+=" "+n[r]);return t}var v=function(e){e.select()};w?v=function(e){e.selectionStart=0,e.selectionEnd=e.value.length}:k&&(v=function(e){try{e.select()}catch{}});function d(e){return e.display.wrapper.ownerDocument}function fe(e){return Te(e.display.wrapper)}function Te(e){return e.getRootNode?e.getRootNode():e.ownerDocument}function le(e){return d(e).defaultView}function xe(e){var t=Array.prototype.slice.call(arguments,1);return function(){return e.apply(null,t)}}function Me(e,t,n){t||(t={});for(var r in e)e.hasOwnProperty(r)&&(n!==!1||!t.hasOwnProperty(r))&&(t[r]=e[r]);return t}function Fe(e,t,n,r,i){t==null&&(t=e.search(/[^\s\u00a0]/),t==-1&&(t=e.length));for(var o=r||0,l=i||0;;){var a=e.indexOf("    ",o);if(a<0||a>=t)return l+(t-o);l+=a-o,l+=n-l%n,o=a+1}}var Ce=function(){this.id=null,this.f=null,this.time=0,this.handler=xe(this.onTimeout,this)};Ce.prototype.onTimeout=function(e){e.id=0,e.time<=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},Ce.prototype.set=function(e,t){this.f=t;var n=+new Date+e;(!this.id||n<this.time)&&(clearTimeout(this.id),this.id=setTimeout(this.handler,e),this.time=n)};function ve(e,t){for(var n=0;n<e.length;++n)if(e[n]==t)return n;return-1}var Oe=50,qe={toString:function(){return"CodeMirror.Pass"}},$e={scroll:!1},dt={origin:"*mouse"},Pe={origin:"+move"};function _e(e,t,n){for(var r=0,i=0;;){var o=e.indexOf("    ",r);o==-1&&(o=e.length);var l=o-r;if(o==e.length||i+l>=t)return r+Math.min(l,t-i);if(i+=o-r,i+=n-i%n,r=o+1,i>=t)return r}}var Ue=[""];function et(e){for(;Ue.length<=e;)Ue.push(we(Ue)+" ");return Ue[e]}function we(e){return e[e.length-1]}function Ie(e,t){for(var n=[],r=0;r<e.length;r++)n[r]=t(e[r],r);return n}function E(e,t,n){for(var r=0,i=n(t);r<e.length&&n(e[r])<=i;)r++;e.splice(r,0,t)}function ee(){}function K(e,t){var n;return Object.create?n=Object.create(e):(ee.prototype=e,n=new ee),t&&Me(t,n),n}var ze=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;function me(e){return/\w/.test(e)||e>"€"&&(e.toUpperCase()!=e.toLowerCase()||ze.test(e))}function De(e,t){return t?t.source.indexOf("\\w")>-1&&me(e)?!0:t.test(e):me(e)}function be(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var Be=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function Ne(e){return e.charCodeAt(0)>=768&&Be.test(e)}function Mt(e,t,n){for(;(n<0?t>0:t<e.length)&&Ne(e.charAt(t));)t+=n;return t}function Pt(e,t,n){for(var r=t>n?-1:1;;){if(t==n)return t;var i=(t+n)/2,o=r<0?Math.ceil(i):Math.floor(i);if(o==t)return e(o)?t:n;e(o)?n=o:t=o+r}}function or(e,t,n,r){if(!e)return r(t,n,"ltr",0);for(var i=!1,o=0;o<e.length;++o){var l=e[o];(l.from<n&&l.to>t||t==n&&l.to==t)&&(r(Math.max(l.from,t),Math.min(l.to,n),l.level==1?"rtl":"ltr",o),i=!0)}i||r(t,n,"ltr")}var br=null;function lr(e,t,n){var r;br=null;for(var i=0;i<e.length;++i){var o=e[i];if(o.from<t&&o.to>t)return i;o.to==t&&(o.from!=o.to&&n=="before"?r=i:br=i),o.from==t&&(o.from!=o.to&&n!="before"?r=i:br=i)}return r??br}var mi=(function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function n(u){return u<=247?e.charAt(u):1424<=u&&u<=1524?"R":1536<=u&&u<=1785?t.charAt(u-1536):1774<=u&&u<=2220?"r":8192<=u&&u<=8203?"w":u==8204?"b":"L"}var r=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,i=/[stwN]/,o=/[LRr]/,l=/[Lb1n]/,a=/[1n]/;function s(u,h,x){this.level=u,this.from=h,this.to=x}return function(u,h){var x=h=="ltr"?"L":"R";if(u.length==0||h=="ltr"&&!r.test(u))return!1;for(var D=u.length,L=[],H=0;H<D;++H)L.push(n(u.charCodeAt(H)));for(var Z=0,ie=x;Z<D;++Z){var ae=L[Z];ae=="m"?L[Z]=ie:ie=ae}for(var he=0,se=x;he<D;++he){var ge=L[he];ge=="1"&&se=="r"?L[he]="n":o.test(ge)&&(se=ge,ge=="r"&&(L[he]="R"))}for(var Le=1,ke=L[0];Le<D-1;++Le){var Ee=L[Le];Ee=="+"&&ke=="1"&&L[Le+1]=="1"?L[Le]="1":Ee==","&&ke==L[Le+1]&&(ke=="1"||ke=="n")&&(L[Le]=ke),ke=Ee}for(var Ke=0;Ke<D;++Ke){var st=L[Ke];if(st==",")L[Ke]="N";else if(st=="%"){var Xe=void 0;for(Xe=Ke+1;Xe<D&&L[Xe]=="%";++Xe);for(var Nt=Ke&&L[Ke-1]=="!"||Xe<D&&L[Xe]=="1"?"1":"N",Tt=Ke;Tt<Xe;++Tt)L[Tt]=Nt;Ke=Xe-1}}for(var tt=0,Ct=x;tt<D;++tt){var ft=L[tt];Ct=="L"&&ft=="1"?L[tt]="L":o.test(ft)&&(Ct=ft)}for(var nt=0;nt<D;++nt)if(i.test(L[nt])){var rt=void 0;for(rt=nt+1;rt<D&&i.test(L[rt]);++rt);for(var Ze=(nt?L[nt-1]:x)=="L",Dt=(rt<D?L[rt]:x)=="L",nn=Ze==Dt?Ze?"L":"R":x,yr=nt;yr<rt;++yr)L[yr]=nn;nt=rt-1}for(var vt=[],Jt,ut=0;ut<D;)if(l.test(L[ut])){var co=ut;for(++ut;ut<D&&l.test(L[ut]);++ut);vt.push(new s(0,co,ut))}else{var ir=ut,Ar=vt.length,Nr=h=="rtl"?1:0;for(++ut;ut<D&&L[ut]!="L";++ut);for(var bt=ir;bt<ut;)if(a.test(L[bt])){ir<bt&&(vt.splice(Ar,0,new s(1,ir,bt)),Ar+=Nr);var on=bt;for(++bt;bt<ut&&a.test(L[bt]);++bt);vt.splice(Ar,0,new s(2,on,bt)),Ar+=Nr,ir=bt}else++bt;ir<ut&&vt.splice(Ar,0,new s(1,ir,ut))}return h=="ltr"&&(vt[0].level==1&&(Jt=u.match(/^\s+/))&&(vt[0].from=Jt[0].length,vt.unshift(new s(0,0,Jt[0].length))),we(vt).level==1&&(Jt=u.match(/\s+$/))&&(we(vt).to-=Jt[0].length,vt.push(new s(0,D-Jt[0].length,D)))),h=="rtl"?vt.reverse():vt}})();function Re(e,t){var n=e.order;return n==null&&(n=e.order=mi(e.text,t)),n}var Bn=[],Se=function(e,t,n){if(e.addEventListener)e.addEventListener(t,n,!1);else if(e.attachEvent)e.attachEvent("on"+t,n);else{var r=e._handlers||(e._handlers={});r[t]=(r[t]||Bn).concat(n)}};function Zt(e,t){return e._handlers&&e._handlers[t]||Bn}function ht(e,t,n){if(e.removeEventListener)e.removeEventListener(t,n,!1);else if(e.detachEvent)e.detachEvent("on"+t,n);else{var r=e._handlers,i=r&&r[t];if(i){var o=ve(i,n);o>-1&&(r[t]=i.slice(0,o).concat(i.slice(o+1)))}}}function Ye(e,t){var n=Zt(e,t);if(n.length)for(var r=Array.prototype.slice.call(arguments,2),i=0;i<n.length;++i)n[i].apply(null,r)}function Qe(e,t,n){return typeof t=="string"&&(t={type:t,preventDefault:function(){this.defaultPrevented=!0}}),Ye(e,n||t.type,e,t),kt(t)||t.codemirrorIgnore}function It(e){var t=e._handlers&&e._handlers.cursorActivity;if(t)for(var n=e.curOp.cursorActivityHandlers||(e.curOp.cursorActivityHandlers=[]),r=0;r<t.length;++r)ve(n,t[r])==-1&&n.push(t[r])}function Ft(e,t){return Zt(e,t).length>0}function Bt(e){e.prototype.on=function(t,n){Se(this,t,n)},e.prototype.off=function(t,n){ht(this,t,n)}}function pt(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Er(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function kt(e){return e.defaultPrevented!=null?e.defaultPrevented:e.returnValue==!1}function ar(e){pt(e),Er(e)}function ln(e){return e.target||e.srcElement}function Rt(e){var t=e.which;return t==null&&(e.button&1?t=1:e.button&2?t=3:e.button&4&&(t=2)),z&&e.ctrlKey&&t==1&&(t=3),t}var xi=(function(){if(k&&I<9)return!1;var e=c("div");return"draggable"in e||"dragDrop"in e})(),Or;function Rn(e){if(Or==null){var t=c("span","​");G(e,c("span",[t,document.createTextNode("x")])),e.firstChild.offsetHeight!=0&&(Or=t.offsetWidth<=1&&t.offsetHeight>2&&!(k&&I<8))}var n=Or?c("span","​"):c("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");return n.setAttribute("cm-text",""),n}var an;function sr(e){if(an!=null)return an;var t=G(e,document.createTextNode("AØ®A")),n=C(t,0,1).getBoundingClientRect(),r=C(t,1,2).getBoundingClientRect();return F(e),!n||n.left==n.right?!1:an=r.right-n.right<3}var zt=`
b`.split(/\n/).length!=3?function(e){for(var t=0,n=[],r=e.length;t<=r;){var i=e.indexOf(`
`,t);i==-1&&(i=e.length);var o=e.slice(t,e.charAt(i-1)=="\r"?i-1:i),l=o.indexOf("\r");l!=-1?(n.push(o.slice(0,l)),t+=l+1):(n.push(o),t=i+1)}return n}:function(e){return e.split(/\r\n?|\n/)},ur=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch{return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch{}return!t||t.parentElement()!=e?!1:t.compareEndPoints("StartToEnd",t)!=0},Wn=(function(){var e=c("div");return"oncopy"in e?!0:(e.setAttribute("oncopy","return;"),typeof e.oncopy=="function")})(),Wt=null;function yi(e){if(Wt!=null)return Wt;var t=G(e,c("span","x")),n=t.getBoundingClientRect(),r=C(t,0,1).getBoundingClientRect();return Wt=Math.abs(n.left-r.left)>1}var Pr={},Ht={};function _t(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),Pr[e]=t}function kr(e,t){Ht[e]=t}function Ir(e){if(typeof e=="string"&&Ht.hasOwnProperty(e))e=Ht[e];else if(e&&typeof e.name=="string"&&Ht.hasOwnProperty(e.name)){var t=Ht[e.name];typeof t=="string"&&(t={name:t}),e=K(t,e),e.name=t.name}else{if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return Ir("application/xml");if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return Ir("application/json")}return typeof e=="string"?{name:e}:e||{name:"null"}}function zr(e,t){t=Ir(t);var n=Pr[t.name];if(!n)return zr(e,"text/plain");var r=n(e,t);if(fr.hasOwnProperty(t.name)){var i=fr[t.name];for(var o in i)i.hasOwnProperty(o)&&(r.hasOwnProperty(o)&&(r["_"+o]=r[o]),r[o]=i[o])}if(r.name=t.name,t.helperType&&(r.helperType=t.helperType),t.modeProps)for(var l in t.modeProps)r[l]=t.modeProps[l];return r}var fr={};function Br(e,t){var n=fr.hasOwnProperty(e)?fr[e]:fr[e]={};Me(t,n)}function Gt(e,t){if(t===!0)return t;if(e.copyState)return e.copyState(t);var n={};for(var r in t){var i=t[r];i instanceof Array&&(i=i.concat([])),n[r]=i}return n}function sn(e,t){for(var n;e.innerMode&&(n=e.innerMode(t),!(!n||n.mode==e));)t=n.state,e=n.mode;return n||{mode:e,state:t}}function Rr(e,t,n){return e.startState?e.startState(t,n):!0}var Je=function(e,t,n){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=n};Je.prototype.eol=function(){return this.pos>=this.string.length},Je.prototype.sol=function(){return this.pos==this.lineStart},Je.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},Je.prototype.next=function(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)},Je.prototype.eat=function(e){var t=this.string.charAt(this.pos),n;if(typeof e=="string"?n=t==e:n=t&&(e.test?e.test(t):e(t)),n)return++this.pos,t},Je.prototype.eatWhile=function(e){for(var t=this.pos;this.eat(e););return this.pos>t},Je.prototype.eatSpace=function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},Je.prototype.skipToEnd=function(){this.pos=this.string.length},Je.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},Je.prototype.backUp=function(e){this.pos-=e},Je.prototype.column=function(){return this.lastColumnPos<this.start&&(this.lastColumnValue=Fe(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue-(this.lineStart?Fe(this.string,this.lineStart,this.tabSize):0)},Je.prototype.indentation=function(){return Fe(this.string,null,this.tabSize)-(this.lineStart?Fe(this.string,this.lineStart,this.tabSize):0)},Je.prototype.match=function(e,t,n){if(typeof e=="string"){var r=function(l){return n?l.toLowerCase():l},i=this.string.substr(this.pos,e.length);if(r(i)==r(e))return t!==!1&&(this.pos+=e.length),!0}else{var o=this.string.slice(this.pos).match(e);return o&&o.index>0?null:(o&&t!==!1&&(this.pos+=o[0].length),o)}},Je.prototype.current=function(){return this.string.slice(this.start,this.pos)},Je.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},Je.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},Je.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};function ye(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");for(var n=e;!n.lines;)for(var r=0;;++r){var i=n.children[r],o=i.chunkSize();if(t<o){n=i;break}t-=o}return n.lines[t]}function $t(e,t,n){var r=[],i=t.line;return e.iter(t.line,n.line+1,function(o){var l=o.text;i==n.line&&(l=l.slice(0,n.ch)),i==t.line&&(l=l.slice(t.ch)),r.push(l),++i}),r}function un(e,t,n){var r=[];return e.iter(t,n,function(i){r.push(i.text)}),r}function Et(e,t){var n=t-e.height;if(n)for(var r=e;r;r=r.parent)r.height+=n}function f(e){if(e.parent==null)return null;for(var t=e.parent,n=ve(t.lines,e),r=t.parent;r;t=r,r=r.parent)for(var i=0;r.children[i]!=t;++i)n+=r.children[i].chunkSize();return n+t.first}function m(e,t){var n=e.first;e:do{for(var r=0;r<e.children.length;++r){var i=e.children[r],o=i.height;if(t<o){e=i;continue e}t-=o,n+=i.chunkSize()}return n}while(!e.lines);for(var l=0;l<e.lines.length;++l){var a=e.lines[l],s=a.height;if(t<s)break;t-=s}return n+l}function U(e,t){return t>=e.first&&t<e.first+e.size}function re(e,t){return String(e.lineNumberFormatter(t+e.firstLineNumber))}function B(e,t,n){if(n===void 0&&(n=null),!(this instanceof B))return new B(e,t,n);this.line=e,this.ch=t,this.sticky=n}function ce(e,t){return e.line-t.line||e.ch-t.ch}function We(e,t){return e.sticky==t.sticky&&ce(e,t)==0}function it(e){return B(e.line,e.ch)}function wt(e,t){return ce(e,t)<0?t:e}function Wr(e,t){return ce(e,t)<0?e:t}function go(e,t){return Math.max(e.first,Math.min(t,e.first+e.size-1))}function Ae(e,t){if(t.line<e.first)return B(e.first,0);var n=e.first+e.size-1;return t.line>n?B(n,ye(e,n).text.length):Za(t,ye(e,t.line).text.length)}function Za(e,t){var n=e.ch;return n==null||n>t?B(e.line,t):n<0?B(e.line,0):e}function vo(e,t){for(var n=[],r=0;r<t.length;r++)n[r]=Ae(e,t[r]);return n}var Hn=function(e,t){this.state=e,this.lookAhead=t},Xt=function(e,t,n,r){this.state=t,this.doc=e,this.line=n,this.maxLookAhead=r||0,this.baseTokens=null,this.baseTokenPos=1};Xt.prototype.lookAhead=function(e){var t=this.doc.getLine(this.line+e);return t!=null&&e>this.maxLookAhead&&(this.maxLookAhead=e),t},Xt.prototype.baseToken=function(e){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=e;)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-e}},Xt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},Xt.fromSaved=function(e,t,n){return t instanceof Hn?new Xt(e,Gt(e.mode,t.state),n,t.lookAhead):new Xt(e,Gt(e.mode,t),n)},Xt.prototype.save=function(e){var t=e!==!1?Gt(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new Hn(t,this.maxLookAhead):t};function mo(e,t,n,r){var i=[e.state.modeGen],o={};So(e,t.text,e.doc.mode,n,function(u,h){return i.push(u,h)},o,r);for(var l=n.state,a=function(u){n.baseTokens=i;var h=e.state.overlays[u],x=1,D=0;n.state=!0,So(e,t.text,h.mode,n,function(L,H){for(var Z=x;D<L;){var ie=i[x];ie>L&&i.splice(x,1,L,i[x+1],ie),x+=2,D=Math.min(L,ie)}if(H)if(h.opaque)i.splice(Z,x-Z,L,"overlay "+H),x=Z+2;else for(;Z<x;Z+=2){var ae=i[Z+1];i[Z+1]=(ae?ae+" ":"")+"overlay "+H}},o),n.state=l,n.baseTokens=null,n.baseTokenPos=1},s=0;s<e.state.overlays.length;++s)a(s);return{styles:i,classes:o.bgClass||o.textClass?o:null}}function xo(e,t,n){if(!t.styles||t.styles[0]!=e.state.modeGen){var r=fn(e,f(t)),i=t.text.length>e.options.maxHighlightLength&&Gt(e.doc.mode,r.state),o=mo(e,t,r);i&&(r.state=i),t.stateAfter=r.save(!i),t.styles=o.styles,o.classes?t.styleClasses=o.classes:t.styleClasses&&(t.styleClasses=null),n===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function fn(e,t,n){var r=e.doc,i=e.display;if(!r.mode.startState)return new Xt(r,!0,t);var o=$a(e,t,n),l=o>r.first&&ye(r,o-1).stateAfter,a=l?Xt.fromSaved(r,l,o):new Xt(r,Rr(r.mode),o);return r.iter(o,t,function(s){bi(e,s.text,a);var u=a.line;s.stateAfter=u==t-1||u%5==0||u>=i.viewFrom&&u<i.viewTo?a.save():null,a.nextLine()}),n&&(r.modeFrontier=a.line),a}function bi(e,t,n,r){var i=e.doc.mode,o=new Je(t,e.options.tabSize,n);for(o.start=o.pos=r||0,t==""&&yo(i,n.state);!o.eol();)ki(i,o,n.state),o.start=o.pos}function yo(e,t){if(e.blankLine)return e.blankLine(t);if(e.innerMode){var n=sn(e,t);if(n.mode.blankLine)return n.mode.blankLine(n.state)}}function ki(e,t,n,r){for(var i=0;i<10;i++){r&&(r[0]=sn(e,n).mode);var o=e.token(t,n);if(t.pos>t.start)return o}throw new Error("Mode "+e.name+" failed to advance stream.")}var bo=function(e,t,n){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=n};function ko(e,t,n,r){var i=e.doc,o=i.mode,l;t=Ae(i,t);var a=ye(i,t.line),s=fn(e,t.line,n),u=new Je(a.text,e.options.tabSize,s),h;for(r&&(h=[]);(r||u.pos<t.ch)&&!u.eol();)u.start=u.pos,l=ki(o,u,s.state),r&&h.push(new bo(u,l,Gt(i.mode,s.state)));return r?h:new bo(u,l,s.state)}function wo(e,t){if(e)for(;;){var n=e.match(/(?:^|\s+)line-(background-)?(\S+)/);if(!n)break;e=e.slice(0,n.index)+e.slice(n.index+n[0].length);var r=n[1]?"bgClass":"textClass";t[r]==null?t[r]=n[2]:new RegExp("(?:^|\\s)"+n[2]+"(?:$|\\s)").test(t[r])||(t[r]+=" "+n[2])}return e}function So(e,t,n,r,i,o,l){var a=n.flattenSpans;a==null&&(a=e.options.flattenSpans);var s=0,u=null,h=new Je(t,e.options.tabSize,r),x,D=e.options.addModeClass&&[null];for(t==""&&wo(yo(n,r.state),o);!h.eol();){if(h.pos>e.options.maxHighlightLength?(a=!1,l&&bi(e,t,r,h.pos),h.pos=t.length,x=null):x=wo(ki(n,h,r.state,D),o),D){var L=D[0].name;L&&(x="m-"+(x?L+" "+x:L))}if(!a||u!=x){for(;s<h.start;)s=Math.min(h.start,s+5e3),i(s,u);u=x}h.start=h.pos}for(;s<h.pos;){var H=Math.min(h.pos,s+5e3);i(H,u),s=H}}function $a(e,t,n){for(var r,i,o=e.doc,l=n?-1:t-(e.doc.mode.innerMode?1e3:100),a=t;a>l;--a){if(a<=o.first)return o.first;var s=ye(o,a-1),u=s.stateAfter;if(u&&(!n||a+(u instanceof Hn?u.lookAhead:0)<=o.modeFrontier))return a;var h=Fe(s.text,null,e.options.tabSize);(i==null||r>h)&&(i=a-1,r=h)}return i}function Va(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontier<t-10)){for(var n=e.first,r=t-1;r>n;r--){var i=ye(e,r).stateAfter;if(i&&(!(i instanceof Hn)||r+i.lookAhead<t)){n=r+1;break}}e.highlightFrontier=Math.min(e.highlightFrontier,n)}}var Lo=!1,Vt=!1;function es(){Lo=!0}function ts(){Vt=!0}function _n(e,t,n){this.marker=e,this.from=t,this.to=n}function cn(e,t){if(e)for(var n=0;n<e.length;++n){var r=e[n];if(r.marker==t)return r}}function rs(e,t){for(var n,r=0;r<e.length;++r)e[r]!=t&&(n||(n=[])).push(e[r]);return n}function ns(e,t,n){var r=n&&window.WeakSet&&(n.markedSpans||(n.markedSpans=new WeakSet));r&&e.markedSpans&&r.has(e.markedSpans)?e.markedSpans.push(t):(e.markedSpans=e.markedSpans?e.markedSpans.concat([t]):[t],r&&r.add(e.markedSpans)),t.marker.attachLine(e)}function is(e,t,n){var r;if(e)for(var i=0;i<e.length;++i){var o=e[i],l=o.marker,a=o.from==null||(l.inclusiveLeft?o.from<=t:o.from<t);if(a||o.from==t&&l.type=="bookmark"&&(!n||!o.marker.insertLeft)){var s=o.to==null||(l.inclusiveRight?o.to>=t:o.to>t);(r||(r=[])).push(new _n(l,o.from,s?null:o.to))}}return r}function os(e,t,n){var r;if(e)for(var i=0;i<e.length;++i){var o=e[i],l=o.marker,a=o.to==null||(l.inclusiveRight?o.to>=t:o.to>t);if(a||o.from==t&&l.type=="bookmark"&&(!n||o.marker.insertLeft)){var s=o.from==null||(l.inclusiveLeft?o.from<=t:o.from<t);(r||(r=[])).push(new _n(l,s?null:o.from-t,o.to==null?null:o.to-t))}}return r}function wi(e,t){if(t.full)return null;var n=U(e,t.from.line)&&ye(e,t.from.line).markedSpans,r=U(e,t.to.line)&&ye(e,t.to.line).markedSpans;if(!n&&!r)return null;var i=t.from.ch,o=t.to.ch,l=ce(t.from,t.to)==0,a=is(n,i,l),s=os(r,o,l),u=t.text.length==1,h=we(t.text).length+(u?i:0);if(a)for(var x=0;x<a.length;++x){var D=a[x];if(D.to==null){var L=cn(s,D.marker);L?u&&(D.to=L.to==null?null:L.to+h):D.to=i}}if(s)for(var H=0;H<s.length;++H){var Z=s[H];if(Z.to!=null&&(Z.to+=h),Z.from==null){var ie=cn(a,Z.marker);ie||(Z.from=h,u&&(a||(a=[])).push(Z))}else Z.from+=h,u&&(a||(a=[])).push(Z)}a&&(a=To(a)),s&&s!=a&&(s=To(s));var ae=[a];if(!u){var he=t.text.length-2,se;if(he>0&&a)for(var ge=0;ge<a.length;++ge)a[ge].to==null&&(se||(se=[])).push(new _n(a[ge].marker,null,null));for(var Le=0;Le<he;++Le)ae.push(se);ae.push(s)}return ae}function To(e){for(var t=0;t<e.length;++t){var n=e[t];n.from!=null&&n.from==n.to&&n.marker.clearWhenEmpty!==!1&&e.splice(t--,1)}return e.length?e:null}function ls(e,t,n){var r=null;if(e.iter(t.line,n.line+1,function(L){if(L.markedSpans)for(var H=0;H<L.markedSpans.length;++H){var Z=L.markedSpans[H].marker;Z.readOnly&&(!r||ve(r,Z)==-1)&&(r||(r=[])).push(Z)}}),!r)return null;for(var i=[{from:t,to:n}],o=0;o<r.length;++o)for(var l=r[o],a=l.find(0),s=0;s<i.length;++s){var u=i[s];if(!(ce(u.to,a.from)<0||ce(u.from,a.to)>0)){var h=[s,1],x=ce(u.from,a.from),D=ce(u.to,a.to);(x<0||!l.inclusiveLeft&&!x)&&h.push({from:u.from,to:a.from}),(D>0||!l.inclusiveRight&&!D)&&h.push({from:a.to,to:u.to}),i.splice.apply(i,h),s+=h.length-3}}return i}function Co(e){var t=e.markedSpans;if(t){for(var n=0;n<t.length;++n)t[n].marker.detachLine(e);e.markedSpans=null}}function Do(e,t){if(t){for(var n=0;n<t.length;++n)t[n].marker.attachLine(e);e.markedSpans=t}}function qn(e){return e.inclusiveLeft?-1:0}function jn(e){return e.inclusiveRight?1:0}function Si(e,t){var n=e.lines.length-t.lines.length;if(n!=0)return n;var r=e.find(),i=t.find(),o=ce(r.from,i.from)||qn(e)-qn(t);if(o)return-o;var l=ce(r.to,i.to)||jn(e)-jn(t);return l||t.id-e.id}function Mo(e,t){var n=Vt&&e.markedSpans,r;if(n)for(var i=void 0,o=0;o<n.length;++o)i=n[o],i.marker.collapsed&&(t?i.from:i.to)==null&&(!r||Si(r,i.marker)<0)&&(r=i.marker);return r}function Fo(e){return Mo(e,!0)}function Kn(e){return Mo(e,!1)}function as(e,t){var n=Vt&&e.markedSpans,r;if(n)for(var i=0;i<n.length;++i){var o=n[i];o.marker.collapsed&&(o.from==null||o.from<t)&&(o.to==null||o.to>t)&&(!r||Si(r,o.marker)<0)&&(r=o.marker)}return r}function Ao(e,t,n,r,i){var o=ye(e,t),l=Vt&&o.markedSpans;if(l)for(var a=0;a<l.length;++a){var s=l[a];if(s.marker.collapsed){var u=s.marker.find(0),h=ce(u.from,n)||qn(s.marker)-qn(i),x=ce(u.to,r)||jn(s.marker)-jn(i);if(!(h>=0&&x<=0||h<=0&&x>=0)&&(h<=0&&(s.marker.inclusiveRight&&i.inclusiveLeft?ce(u.to,n)>=0:ce(u.to,n)>0)||h>=0&&(s.marker.inclusiveRight&&i.inclusiveLeft?ce(u.from,r)<=0:ce(u.from,r)<0)))return!0}}}function qt(e){for(var t;t=Fo(e);)e=t.find(-1,!0).line;return e}function ss(e){for(var t;t=Kn(e);)e=t.find(1,!0).line;return e}function us(e){for(var t,n;t=Kn(e);)e=t.find(1,!0).line,(n||(n=[])).push(e);return n}function Li(e,t){var n=ye(e,t),r=qt(n);return n==r?t:f(r)}function No(e,t){if(t>e.lastLine())return t;var n=ye(e,t),r;if(!cr(e,n))return t;for(;r=Kn(n);)n=r.find(1,!0).line;return f(n)+1}function cr(e,t){var n=Vt&&t.markedSpans;if(n){for(var r=void 0,i=0;i<n.length;++i)if(r=n[i],!!r.marker.collapsed){if(r.from==null)return!0;if(!r.marker.widgetNode&&r.from==0&&r.marker.inclusiveLeft&&Ti(e,t,r))return!0}}}function Ti(e,t,n){if(n.to==null){var r=n.marker.find(1,!0);return Ti(e,r.line,cn(r.line.markedSpans,n.marker))}if(n.marker.inclusiveRight&&n.to==t.text.length)return!0;for(var i=void 0,o=0;o<t.markedSpans.length;++o)if(i=t.markedSpans[o],i.marker.collapsed&&!i.marker.widgetNode&&i.from==n.to&&(i.to==null||i.to!=n.from)&&(i.marker.inclusiveLeft||n.marker.inclusiveRight)&&Ti(e,t,i))return!0}function er(e){e=qt(e);for(var t=0,n=e.parent,r=0;r<n.lines.length;++r){var i=n.lines[r];if(i==e)break;t+=i.height}for(var o=n.parent;o;n=o,o=n.parent)for(var l=0;l<o.children.length;++l){var a=o.children[l];if(a==n)break;t+=a.height}return t}function Un(e){if(e.height==0)return 0;for(var t=e.text.length,n,r=e;n=Fo(r);){var i=n.find(0,!0);r=i.from.line,t+=i.from.ch-i.to.ch}for(r=e;n=Kn(r);){var o=n.find(0,!0);t-=r.text.length-o.from.ch,r=o.to.line,t+=r.text.length-o.to.ch}return t}function Ci(e){var t=e.display,n=e.doc;t.maxLine=ye(n,n.first),t.maxLineLength=Un(t.maxLine),t.maxLineChanged=!0,n.iter(function(r){var i=Un(r);i>t.maxLineLength&&(t.maxLineLength=i,t.maxLine=r)})}var Hr=function(e,t,n){this.text=e,Do(this,t),this.height=n?n(this):1};Hr.prototype.lineNo=function(){return f(this)},Bt(Hr);function fs(e,t,n,r){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),e.order!=null&&(e.order=null),Co(e),Do(e,n);var i=r?r(e):1;i!=e.height&&Et(e,i)}function cs(e){e.parent=null,Co(e)}var ds={},hs={};function Eo(e,t){if(!e||/^\s*$/.test(e))return null;var n=t.addModeClass?hs:ds;return n[e]||(n[e]=e.replace(/\S+/g,"cm-$&"))}function Oo(e,t){var n=T("span",null,null,Y?"padding-right: .1px":null),r={pre:T("pre",[n],"CodeMirror-line"),content:n,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption("lineWrapping")};t.measure={};for(var i=0;i<=(t.rest?t.rest.length:0);i++){var o=i?t.rest[i-1]:t.line,l=void 0;r.pos=0,r.addToken=gs,sr(e.display.measure)&&(l=Re(o,e.doc.direction))&&(r.addToken=ms(r.addToken,l)),r.map=[];var a=t!=e.display.externalMeasured&&f(o);xs(o,r,xo(e,o,a)),o.styleClasses&&(o.styleClasses.bgClass&&(r.bgClass=de(o.styleClasses.bgClass,r.bgClass||"")),o.styleClasses.textClass&&(r.textClass=de(o.styleClasses.textClass,r.textClass||""))),r.map.length==0&&r.map.push(0,0,r.content.appendChild(Rn(e.display.measure))),i==0?(t.measure.map=r.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(r.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(Y){var s=r.content.lastChild;(/\bcm-tab\b/.test(s.className)||s.querySelector&&s.querySelector(".cm-tab"))&&(r.content.className="cm-tab-wrap-hack")}return Ye(e,"renderLine",e,t.line,r.pre),r.pre.className&&(r.textClass=de(r.pre.className,r.textClass||"")),r}function ps(e){var t=c("span","•","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function gs(e,t,n,r,i,o,l){if(t){var a=e.splitSpaces?vs(t,e.trailingSpace):t,s=e.cm.state.specialChars,u=!1,h;if(!s.test(t))e.col+=t.length,h=document.createTextNode(a),e.map.push(e.pos,e.pos+t.length,h),k&&I<9&&(u=!0),e.pos+=t.length;else{h=document.createDocumentFragment();for(var x=0;;){s.lastIndex=x;var D=s.exec(t),L=D?D.index-x:t.length-x;if(L){var H=document.createTextNode(a.slice(x,x+L));k&&I<9?h.appendChild(c("span",[H])):h.appendChild(H),e.map.push(e.pos,e.pos+L,H),e.col+=L,e.pos+=L}if(!D)break;x+=L+1;var Z=void 0;if(D[0]=="    "){var ie=e.cm.options.tabSize,ae=ie-e.col%ie;Z=h.appendChild(c("span",et(ae),"cm-tab")),Z.setAttribute("role","presentation"),Z.setAttribute("cm-text","    "),e.col+=ae}else D[0]=="\r"||D[0]==`
`?(Z=h.appendChild(c("span",D[0]=="\r"?"␍":"␤","cm-invalidchar")),Z.setAttribute("cm-text",D[0]),e.col+=1):(Z=e.cm.options.specialCharPlaceholder(D[0]),Z.setAttribute("cm-text",D[0]),k&&I<9?h.appendChild(c("span",[Z])):h.appendChild(Z),e.col+=1);e.map.push(e.pos,e.pos+1,Z),e.pos++}}if(e.trailingSpace=a.charCodeAt(t.length-1)==32,n||r||i||u||o||l){var he=n||"";r&&(he+=r),i&&(he+=i);var se=c("span",[h],he,o);if(l)for(var ge in l)l.hasOwnProperty(ge)&&ge!="style"&&ge!="class"&&se.setAttribute(ge,l[ge]);return e.content.appendChild(se)}e.content.appendChild(h)}}function vs(e,t){if(e.length>1&&!/  /.test(e))return e;for(var n=t,r="",i=0;i<e.length;i++){var o=e.charAt(i);o==" "&&n&&(i==e.length-1||e.charCodeAt(i+1)==32)&&(o=" "),r+=o,n=o==" "}return r}function ms(e,t){return function(n,r,i,o,l,a,s){i=i?i+" cm-force-border":"cm-force-border";for(var u=n.pos,h=u+r.length;;){for(var x=void 0,D=0;D<t.length&&(x=t[D],!(x.to>u&&x.from<=u));D++);if(x.to>=h)return e(n,r,i,o,l,a,s);e(n,r.slice(0,x.to-u),i,o,null,a,s),o=null,r=r.slice(x.to-u),u=x.to}}}function Po(e,t,n,r){var i=!r&&n.widgetNode;i&&e.map.push(e.pos,e.pos+t,i),!r&&e.cm.display.input.needsContentAttribute&&(i||(i=e.content.appendChild(document.createElement("span"))),i.setAttribute("cm-marker",n.id)),i&&(e.cm.display.input.setUneditable(i),e.content.appendChild(i)),e.pos+=t,e.trailingSpace=!1}function xs(e,t,n){var r=e.markedSpans,i=e.text,o=0;if(!r){for(var l=1;l<n.length;l+=2)t.addToken(t,i.slice(o,o=n[l]),Eo(n[l+1],t.cm.options));return}for(var a=i.length,s=0,u=1,h="",x,D,L=0,H,Z,ie,ae,he;;){if(L==s){H=Z=ie=D="",he=null,ae=null,L=1/0;for(var se=[],ge=void 0,Le=0;Le<r.length;++Le){var ke=r[Le],Ee=ke.marker;if(Ee.type=="bookmark"&&ke.from==s&&Ee.widgetNode)se.push(Ee);else if(ke.from<=s&&(ke.to==null||ke.to>s||Ee.collapsed&&ke.to==s&&ke.from==s)){if(ke.to!=null&&ke.to!=s&&L>ke.to&&(L=ke.to,Z=""),Ee.className&&(H+=" "+Ee.className),Ee.css&&(D=(D?D+";":"")+Ee.css),Ee.startStyle&&ke.from==s&&(ie+=" "+Ee.startStyle),Ee.endStyle&&ke.to==L&&(ge||(ge=[])).push(Ee.endStyle,ke.to),Ee.title&&((he||(he={})).title=Ee.title),Ee.attributes)for(var Ke in Ee.attributes)(he||(he={}))[Ke]=Ee.attributes[Ke];Ee.collapsed&&(!ae||Si(ae.marker,Ee)<0)&&(ae=ke)}else ke.from>s&&L>ke.from&&(L=ke.from)}if(ge)for(var st=0;st<ge.length;st+=2)ge[st+1]==L&&(Z+=" "+ge[st]);if(!ae||ae.from==s)for(var Xe=0;Xe<se.length;++Xe)Po(t,0,se[Xe]);if(ae&&(ae.from||0)==s){if(Po(t,(ae.to==null?a+1:ae.to)-s,ae.marker,ae.from==null),ae.to==null)return;ae.to==s&&(ae=!1)}}if(s>=a)break;for(var Nt=Math.min(a,L);;){if(h){var Tt=s+h.length;if(!ae){var tt=Tt>Nt?h.slice(0,Nt-s):h;t.addToken(t,tt,x?x+H:H,ie,s+tt.length==L?Z:"",D,he)}if(Tt>=Nt){h=h.slice(Nt-s),s=Nt;break}s=Tt,ie=""}h=i.slice(o,o=n[u++]),x=Eo(n[u++],t.cm.options)}}}function Io(e,t,n){this.line=t,this.rest=us(t),this.size=this.rest?f(we(this.rest))-n+1:1,this.node=this.text=null,this.hidden=cr(e,t)}function Gn(e,t,n){for(var r=[],i,o=t;o<n;o=i){var l=new Io(e.doc,ye(e.doc,o),o);i=o+l.size,r.push(l)}return r}var _r=null;function ys(e){_r?_r.ops.push(e):e.ownsGroup=_r={ops:[e],delayedCallbacks:[]}}function bs(e){var t=e.delayedCallbacks,n=0;do{for(;n<t.length;n++)t[n].call(null);for(var r=0;r<e.ops.length;r++){var i=e.ops[r];if(i.cursorActivityHandlers)for(;i.cursorActivityCalled<i.cursorActivityHandlers.length;)i.cursorActivityHandlers[i.cursorActivityCalled++].call(null,i.cm)}}while(n<t.length)}function ks(e,t){var n=e.ownsGroup;if(n)try{bs(n)}finally{_r=null,t(n)}}var dn=null;function ot(e,t){var n=Zt(e,t);if(n.length){var r=Array.prototype.slice.call(arguments,2),i;_r?i=_r.delayedCallbacks:dn?i=dn:(i=dn=[],setTimeout(ws,0));for(var o=function(a){i.push(function(){return n[a].apply(null,r)})},l=0;l<n.length;++l)o(l)}}function ws(){var e=dn;dn=null;for(var t=0;t<e.length;++t)e[t]()}function zo(e,t,n,r){for(var i=0;i<t.changes.length;i++){var o=t.changes[i];o=="text"?Ls(e,t):o=="gutter"?Ro(e,t,n,r):o=="class"?Di(e,t):o=="widget"&&Ts(e,t,r)}t.changes=null}function hn(e){return e.node==e.text&&(e.node=c("div",null,null,"position: relative"),e.text.parentNode&&e.text.parentNode.replaceChild(e.node,e.text),e.node.appendChild(e.text),k&&I<8&&(e.node.style.zIndex=2)),e.node}function Ss(e,t){var n=t.bgClass?t.bgClass+" "+(t.line.bgClass||""):t.line.bgClass;if(n&&(n+=" CodeMirror-linebackground"),t.background)n?t.background.className=n:(t.background.parentNode.removeChild(t.background),t.background=null);else if(n){var r=hn(t);t.background=r.insertBefore(c("div",null,n),r.firstChild),e.display.input.setUneditable(t.background)}}function Bo(e,t){var n=e.display.externalMeasured;return n&&n.line==t.line?(e.display.externalMeasured=null,t.measure=n.measure,n.built):Oo(e,t)}function Ls(e,t){var n=t.text.className,r=Bo(e,t);t.text==t.node&&(t.node=r.pre),t.text.parentNode.replaceChild(r.pre,t.text),t.text=r.pre,r.bgClass!=t.bgClass||r.textClass!=t.textClass?(t.bgClass=r.bgClass,t.textClass=r.textClass,Di(e,t)):n&&(t.text.className=n)}function Di(e,t){Ss(e,t),t.line.wrapClass?hn(t).className=t.line.wrapClass:t.node!=t.text&&(t.node.className="");var n=t.textClass?t.textClass+" "+(t.line.textClass||""):t.line.textClass;t.text.className=n||""}function Ro(e,t,n,r){if(t.gutter&&(t.node.removeChild(t.gutter),t.gutter=null),t.gutterBackground&&(t.node.removeChild(t.gutterBackground),t.gutterBackground=null),t.line.gutterClass){var i=hn(t);t.gutterBackground=c("div",null,"CodeMirror-gutter-background "+t.line.gutterClass,"left: "+(e.options.fixedGutter?r.fixedPos:-r.gutterTotalWidth)+"px; width: "+r.gutterTotalWidth+"px"),e.display.input.setUneditable(t.gutterBackground),i.insertBefore(t.gutterBackground,t.text)}var o=t.line.gutterMarkers;if(e.options.lineNumbers||o){var l=hn(t),a=t.gutter=c("div",null,"CodeMirror-gutter-wrapper","left: "+(e.options.fixedGutter?r.fixedPos:-r.gutterTotalWidth)+"px");if(a.setAttribute("aria-hidden","true"),e.display.input.setUneditable(a),l.insertBefore(a,t.text),t.line.gutterClass&&(a.className+=" "+t.line.gutterClass),e.options.lineNumbers&&(!o||!o["CodeMirror-linenumbers"])&&(t.lineNumber=a.appendChild(c("div",re(e.options,n),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+r.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+e.display.lineNumInnerWidth+"px"))),o)for(var s=0;s<e.display.gutterSpecs.length;++s){var u=e.display.gutterSpecs[s].className,h=o.hasOwnProperty(u)&&o[u];h&&a.appendChild(c("div",[h],"CodeMirror-gutter-elt","left: "+r.gutterLeft[u]+"px; width: "+r.gutterWidth[u]+"px"))}}}function Ts(e,t,n){t.alignable&&(t.alignable=null);for(var r=P("CodeMirror-linewidget"),i=t.node.firstChild,o=void 0;i;i=o)o=i.nextSibling,r.test(i.className)&&t.node.removeChild(i);Wo(e,t,n)}function Cs(e,t,n,r){var i=Bo(e,t);return t.text=t.node=i.pre,i.bgClass&&(t.bgClass=i.bgClass),i.textClass&&(t.textClass=i.textClass),Di(e,t),Ro(e,t,n,r),Wo(e,t,r),t.node}function Wo(e,t,n){if(Ho(e,t.line,t,n,!0),t.rest)for(var r=0;r<t.rest.length;r++)Ho(e,t.rest[r],t,n,!1)}function Ho(e,t,n,r,i){if(t.widgets)for(var o=hn(n),l=0,a=t.widgets;l<a.length;++l){var s=a[l],u=c("div",[s.node],"CodeMirror-linewidget"+(s.className?" "+s.className:""));s.handleMouseEvents||u.setAttribute("cm-ignore-events","true"),Ds(s,u,n,r),e.display.input.setUneditable(u),i&&s.above?o.insertBefore(u,n.gutter||n.text):o.appendChild(u),ot(s,"redraw")}}function Ds(e,t,n,r){if(e.noHScroll){(n.alignable||(n.alignable=[])).push(t);var i=r.wrapperWidth;t.style.left=r.fixedPos+"px",e.coverGutter||(i-=r.gutterTotalWidth,t.style.paddingLeft=r.gutterTotalWidth+"px"),t.style.width=i+"px"}e.coverGutter&&(t.style.zIndex=5,t.style.position="relative",e.noHScroll||(t.style.marginLeft=-r.gutterTotalWidth+"px"))}function pn(e){if(e.height!=null)return e.height;var t=e.doc.cm;if(!t)return 0;if(!g(document.body,e.node)){var n="position: relative;";e.coverGutter&&(n+="margin-left: -"+t.display.gutters.offsetWidth+"px;"),e.noHScroll&&(n+="width: "+t.display.wrapper.clientWidth+"px;"),G(t.display.measure,c("div",[e.node],null,n))}return e.height=e.node.parentNode.offsetHeight}function tr(e,t){for(var n=ln(t);n!=e.wrapper;n=n.parentNode)if(!n||n.nodeType==1&&n.getAttribute("cm-ignore-events")=="true"||n.parentNode==e.sizer&&n!=e.mover)return!0}function Xn(e){return e.lineSpace.offsetTop}function Mi(e){return e.mover.offsetHeight-e.lineSpace.offsetHeight}function _o(e){if(e.cachedPaddingH)return e.cachedPaddingH;var t=G(e.measure,c("pre","x","CodeMirror-line-like")),n=window.getComputedStyle?window.getComputedStyle(t):t.currentStyle,r={left:parseInt(n.paddingLeft),right:parseInt(n.paddingRight)};return!isNaN(r.left)&&!isNaN(r.right)&&(e.cachedPaddingH=r),r}function Yt(e){return Oe-e.display.nativeBarWidth}function wr(e){return e.display.scroller.clientWidth-Yt(e)-e.display.barWidth}function Fi(e){return e.display.scroller.clientHeight-Yt(e)-e.display.barHeight}function Ms(e,t,n){var r=e.options.lineWrapping,i=r&&wr(e);if(!t.measure.heights||r&&t.measure.width!=i){var o=t.measure.heights=[];if(r){t.measure.width=i;for(var l=t.text.firstChild.getClientRects(),a=0;a<l.length-1;a++){var s=l[a],u=l[a+1];Math.abs(s.bottom-u.bottom)>2&&o.push((s.bottom+u.top)/2-n.top)}}o.push(n.bottom-n.top)}}function qo(e,t,n){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var r=0;r<e.rest.length;r++)if(e.rest[r]==t)return{map:e.measure.maps[r],cache:e.measure.caches[r]};for(var i=0;i<e.rest.length;i++)if(f(e.rest[i])>n)return{map:e.measure.maps[i],cache:e.measure.caches[i],before:!0}}}function Fs(e,t){t=qt(t);var n=f(t),r=e.display.externalMeasured=new Io(e.doc,t,n);r.lineN=n;var i=r.built=Oo(e,r);return r.text=i.pre,G(e.display.lineMeasure,i.pre),r}function jo(e,t,n,r){return Qt(e,qr(e,t),n,r)}function Ai(e,t){if(t>=e.display.viewFrom&&t<e.display.viewTo)return e.display.view[Tr(e,t)];var n=e.display.externalMeasured;if(n&&t>=n.lineN&&t<n.lineN+n.size)return n}function qr(e,t){var n=f(t),r=Ai(e,n);r&&!r.text?r=null:r&&r.changes&&(zo(e,r,n,Ii(e)),e.curOp.forceUpdate=!0),r||(r=Fs(e,t));var i=qo(r,t,n);return{line:t,view:r,rect:null,map:i.map,cache:i.cache,before:i.before,hasHeights:!1}}function Qt(e,t,n,r,i){t.before&&(n=-1);var o=n+(r||""),l;return t.cache.hasOwnProperty(o)?l=t.cache[o]:(t.rect||(t.rect=t.view.text.getBoundingClientRect()),t.hasHeights||(Ms(e,t.view,t.rect),t.hasHeights=!0),l=Ns(e,t,n,r),l.bogus||(t.cache[o]=l)),{left:l.left,right:l.right,top:i?l.rtop:l.top,bottom:i?l.rbottom:l.bottom}}var Ko={left:0,right:0,top:0,bottom:0};function Uo(e,t,n){for(var r,i,o,l,a,s,u=0;u<e.length;u+=3)if(a=e[u],s=e[u+1],t<a?(i=0,o=1,l="left"):t<s?(i=t-a,o=i+1):(u==e.length-3||t==s&&e[u+3]>t)&&(o=s-a,i=o-1,t>=s&&(l="right")),i!=null){if(r=e[u+2],a==s&&n==(r.insertLeft?"left":"right")&&(l=n),n=="left"&&i==0)for(;u&&e[u-2]==e[u-3]&&e[u-1].insertLeft;)r=e[(u-=3)+2],l="left";if(n=="right"&&i==s-a)for(;u<e.length-3&&e[u+3]==e[u+4]&&!e[u+5].insertLeft;)r=e[(u+=3)+2],l="right";break}return{node:r,start:i,end:o,collapse:l,coverStart:a,coverEnd:s}}function As(e,t){var n=Ko;if(t=="left")for(var r=0;r<e.length&&(n=e[r]).left==n.right;r++);else for(var i=e.length-1;i>=0&&(n=e[i]).left==n.right;i--);return n}function Ns(e,t,n,r){var i=Uo(t.map,n,r),o=i.node,l=i.start,a=i.end,s=i.collapse,u;if(o.nodeType==3){for(var h=0;h<4;h++){for(;l&&Ne(t.line.text.charAt(i.coverStart+l));)--l;for(;i.coverStart+a<i.coverEnd&&Ne(t.line.text.charAt(i.coverStart+a));)++a;if(k&&I<9&&l==0&&a==i.coverEnd-i.coverStart?u=o.parentNode.getBoundingClientRect():u=As(C(o,l,a).getClientRects(),r),u.left||u.right||l==0)break;a=l,l=l-1,s="right"}k&&I<11&&(u=Es(e.display.measure,u))}else{l>0&&(s=r="right");var x;e.options.lineWrapping&&(x=o.getClientRects()).length>1?u=x[r=="right"?x.length-1:0]:u=o.getBoundingClientRect()}if(k&&I<9&&!l&&(!u||!u.left&&!u.right)){var D=o.parentNode.getClientRects()[0];D?u={left:D.left,right:D.left+Kr(e.display),top:D.top,bottom:D.bottom}:u=Ko}for(var L=u.top-t.rect.top,H=u.bottom-t.rect.top,Z=(L+H)/2,ie=t.view.measure.heights,ae=0;ae<ie.length-1&&!(Z<ie[ae]);ae++);var he=ae?ie[ae-1]:0,se=ie[ae],ge={left:(s=="right"?u.right:u.left)-t.rect.left,right:(s=="left"?u.left:u.right)-t.rect.left,top:he,bottom:se};return!u.left&&!u.right&&(ge.bogus=!0),e.options.singleCursorHeightPerLine||(ge.rtop=L,ge.rbottom=H),ge}function Es(e,t){if(!window.screen||screen.logicalXDPI==null||screen.logicalXDPI==screen.deviceXDPI||!yi(e))return t;var n=screen.logicalXDPI/screen.deviceXDPI,r=screen.logicalYDPI/screen.deviceYDPI;return{left:t.left*n,right:t.right*n,top:t.top*r,bottom:t.bottom*r}}function Go(e){if(e.measure&&(e.measure.cache={},e.measure.heights=null,e.rest))for(var t=0;t<e.rest.length;t++)e.measure.caches[t]={}}function Xo(e){e.display.externalMeasure=null,F(e.display.lineMeasure);for(var t=0;t<e.display.view.length;t++)Go(e.display.view[t])}function gn(e){Xo(e),e.display.cachedCharWidth=e.display.cachedTextHeight=e.display.cachedPaddingH=null,e.options.lineWrapping||(e.display.maxLineChanged=!0),e.display.lineNumChars=null}function Yo(e){return S&&M?-(e.body.getBoundingClientRect().left-parseInt(getComputedStyle(e.body).marginLeft)):e.defaultView.pageXOffset||(e.documentElement||e.body).scrollLeft}function Qo(e){return S&&M?-(e.body.getBoundingClientRect().top-parseInt(getComputedStyle(e.body).marginTop)):e.defaultView.pageYOffset||(e.documentElement||e.body).scrollTop}function Ni(e){var t=qt(e),n=t.widgets,r=0;if(n)for(var i=0;i<n.length;++i)n[i].above&&(r+=pn(n[i]));return r}function Yn(e,t,n,r,i){if(!i){var o=Ni(t);n.top+=o,n.bottom+=o}if(r=="line")return n;r||(r="local");var l=er(t);if(r=="local"?l+=Xn(e.display):l-=e.display.viewOffset,r=="page"||r=="window"){var a=e.display.lineSpace.getBoundingClientRect();l+=a.top+(r=="window"?0:Qo(d(e)));var s=a.left+(r=="window"?0:Yo(d(e)));n.left+=s,n.right+=s}return n.top+=l,n.bottom+=l,n}function Jo(e,t,n){if(n=="div")return t;var r=t.left,i=t.top;if(n=="page")r-=Yo(d(e)),i-=Qo(d(e));else if(n=="local"||!n){var o=e.display.sizer.getBoundingClientRect();r+=o.left,i+=o.top}var l=e.display.lineSpace.getBoundingClientRect();return{left:r-l.left,top:i-l.top}}function Qn(e,t,n,r,i){return r||(r=ye(e.doc,t.line)),Yn(e,r,jo(e,r,t.ch,i),n)}function jt(e,t,n,r,i,o){r=r||ye(e.doc,t.line),i||(i=qr(e,r));function l(H,Z){var ie=Qt(e,i,H,Z?"right":"left",o);return Z?ie.left=ie.right:ie.right=ie.left,Yn(e,r,ie,n)}var a=Re(r,e.doc.direction),s=t.ch,u=t.sticky;if(s>=r.text.length?(s=r.text.length,u="before"):s<=0&&(s=0,u="after"),!a)return l(u=="before"?s-1:s,u=="before");function h(H,Z,ie){var ae=a[Z],he=ae.level==1;return l(ie?H-1:H,he!=ie)}var x=lr(a,s,u),D=br,L=h(s,x,u=="before");return D!=null&&(L.other=h(s,D,u!="before")),L}function Zo(e,t){var n=0;t=Ae(e.doc,t),e.options.lineWrapping||(n=Kr(e.display)*t.ch);var r=ye(e.doc,t.line),i=er(r)+Xn(e.display);return{left:n,right:n,top:i,bottom:i+r.height}}function Ei(e,t,n,r,i){var o=B(e,t,n);return o.xRel=i,r&&(o.outside=r),o}function Oi(e,t,n){var r=e.doc;if(n+=e.display.viewOffset,n<0)return Ei(r.first,0,null,-1,-1);var i=m(r,n),o=r.first+r.size-1;if(i>o)return Ei(r.first+r.size-1,ye(r,o).text.length,null,1,1);t<0&&(t=0);for(var l=ye(r,i);;){var a=Os(e,l,i,t,n),s=as(l,a.ch+(a.xRel>0||a.outside>0?1:0));if(!s)return a;var u=s.find(1);if(u.line==i)return u;l=ye(r,i=u.line)}}function $o(e,t,n,r){r-=Ni(t);var i=t.text.length,o=Pt(function(l){return Qt(e,n,l-1).bottom<=r},i,0);return i=Pt(function(l){return Qt(e,n,l).top>r},o,i),{begin:o,end:i}}function Vo(e,t,n,r){n||(n=qr(e,t));var i=Yn(e,t,Qt(e,n,r),"line").top;return $o(e,t,n,i)}function Pi(e,t,n,r){return e.bottom<=n?!1:e.top>n?!0:(r?e.left:e.right)>t}function Os(e,t,n,r,i){i-=er(t);var o=qr(e,t),l=Ni(t),a=0,s=t.text.length,u=!0,h=Re(t,e.doc.direction);if(h){var x=(e.options.lineWrapping?Is:Ps)(e,t,n,o,h,r,i);u=x.level!=1,a=u?x.from:x.to-1,s=u?x.to:x.from-1}var D=null,L=null,H=Pt(function(Le){var ke=Qt(e,o,Le);return ke.top+=l,ke.bottom+=l,Pi(ke,r,i,!1)?(ke.top<=i&&ke.left<=r&&(D=Le,L=ke),!0):!1},a,s),Z,ie,ae=!1;if(L){var he=r-L.left<L.right-r,se=he==u;H=D+(se?0:1),ie=se?"after":"before",Z=he?L.left:L.right}else{!u&&(H==s||H==a)&&H++,ie=H==0?"after":H==t.text.length?"before":Qt(e,o,H-(u?1:0)).bottom+l<=i==u?"after":"before";var ge=jt(e,B(n,H,ie),"line",t,o);Z=ge.left,ae=i<ge.top?-1:i>=ge.bottom?1:0}return H=Mt(t.text,H,1),Ei(n,H,ie,ae,r-Z)}function Ps(e,t,n,r,i,o,l){var a=Pt(function(x){var D=i[x],L=D.level!=1;return Pi(jt(e,B(n,L?D.to:D.from,L?"before":"after"),"line",t,r),o,l,!0)},0,i.length-1),s=i[a];if(a>0){var u=s.level!=1,h=jt(e,B(n,u?s.from:s.to,u?"after":"before"),"line",t,r);Pi(h,o,l,!0)&&h.top>l&&(s=i[a-1])}return s}function Is(e,t,n,r,i,o,l){var a=$o(e,t,r,l),s=a.begin,u=a.end;/\s/.test(t.text.charAt(u-1))&&u--;for(var h=null,x=null,D=0;D<i.length;D++){var L=i[D];if(!(L.from>=u||L.to<=s)){var H=L.level!=1,Z=Qt(e,r,H?Math.min(u,L.to)-1:Math.max(s,L.from)).right,ie=Z<o?o-Z+1e9:Z-o;(!h||x>ie)&&(h=L,x=ie)}}return h||(h=i[i.length-1]),h.from<s&&(h={from:s,to:h.to,level:h.level}),h.to>u&&(h={from:h.from,to:u,level:h.level}),h}var Sr;function jr(e){if(e.cachedTextHeight!=null)return e.cachedTextHeight;if(Sr==null){Sr=c("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)Sr.appendChild(document.createTextNode("x")),Sr.appendChild(c("br"));Sr.appendChild(document.createTextNode("x"))}G(e.measure,Sr);var n=Sr.offsetHeight/50;return n>3&&(e.cachedTextHeight=n),F(e.measure),n||1}function Kr(e){if(e.cachedCharWidth!=null)return e.cachedCharWidth;var t=c("span","xxxxxxxxxx"),n=c("pre",[t],"CodeMirror-line-like");G(e.measure,n);var r=t.getBoundingClientRect(),i=(r.right-r.left)/10;return i>2&&(e.cachedCharWidth=i),i||10}function Ii(e){for(var t=e.display,n={},r={},i=t.gutters.clientLeft,o=t.gutters.firstChild,l=0;o;o=o.nextSibling,++l){var a=e.display.gutterSpecs[l].className;n[a]=o.offsetLeft+o.clientLeft+i,r[a]=o.clientWidth}return{fixedPos:zi(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:n,gutterWidth:r,wrapperWidth:t.wrapper.clientWidth}}function zi(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function el(e){var t=jr(e.display),n=e.options.lineWrapping,r=n&&Math.max(5,e.display.scroller.clientWidth/Kr(e.display)-3);return function(i){if(cr(e.doc,i))return 0;var o=0;if(i.widgets)for(var l=0;l<i.widgets.length;l++)i.widgets[l].height&&(o+=i.widgets[l].height);return n?o+(Math.ceil(i.text.length/r)||1)*t:o+t}}function Bi(e){var t=e.doc,n=el(e);t.iter(function(r){var i=n(r);i!=r.height&&Et(r,i)})}function Lr(e,t,n,r){var i=e.display;if(!n&&ln(t).getAttribute("cm-not-content")=="true")return null;var o,l,a=i.lineSpace.getBoundingClientRect();try{o=t.clientX-a.left,l=t.clientY-a.top}catch{return null}var s=Oi(e,o,l),u;if(r&&s.xRel>0&&(u=ye(e.doc,s.line).text).length==s.ch){var h=Fe(u,u.length,e.options.tabSize)-u.length;s=B(s.line,Math.max(0,Math.round((o-_o(e.display).left)/Kr(e.display))-h))}return s}function Tr(e,t){if(t>=e.display.viewTo||(t-=e.display.viewFrom,t<0))return null;for(var n=e.display.view,r=0;r<n.length;r++)if(t-=n[r].size,t<0)return r}function St(e,t,n,r){t==null&&(t=e.doc.first),n==null&&(n=e.doc.first+e.doc.size),r||(r=0);var i=e.display;if(r&&n<i.viewTo&&(i.updateLineNumbers==null||i.updateLineNumbers>t)&&(i.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=i.viewTo)Vt&&Li(e.doc,t)<i.viewTo&&hr(e);else if(n<=i.viewFrom)Vt&&No(e.doc,n+r)>i.viewFrom?hr(e):(i.viewFrom+=r,i.viewTo+=r);else if(t<=i.viewFrom&&n>=i.viewTo)hr(e);else if(t<=i.viewFrom){var o=Jn(e,n,n+r,1);o?(i.view=i.view.slice(o.index),i.viewFrom=o.lineN,i.viewTo+=r):hr(e)}else if(n>=i.viewTo){var l=Jn(e,t,t,-1);l?(i.view=i.view.slice(0,l.index),i.viewTo=l.lineN):hr(e)}else{var a=Jn(e,t,t,-1),s=Jn(e,n,n+r,1);a&&s?(i.view=i.view.slice(0,a.index).concat(Gn(e,a.lineN,s.lineN)).concat(i.view.slice(s.index)),i.viewTo+=r):hr(e)}var u=i.externalMeasured;u&&(n<u.lineN?u.lineN+=r:t<u.lineN+u.size&&(i.externalMeasured=null))}function dr(e,t,n){e.curOp.viewChanged=!0;var r=e.display,i=e.display.externalMeasured;if(i&&t>=i.lineN&&t<i.lineN+i.size&&(r.externalMeasured=null),!(t<r.viewFrom||t>=r.viewTo)){var o=r.view[Tr(e,t)];if(o.node!=null){var l=o.changes||(o.changes=[]);ve(l,n)==-1&&l.push(n)}}}function hr(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function Jn(e,t,n,r){var i=Tr(e,t),o,l=e.display.view;if(!Vt||n==e.doc.first+e.doc.size)return{index:i,lineN:n};for(var a=e.display.viewFrom,s=0;s<i;s++)a+=l[s].size;if(a!=t){if(r>0){if(i==l.length-1)return null;o=a+l[i].size-t,i++}else o=a-t;t+=o,n+=o}for(;Li(e.doc,n)!=n;){if(i==(r<0?0:l.length-1))return null;n+=r*l[i-(r<0?1:0)].size,i+=r}return{index:i,lineN:n}}function zs(e,t,n){var r=e.display,i=r.view;i.length==0||t>=r.viewTo||n<=r.viewFrom?(r.view=Gn(e,t,n),r.viewFrom=t):(r.viewFrom>t?r.view=Gn(e,t,r.viewFrom).concat(r.view):r.viewFrom<t&&(r.view=r.view.slice(Tr(e,t))),r.viewFrom=t,r.viewTo<n?r.view=r.view.concat(Gn(e,r.viewTo,n)):r.viewTo>n&&(r.view=r.view.slice(0,Tr(e,n)))),r.viewTo=n}function tl(e){for(var t=e.display.view,n=0,r=0;r<t.length;r++){var i=t[r];!i.hidden&&(!i.node||i.changes)&&++n}return n}function vn(e){e.display.input.showSelection(e.display.input.prepareSelection())}function rl(e,t){t===void 0&&(t=!0);var n=e.doc,r={},i=r.cursors=document.createDocumentFragment(),o=r.selection=document.createDocumentFragment(),l=e.options.$customCursor;l&&(t=!0);for(var a=0;a<n.sel.ranges.length;a++)if(!(!t&&a==n.sel.primIndex)){var s=n.sel.ranges[a];if(!(s.from().line>=e.display.viewTo||s.to().line<e.display.viewFrom)){var u=s.empty();if(l){var h=l(e,s);h&&Ri(e,h,i)}else(u||e.options.showCursorWhenSelecting)&&Ri(e,s.head,i);u||Bs(e,s,o)}}return r}function Ri(e,t,n){var r=jt(e,t,"div",null,null,!e.options.singleCursorHeightPerLine),i=n.appendChild(c("div"," ","CodeMirror-cursor"));if(i.style.left=r.left+"px",i.style.top=r.top+"px",i.style.height=Math.max(0,r.bottom-r.top)*e.options.cursorHeight+"px",/\bcm-fat-cursor\b/.test(e.getWrapperElement().className)){var o=Qn(e,t,"div",null,null),l=o.right-o.left;i.style.width=(l>0?l:e.defaultCharWidth())+"px"}if(r.other){var a=n.appendChild(c("div"," ","CodeMirror-cursor CodeMirror-secondarycursor"));a.style.display="",a.style.left=r.other.left+"px",a.style.top=r.other.top+"px",a.style.height=(r.other.bottom-r.other.top)*.85+"px"}}function Zn(e,t){return e.top-t.top||e.left-t.left}function Bs(e,t,n){var r=e.display,i=e.doc,o=document.createDocumentFragment(),l=_o(e.display),a=l.left,s=Math.max(r.sizerWidth,wr(e)-r.sizer.offsetLeft)-l.right,u=i.direction=="ltr";function h(se,ge,Le,ke){ge<0&&(ge=0),ge=Math.round(ge),ke=Math.round(ke),o.appendChild(c("div",null,"CodeMirror-selected","position: absolute; left: "+se+`px;
                             top: `+ge+"px; width: "+(Le??s-se)+`px;
                             height: `+(ke-ge)+"px"))}function x(se,ge,Le){var ke=ye(i,se),Ee=ke.text.length,Ke,st;function Xe(tt,Ct){return Qn(e,B(se,tt),"div",ke,Ct)}function Nt(tt,Ct,ft){var nt=Vo(e,ke,null,tt),rt=Ct=="ltr"==(ft=="after")?"left":"right",Ze=ft=="after"?nt.begin:nt.end-(/\s/.test(ke.text.charAt(nt.end-1))?2:1);return Xe(Ze,rt)[rt]}var Tt=Re(ke,i.direction);return or(Tt,ge||0,Le??Ee,function(tt,Ct,ft,nt){var rt=ft=="ltr",Ze=Xe(tt,rt?"left":"right"),Dt=Xe(Ct-1,rt?"right":"left"),nn=ge==null&&tt==0,yr=Le==null&&Ct==Ee,vt=nt==0,Jt=!Tt||nt==Tt.length-1;if(Dt.top-Ze.top<=3){var ut=(u?nn:yr)&&vt,co=(u?yr:nn)&&Jt,ir=ut?a:(rt?Ze:Dt).left,Ar=co?s:(rt?Dt:Ze).right;h(ir,Ze.top,Ar-ir,Ze.bottom)}else{var Nr,bt,on,ho;rt?(Nr=u&&nn&&vt?a:Ze.left,bt=u?s:Nt(tt,ft,"before"),on=u?a:Nt(Ct,ft,"after"),ho=u&&yr&&Jt?s:Dt.right):(Nr=u?Nt(tt,ft,"before"):a,bt=!u&&nn&&vt?s:Ze.right,on=!u&&yr&&Jt?a:Dt.left,ho=u?Nt(Ct,ft,"after"):s),h(Nr,Ze.top,bt-Nr,Ze.bottom),Ze.bottom<Dt.top&&h(a,Ze.bottom,null,Dt.top),h(on,Dt.top,ho-on,Dt.bottom)}(!Ke||Zn(Ze,Ke)<0)&&(Ke=Ze),Zn(Dt,Ke)<0&&(Ke=Dt),(!st||Zn(Ze,st)<0)&&(st=Ze),Zn(Dt,st)<0&&(st=Dt)}),{start:Ke,end:st}}var D=t.from(),L=t.to();if(D.line==L.line)x(D.line,D.ch,L.ch);else{var H=ye(i,D.line),Z=ye(i,L.line),ie=qt(H)==qt(Z),ae=x(D.line,D.ch,ie?H.text.length+1:null).end,he=x(L.line,ie?0:null,L.ch).start;ie&&(ae.top<he.top-2?(h(ae.right,ae.top,null,ae.bottom),h(a,he.top,he.left,he.bottom)):h(ae.right,ae.top,he.left-ae.right,ae.bottom)),ae.bottom<he.top&&h(a,ae.bottom,null,he.top)}n.appendChild(o)}function Wi(e){if(e.state.focused){var t=e.display;clearInterval(t.blinker);var n=!0;t.cursorDiv.style.visibility="",e.options.cursorBlinkRate>0?t.blinker=setInterval(function(){e.hasFocus()||Ur(e),t.cursorDiv.style.visibility=(n=!n)?"":"hidden"},e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function nl(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||_i(e))}function Hi(e){e.state.delayingBlurEvent=!0,setTimeout(function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&Ur(e))},100)}function _i(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),e.options.readOnly!="nocursor"&&(e.state.focused||(Ye(e,"focus",e,t),e.state.focused=!0,j(e.display.wrapper,"CodeMirror-focused"),!e.curOp&&e.display.selForContextMenu!=e.doc.sel&&(e.display.input.reset(),Y&&setTimeout(function(){return e.display.input.reset(!0)},20)),e.display.input.receivedFocus()),Wi(e))}function Ur(e,t){e.state.delayingBlurEvent||(e.state.focused&&(Ye(e,"blur",e,t),e.state.focused=!1,V(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout(function(){e.state.focused||(e.display.shift=!1)},150))}function $n(e){for(var t=e.display,n=t.lineDiv.offsetTop,r=Math.max(0,t.scroller.getBoundingClientRect().top),i=t.lineDiv.getBoundingClientRect().top,o=0,l=0;l<t.view.length;l++){var a=t.view[l],s=e.options.lineWrapping,u=void 0,h=0;if(!a.hidden){if(i+=a.line.height,k&&I<8){var x=a.node.offsetTop+a.node.offsetHeight;u=x-n,n=x}else{var D=a.node.getBoundingClientRect();u=D.bottom-D.top,!s&&a.text.firstChild&&(h=a.text.firstChild.getBoundingClientRect().right-D.left-1)}var L=a.line.height-u;if((L>.005||L<-.005)&&(i<r&&(o-=L),Et(a.line,u),il(a.line),a.rest))for(var H=0;H<a.rest.length;H++)il(a.rest[H]);if(h>e.display.sizerWidth){var Z=Math.ceil(h/Kr(e.display));Z>e.display.maxLineLength&&(e.display.maxLineLength=Z,e.display.maxLine=a.line,e.display.maxLineChanged=!0)}}}Math.abs(o)>2&&(t.scroller.scrollTop+=o)}function il(e){if(e.widgets)for(var t=0;t<e.widgets.length;++t){var n=e.widgets[t],r=n.node.parentNode;r&&(n.height=r.offsetHeight)}}function Vn(e,t,n){var r=n&&n.top!=null?Math.max(0,n.top):e.scroller.scrollTop;r=Math.floor(r-Xn(e));var i=n&&n.bottom!=null?n.bottom:r+e.wrapper.clientHeight,o=m(t,r),l=m(t,i);if(n&&n.ensure){var a=n.ensure.from.line,s=n.ensure.to.line;a<o?(o=a,l=m(t,er(ye(t,a))+e.wrapper.clientHeight)):Math.min(s,t.lastLine())>=l&&(o=m(t,er(ye(t,s))-e.wrapper.clientHeight),l=s)}return{from:o,to:Math.max(l,o+1)}}function Rs(e,t){if(!Qe(e,"scrollCursorIntoView")){var n=e.display,r=n.sizer.getBoundingClientRect(),i=null,o=n.wrapper.ownerDocument;if(t.top+r.top<0?i=!0:t.bottom+r.top>(o.defaultView.innerHeight||o.documentElement.clientHeight)&&(i=!1),i!=null&&!O){var l=c("div","​",null,`position: absolute;
                         top: `+(t.top-n.viewOffset-Xn(e.display))+`px;
                         height: `+(t.bottom-t.top+Yt(e)+n.barHeight)+`px;
                         left: `+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(l),l.scrollIntoView(i),e.display.lineSpace.removeChild(l)}}}function Ws(e,t,n,r){r==null&&(r=0);var i;!e.options.lineWrapping&&t==n&&(n=t.sticky=="before"?B(t.line,t.ch+1,"before"):t,t=t.ch?B(t.line,t.sticky=="before"?t.ch-1:t.ch,"after"):t);for(var o=0;o<5;o++){var l=!1,a=jt(e,t),s=!n||n==t?a:jt(e,n);i={left:Math.min(a.left,s.left),top:Math.min(a.top,s.top)-r,right:Math.max(a.left,s.left),bottom:Math.max(a.bottom,s.bottom)+r};var u=qi(e,i),h=e.doc.scrollTop,x=e.doc.scrollLeft;if(u.scrollTop!=null&&(xn(e,u.scrollTop),Math.abs(e.doc.scrollTop-h)>1&&(l=!0)),u.scrollLeft!=null&&(Cr(e,u.scrollLeft),Math.abs(e.doc.scrollLeft-x)>1&&(l=!0)),!l)break}return i}function Hs(e,t){var n=qi(e,t);n.scrollTop!=null&&xn(e,n.scrollTop),n.scrollLeft!=null&&Cr(e,n.scrollLeft)}function qi(e,t){var n=e.display,r=jr(e.display);t.top<0&&(t.top=0);var i=e.curOp&&e.curOp.scrollTop!=null?e.curOp.scrollTop:n.scroller.scrollTop,o=Fi(e),l={};t.bottom-t.top>o&&(t.bottom=t.top+o);var a=e.doc.height+Mi(n),s=t.top<r,u=t.bottom>a-r;if(t.top<i)l.scrollTop=s?0:t.top;else if(t.bottom>i+o){var h=Math.min(t.top,(u?a:t.bottom)-o);h!=i&&(l.scrollTop=h)}var x=e.options.fixedGutter?0:n.gutters.offsetWidth,D=e.curOp&&e.curOp.scrollLeft!=null?e.curOp.scrollLeft:n.scroller.scrollLeft-x,L=wr(e)-n.gutters.offsetWidth,H=t.right-t.left>L;return H&&(t.right=t.left+L),t.left<10?l.scrollLeft=0:t.left<D?l.scrollLeft=Math.max(0,t.left+x-(H?0:10)):t.right>L+D-3&&(l.scrollLeft=t.right+(H?0:10)-L),l}function ji(e,t){t!=null&&(ei(e),e.curOp.scrollTop=(e.curOp.scrollTop==null?e.doc.scrollTop:e.curOp.scrollTop)+t)}function Gr(e){ei(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function mn(e,t,n){(t!=null||n!=null)&&ei(e),t!=null&&(e.curOp.scrollLeft=t),n!=null&&(e.curOp.scrollTop=n)}function _s(e,t){ei(e),e.curOp.scrollToPos=t}function ei(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var n=Zo(e,t.from),r=Zo(e,t.to);ol(e,n,r,t.margin)}}function ol(e,t,n,r){var i=qi(e,{left:Math.min(t.left,n.left),top:Math.min(t.top,n.top)-r,right:Math.max(t.right,n.right),bottom:Math.max(t.bottom,n.bottom)+r});mn(e,i.scrollLeft,i.scrollTop)}function xn(e,t){Math.abs(e.doc.scrollTop-t)<2||(_||Ui(e,{top:t}),ll(e,t,!0),_&&Ui(e),kn(e,100))}function ll(e,t,n){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),!(e.display.scroller.scrollTop==t&&!n)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function Cr(e,t,n,r){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),!((n?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!r)&&(e.doc.scrollLeft=t,cl(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function yn(e){var t=e.display,n=t.gutters.offsetWidth,r=Math.round(e.doc.height+Mi(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?n:0,docHeight:r,scrollHeight:r+Yt(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:n}}var Dr=function(e,t,n){this.cm=n;var r=this.vert=c("div",[c("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),i=this.horiz=c("div",[c("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");r.tabIndex=i.tabIndex=-1,e(r),e(i),Se(r,"scroll",function(){r.clientHeight&&t(r.scrollTop,"vertical")}),Se(i,"scroll",function(){i.clientWidth&&t(i.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,k&&I<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};Dr.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,n=e.scrollHeight>e.clientHeight+1,r=e.nativeBarWidth;if(n){this.vert.style.display="block",this.vert.style.bottom=t?r+"px":"0";var i=e.viewHeight-(t?r:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+i)+"px"}else this.vert.scrollTop=0,this.vert.style.display="",this.vert.firstChild.style.height="0";if(t){this.horiz.style.display="block",this.horiz.style.right=n?r+"px":"0",this.horiz.style.left=e.barLeft+"px";var o=e.viewWidth-e.barLeft-(n?r:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+o)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(r==0&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:n?r:0,bottom:t?r:0}},Dr.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},Dr.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},Dr.prototype.zeroWidthHack=function(){var e=z&&!ue?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.visibility=this.vert.style.visibility="hidden",this.disableHoriz=new Ce,this.disableVert=new Ce},Dr.prototype.enableZeroWidthBar=function(e,t,n){e.style.visibility="";function r(){var i=e.getBoundingClientRect(),o=n=="vert"?document.elementFromPoint(i.right-1,(i.top+i.bottom)/2):document.elementFromPoint((i.right+i.left)/2,i.bottom-1);o!=e?e.style.visibility="hidden":t.set(1e3,r)}t.set(1e3,r)},Dr.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var bn=function(){};bn.prototype.update=function(){return{bottom:0,right:0}},bn.prototype.setScrollLeft=function(){},bn.prototype.setScrollTop=function(){},bn.prototype.clear=function(){};function Xr(e,t){t||(t=yn(e));var n=e.display.barWidth,r=e.display.barHeight;al(e,t);for(var i=0;i<4&&n!=e.display.barWidth||r!=e.display.barHeight;i++)n!=e.display.barWidth&&e.options.lineWrapping&&$n(e),al(e,yn(e)),n=e.display.barWidth,r=e.display.barHeight}function al(e,t){var n=e.display,r=n.scrollbars.update(t);n.sizer.style.paddingRight=(n.barWidth=r.right)+"px",n.sizer.style.paddingBottom=(n.barHeight=r.bottom)+"px",n.heightForcer.style.borderBottom=r.bottom+"px solid transparent",r.right&&r.bottom?(n.scrollbarFiller.style.display="block",n.scrollbarFiller.style.height=r.bottom+"px",n.scrollbarFiller.style.width=r.right+"px"):n.scrollbarFiller.style.display="",r.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(n.gutterFiller.style.display="block",n.gutterFiller.style.height=r.bottom+"px",n.gutterFiller.style.width=t.gutterWidth+"px"):n.gutterFiller.style.display=""}var sl={native:Dr,null:bn};function ul(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&V(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new sl[e.options.scrollbarStyle](function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),Se(t,"mousedown",function(){e.state.focused&&setTimeout(function(){return e.display.input.focus()},0)}),t.setAttribute("cm-not-content","true")},function(t,n){n=="horizontal"?Cr(e,t):xn(e,t)},e),e.display.scrollbars.addClass&&j(e.display.wrapper,e.display.scrollbars.addClass)}var qs=0;function Mr(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++qs,markArrays:null},ys(e.curOp)}function Fr(e){var t=e.curOp;t&&ks(t,function(n){for(var r=0;r<n.ops.length;r++)n.ops[r].cm.curOp=null;js(n)})}function js(e){for(var t=e.ops,n=0;n<t.length;n++)Ks(t[n]);for(var r=0;r<t.length;r++)Us(t[r]);for(var i=0;i<t.length;i++)Gs(t[i]);for(var o=0;o<t.length;o++)Xs(t[o]);for(var l=0;l<t.length;l++)Ys(t[l])}function Ks(e){var t=e.cm,n=t.display;Js(t),e.updateMaxLine&&Ci(t),e.mustUpdate=e.viewChanged||e.forceUpdate||e.scrollTop!=null||e.scrollToPos&&(e.scrollToPos.from.line<n.viewFrom||e.scrollToPos.to.line>=n.viewTo)||n.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new ti(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function Us(e){e.updatedDisplay=e.mustUpdate&&Ki(e.cm,e.update)}function Gs(e){var t=e.cm,n=t.display;e.updatedDisplay&&$n(t),e.barMeasure=yn(t),n.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=jo(t,n.maxLine,n.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(n.scroller.clientWidth,n.sizer.offsetLeft+e.adjustWidthTo+Yt(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,n.sizer.offsetLeft+e.adjustWidthTo-wr(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=n.input.prepareSelection())}function Xs(e){var t=e.cm;e.adjustWidthTo!=null&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft<t.doc.scrollLeft&&Cr(t,Math.min(t.display.scroller.scrollLeft,e.maxScrollLeft),!0),t.display.maxLineChanged=!1);var n=e.focus&&e.focus==y(fe(t));e.preparedSelection&&t.display.input.showSelection(e.preparedSelection,n),(e.updatedDisplay||e.startHeight!=t.doc.height)&&Xr(t,e.barMeasure),e.updatedDisplay&&Xi(t,e.barMeasure),e.selectionChanged&&Wi(t),t.state.focused&&e.updateInput&&t.display.input.reset(e.typing),n&&nl(e.cm)}function Ys(e){var t=e.cm,n=t.display,r=t.doc;if(e.updatedDisplay&&fl(t,e.update),n.wheelStartX!=null&&(e.scrollTop!=null||e.scrollLeft!=null||e.scrollToPos)&&(n.wheelStartX=n.wheelStartY=null),e.scrollTop!=null&&ll(t,e.scrollTop,e.forceScroll),e.scrollLeft!=null&&Cr(t,e.scrollLeft,!0,!0),e.scrollToPos){var i=Ws(t,Ae(r,e.scrollToPos.from),Ae(r,e.scrollToPos.to),e.scrollToPos.margin);Rs(t,i)}var o=e.maybeHiddenMarkers,l=e.maybeUnhiddenMarkers;if(o)for(var a=0;a<o.length;++a)o[a].lines.length||Ye(o[a],"hide");if(l)for(var s=0;s<l.length;++s)l[s].lines.length&&Ye(l[s],"unhide");n.wrapper.offsetHeight&&(r.scrollTop=t.display.scroller.scrollTop),e.changeObjs&&Ye(t,"changes",t,e.changeObjs),e.update&&e.update.finish()}function At(e,t){if(e.curOp)return t();Mr(e);try{return t()}finally{Fr(e)}}function lt(e,t){return function(){if(e.curOp)return t.apply(e,arguments);Mr(e);try{return t.apply(e,arguments)}finally{Fr(e)}}}function yt(e){return function(){if(this.curOp)return e.apply(this,arguments);Mr(this);try{return e.apply(this,arguments)}finally{Fr(this)}}}function at(e){return function(){var t=this.cm;if(!t||t.curOp)return e.apply(this,arguments);Mr(t);try{return e.apply(this,arguments)}finally{Fr(t)}}}function kn(e,t){e.doc.highlightFrontier<e.display.viewTo&&e.state.highlight.set(t,xe(Qs,e))}function Qs(e){var t=e.doc;if(!(t.highlightFrontier>=e.display.viewTo)){var n=+new Date+e.options.workTime,r=fn(e,t.highlightFrontier),i=[];t.iter(r.line,Math.min(t.first+t.size,e.display.viewTo+500),function(o){if(r.line>=e.display.viewFrom){var l=o.styles,a=o.text.length>e.options.maxHighlightLength?Gt(t.mode,r.state):null,s=mo(e,o,r,!0);a&&(r.state=a),o.styles=s.styles;var u=o.styleClasses,h=s.classes;h?o.styleClasses=h:u&&(o.styleClasses=null);for(var x=!l||l.length!=o.styles.length||u!=h&&(!u||!h||u.bgClass!=h.bgClass||u.textClass!=h.textClass),D=0;!x&&D<l.length;++D)x=l[D]!=o.styles[D];x&&i.push(r.line),o.stateAfter=r.save(),r.nextLine()}else o.text.length<=e.options.maxHighlightLength&&bi(e,o.text,r),o.stateAfter=r.line%5==0?r.save():null,r.nextLine();if(+new Date>n)return kn(e,e.options.workDelay),!0}),t.highlightFrontier=r.line,t.modeFrontier=Math.max(t.modeFrontier,r.line),i.length&&At(e,function(){for(var o=0;o<i.length;o++)dr(e,i[o],"text")})}}var ti=function(e,t,n){var r=e.display;this.viewport=t,this.visible=Vn(r,e.doc,t),this.editorIsHidden=!r.wrapper.offsetWidth,this.wrapperHeight=r.wrapper.clientHeight,this.wrapperWidth=r.wrapper.clientWidth,this.oldDisplayWidth=wr(e),this.force=n,this.dims=Ii(e),this.events=[]};ti.prototype.signal=function(e,t){Ft(e,t)&&this.events.push(arguments)},ti.prototype.finish=function(){for(var e=0;e<this.events.length;e++)Ye.apply(null,this.events[e])};function Js(e){var t=e.display;!t.scrollbarsClipped&&t.scroller.offsetWidth&&(t.nativeBarWidth=t.scroller.offsetWidth-t.scroller.clientWidth,t.heightForcer.style.height=Yt(e)+"px",t.sizer.style.marginBottom=-t.nativeBarWidth+"px",t.sizer.style.borderRightWidth=Yt(e)+"px",t.scrollbarsClipped=!0)}function Zs(e){if(e.hasFocus())return null;var t=y(fe(e));if(!t||!g(e.display.lineDiv,t))return null;var n={activeElt:t};if(window.getSelection){var r=le(e).getSelection();r.anchorNode&&r.extend&&g(e.display.lineDiv,r.anchorNode)&&(n.anchorNode=r.anchorNode,n.anchorOffset=r.anchorOffset,n.focusNode=r.focusNode,n.focusOffset=r.focusOffset)}return n}function $s(e){if(!(!e||!e.activeElt||e.activeElt==y(Te(e.activeElt)))&&(e.activeElt.focus(),!/^(INPUT|TEXTAREA)$/.test(e.activeElt.nodeName)&&e.anchorNode&&g(document.body,e.anchorNode)&&g(document.body,e.focusNode))){var t=e.activeElt.ownerDocument,n=t.defaultView.getSelection(),r=t.createRange();r.setEnd(e.anchorNode,e.anchorOffset),r.collapse(!1),n.removeAllRanges(),n.addRange(r),n.extend(e.focusNode,e.focusOffset)}}function Ki(e,t){var n=e.display,r=e.doc;if(t.editorIsHidden)return hr(e),!1;if(!t.force&&t.visible.from>=n.viewFrom&&t.visible.to<=n.viewTo&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo)&&n.renderedView==n.view&&tl(e)==0)return!1;dl(e)&&(hr(e),t.dims=Ii(e));var i=r.first+r.size,o=Math.max(t.visible.from-e.options.viewportMargin,r.first),l=Math.min(i,t.visible.to+e.options.viewportMargin);n.viewFrom<o&&o-n.viewFrom<20&&(o=Math.max(r.first,n.viewFrom)),n.viewTo>l&&n.viewTo-l<20&&(l=Math.min(i,n.viewTo)),Vt&&(o=Li(e.doc,o),l=No(e.doc,l));var a=o!=n.viewFrom||l!=n.viewTo||n.lastWrapHeight!=t.wrapperHeight||n.lastWrapWidth!=t.wrapperWidth;zs(e,o,l),n.viewOffset=er(ye(e.doc,n.viewFrom)),e.display.mover.style.top=n.viewOffset+"px";var s=tl(e);if(!a&&s==0&&!t.force&&n.renderedView==n.view&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo))return!1;var u=Zs(e);return s>4&&(n.lineDiv.style.display="none"),Vs(e,n.updateLineNumbers,t.dims),s>4&&(n.lineDiv.style.display=""),n.renderedView=n.view,$s(u),F(n.cursorDiv),F(n.selectionDiv),n.gutters.style.height=n.sizer.style.minHeight=0,a&&(n.lastWrapHeight=t.wrapperHeight,n.lastWrapWidth=t.wrapperWidth,kn(e,400)),n.updateLineNumbers=null,!0}function fl(e,t){for(var n=t.viewport,r=!0;;r=!1){if(!r||!e.options.lineWrapping||t.oldDisplayWidth==wr(e)){if(n&&n.top!=null&&(n={top:Math.min(e.doc.height+Mi(e.display)-Fi(e),n.top)}),t.visible=Vn(e.display,e.doc,n),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break}else r&&(t.visible=Vn(e.display,e.doc,n));if(!Ki(e,t))break;$n(e);var i=yn(e);vn(e),Xr(e,i),Xi(e,i),t.force=!1}t.signal(e,"update",e),(e.display.viewFrom!=e.display.reportedViewFrom||e.display.viewTo!=e.display.reportedViewTo)&&(t.signal(e,"viewportChange",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function Ui(e,t){var n=new ti(e,t);if(Ki(e,n)){$n(e),fl(e,n);var r=yn(e);vn(e),Xr(e,r),Xi(e,r),n.finish()}}function Vs(e,t,n){var r=e.display,i=e.options.lineNumbers,o=r.lineDiv,l=o.firstChild;function a(H){var Z=H.nextSibling;return Y&&z&&e.display.currentWheelTarget==H?H.style.display="none":H.parentNode.removeChild(H),Z}for(var s=r.view,u=r.viewFrom,h=0;h<s.length;h++){var x=s[h];if(!x.hidden)if(!x.node||x.node.parentNode!=o){var D=Cs(e,x,u,n);o.insertBefore(D,l)}else{for(;l!=x.node;)l=a(l);var L=i&&t!=null&&t<=u&&x.lineNumber;x.changes&&(ve(x.changes,"gutter")>-1&&(L=!1),zo(e,x,u,n)),L&&(F(x.lineNumber),x.lineNumber.appendChild(document.createTextNode(re(e.options,u)))),l=x.node.nextSibling}u+=x.size}for(;l;)l=a(l)}function Gi(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",ot(e,"gutterChanged",e)}function Xi(e,t){e.display.sizer.style.minHeight=t.docHeight+"px",e.display.heightForcer.style.top=t.docHeight+"px",e.display.gutters.style.height=t.docHeight+e.display.barHeight+Yt(e)+"px"}function cl(e){var t=e.display,n=t.view;if(!(!t.alignWidgets&&(!t.gutters.firstChild||!e.options.fixedGutter))){for(var r=zi(t)-t.scroller.scrollLeft+e.doc.scrollLeft,i=t.gutters.offsetWidth,o=r+"px",l=0;l<n.length;l++)if(!n[l].hidden){e.options.fixedGutter&&(n[l].gutter&&(n[l].gutter.style.left=o),n[l].gutterBackground&&(n[l].gutterBackground.style.left=o));var a=n[l].alignable;if(a)for(var s=0;s<a.length;s++)a[s].style.left=o}e.options.fixedGutter&&(t.gutters.style.left=r+i+"px")}}function dl(e){if(!e.options.lineNumbers)return!1;var t=e.doc,n=re(e.options,t.first+t.size-1),r=e.display;if(n.length!=r.lineNumChars){var i=r.measure.appendChild(c("div",[c("div",n)],"CodeMirror-linenumber CodeMirror-gutter-elt")),o=i.firstChild.offsetWidth,l=i.offsetWidth-o;return r.lineGutter.style.width="",r.lineNumInnerWidth=Math.max(o,r.lineGutter.offsetWidth-l)+1,r.lineNumWidth=r.lineNumInnerWidth+l,r.lineNumChars=r.lineNumInnerWidth?n.length:-1,r.lineGutter.style.width=r.lineNumWidth+"px",Gi(e.display),!0}return!1}function Yi(e,t){for(var n=[],r=!1,i=0;i<e.length;i++){var o=e[i],l=null;if(typeof o!="string"&&(l=o.style,o=o.className),o=="CodeMirror-linenumbers")if(t)r=!0;else continue;n.push({className:o,style:l})}return t&&!r&&n.push({className:"CodeMirror-linenumbers",style:null}),n}function hl(e){var t=e.gutters,n=e.gutterSpecs;F(t),e.lineGutter=null;for(var r=0;r<n.length;++r){var i=n[r],o=i.className,l=i.style,a=t.appendChild(c("div",null,"CodeMirror-gutter "+o));l&&(a.style.cssText=l),o=="CodeMirror-linenumbers"&&(e.lineGutter=a,a.style.width=(e.lineNumWidth||1)+"px")}t.style.display=n.length?"":"none",Gi(e)}function wn(e){hl(e.display),St(e),cl(e)}function eu(e,t,n,r){var i=this;this.input=n,i.scrollbarFiller=c("div",null,"CodeMirror-scrollbar-filler"),i.scrollbarFiller.setAttribute("cm-not-content","true"),i.gutterFiller=c("div",null,"CodeMirror-gutter-filler"),i.gutterFiller.setAttribute("cm-not-content","true"),i.lineDiv=T("div",null,"CodeMirror-code"),i.selectionDiv=c("div",null,null,"position: relative; z-index: 1"),i.cursorDiv=c("div",null,"CodeMirror-cursors"),i.measure=c("div",null,"CodeMirror-measure"),i.lineMeasure=c("div",null,"CodeMirror-measure"),i.lineSpace=T("div",[i.measure,i.lineMeasure,i.selectionDiv,i.cursorDiv,i.lineDiv],null,"position: relative; outline: none");var o=T("div",[i.lineSpace],"CodeMirror-lines");i.mover=c("div",[o],null,"position: relative"),i.sizer=c("div",[i.mover],"CodeMirror-sizer"),i.sizerWidth=null,i.heightForcer=c("div",null,null,"position: absolute; height: "+Oe+"px; width: 1px;"),i.gutters=c("div",null,"CodeMirror-gutters"),i.lineGutter=null,i.scroller=c("div",[i.sizer,i.heightForcer,i.gutters],"CodeMirror-scroll"),i.scroller.setAttribute("tabIndex","-1"),i.wrapper=c("div",[i.scrollbarFiller,i.gutterFiller,i.scroller],"CodeMirror"),S&&R>=105&&(i.wrapper.style.clipPath="inset(0px)"),i.wrapper.setAttribute("translate","no"),k&&I<8&&(i.gutters.style.zIndex=-1,i.scroller.style.paddingRight=0),!Y&&!(_&&N)&&(i.scroller.draggable=!0),e&&(e.appendChild?e.appendChild(i.wrapper):e(i.wrapper)),i.viewFrom=i.viewTo=t.first,i.reportedViewFrom=i.reportedViewTo=t.first,i.view=[],i.renderedView=null,i.externalMeasured=null,i.viewOffset=0,i.lastWrapHeight=i.lastWrapWidth=0,i.updateLineNumbers=null,i.nativeBarWidth=i.barHeight=i.barWidth=0,i.scrollbarsClipped=!1,i.lineNumWidth=i.lineNumInnerWidth=i.lineNumChars=null,i.alignWidgets=!1,i.cachedCharWidth=i.cachedTextHeight=i.cachedPaddingH=null,i.maxLine=null,i.maxLineLength=0,i.maxLineChanged=!1,i.wheelDX=i.wheelDY=i.wheelStartX=i.wheelStartY=null,i.shift=!1,i.selForContextMenu=null,i.activeTouch=null,i.gutterSpecs=Yi(r.gutters,r.lineNumbers),hl(i),n.init(i)}var ri=0,rr=null;k?rr=-.53:_?rr=15:S?rr=-.7:$&&(rr=-1/3);function pl(e){var t=e.wheelDeltaX,n=e.wheelDeltaY;return t==null&&e.detail&&e.axis==e.HORIZONTAL_AXIS&&(t=e.detail),n==null&&e.detail&&e.axis==e.VERTICAL_AXIS?n=e.detail:n==null&&(n=e.wheelDelta),{x:t,y:n}}function tu(e){var t=pl(e);return t.x*=rr,t.y*=rr,t}function gl(e,t){S&&R==102&&(e.display.chromeScrollHack==null?e.display.sizer.style.pointerEvents="none":clearTimeout(e.display.chromeScrollHack),e.display.chromeScrollHack=setTimeout(function(){e.display.chromeScrollHack=null,e.display.sizer.style.pointerEvents=""},100));var n=pl(t),r=n.x,i=n.y,o=rr;t.deltaMode===0&&(r=t.deltaX,i=t.deltaY,o=1);var l=e.display,a=l.scroller,s=a.scrollWidth>a.clientWidth,u=a.scrollHeight>a.clientHeight;if(r&&s||i&&u){if(i&&z&&Y){e:for(var h=t.target,x=l.view;h!=a;h=h.parentNode)for(var D=0;D<x.length;D++)if(x[D].node==h){e.display.currentWheelTarget=h;break e}}if(r&&!_&&!A&&o!=null){i&&u&&xn(e,Math.max(0,a.scrollTop+i*o)),Cr(e,Math.max(0,a.scrollLeft+r*o)),(!i||i&&u)&&pt(t),l.wheelStartX=null;return}if(i&&o!=null){var L=i*o,H=e.doc.scrollTop,Z=H+l.wrapper.clientHeight;L<0?H=Math.max(0,H+L-50):Z=Math.min(e.doc.height,Z+L+50),Ui(e,{top:H,bottom:Z})}ri<20&&t.deltaMode!==0&&(l.wheelStartX==null?(l.wheelStartX=a.scrollLeft,l.wheelStartY=a.scrollTop,l.wheelDX=r,l.wheelDY=i,setTimeout(function(){if(l.wheelStartX!=null){var ie=a.scrollLeft-l.wheelStartX,ae=a.scrollTop-l.wheelStartY,he=ae&&l.wheelDY&&ae/l.wheelDY||ie&&l.wheelDX&&ie/l.wheelDX;l.wheelStartX=l.wheelStartY=null,he&&(rr=(rr*ri+he)/(ri+1),++ri)}},200)):(l.wheelDX+=r,l.wheelDY+=i))}}var Ot=function(e,t){this.ranges=e,this.primIndex=t};Ot.prototype.primary=function(){return this.ranges[this.primIndex]},Ot.prototype.equals=function(e){if(e==this)return!0;if(e.primIndex!=this.primIndex||e.ranges.length!=this.ranges.length)return!1;for(var t=0;t<this.ranges.length;t++){var n=this.ranges[t],r=e.ranges[t];if(!We(n.anchor,r.anchor)||!We(n.head,r.head))return!1}return!0},Ot.prototype.deepCopy=function(){for(var e=[],t=0;t<this.ranges.length;t++)e[t]=new He(it(this.ranges[t].anchor),it(this.ranges[t].head));return new Ot(e,this.primIndex)},Ot.prototype.somethingSelected=function(){for(var e=0;e<this.ranges.length;e++)if(!this.ranges[e].empty())return!0;return!1},Ot.prototype.contains=function(e,t){t||(t=e);for(var n=0;n<this.ranges.length;n++){var r=this.ranges[n];if(ce(t,r.from())>=0&&ce(e,r.to())<=0)return n}return-1};var He=function(e,t){this.anchor=e,this.head=t};He.prototype.from=function(){return Wr(this.anchor,this.head)},He.prototype.to=function(){return wt(this.anchor,this.head)},He.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch};function Kt(e,t,n){var r=e&&e.options.selectionsMayTouch,i=t[n];t.sort(function(D,L){return ce(D.from(),L.from())}),n=ve(t,i);for(var o=1;o<t.length;o++){var l=t[o],a=t[o-1],s=ce(a.to(),l.from());if(r&&!l.empty()?s>0:s>=0){var u=Wr(a.from(),l.from()),h=wt(a.to(),l.to()),x=a.empty()?l.from()==l.head:a.from()==a.head;o<=n&&--n,t.splice(--o,2,new He(x?h:u,x?u:h))}}return new Ot(t,n)}function pr(e,t){return new Ot([new He(e,t||e)],0)}function gr(e){return e.text?B(e.from.line+e.text.length-1,we(e.text).length+(e.text.length==1?e.from.ch:0)):e.to}function vl(e,t){if(ce(e,t.from)<0)return e;if(ce(e,t.to)<=0)return gr(t);var n=e.line+t.text.length-(t.to.line-t.from.line)-1,r=e.ch;return e.line==t.to.line&&(r+=gr(t).ch-t.to.ch),B(n,r)}function Qi(e,t){for(var n=[],r=0;r<e.sel.ranges.length;r++){var i=e.sel.ranges[r];n.push(new He(vl(i.anchor,t),vl(i.head,t)))}return Kt(e.cm,n,e.sel.primIndex)}function ml(e,t,n){return e.line==t.line?B(n.line,e.ch-t.ch+n.ch):B(n.line+(e.line-t.line),e.ch)}function ru(e,t,n){for(var r=[],i=B(e.first,0),o=i,l=0;l<t.length;l++){var a=t[l],s=ml(a.from,i,o),u=ml(gr(a),i,o);if(i=a.to,o=u,n=="around"){var h=e.sel.ranges[l],x=ce(h.head,h.anchor)<0;r[l]=new He(x?u:s,x?s:u)}else r[l]=new He(s,s)}return new Ot(r,e.sel.primIndex)}function Ji(e){e.doc.mode=zr(e.options,e.doc.modeOption),Sn(e)}function Sn(e){e.doc.iter(function(t){t.stateAfter&&(t.stateAfter=null),t.styles&&(t.styles=null)}),e.doc.modeFrontier=e.doc.highlightFrontier=e.doc.first,kn(e,100),e.state.modeGen++,e.curOp&&St(e)}function xl(e,t){return t.from.ch==0&&t.to.ch==0&&we(t.text)==""&&(!e.cm||e.cm.options.wholeLineUpdateBefore)}function Zi(e,t,n,r){function i(he){return n?n[he]:null}function o(he,se,ge){fs(he,se,ge,r),ot(he,"change",he,t)}function l(he,se){for(var ge=[],Le=he;Le<se;++Le)ge.push(new Hr(u[Le],i(Le),r));return ge}var a=t.from,s=t.to,u=t.text,h=ye(e,a.line),x=ye(e,s.line),D=we(u),L=i(u.length-1),H=s.line-a.line;if(t.full)e.insert(0,l(0,u.length)),e.remove(u.length,e.size-u.length);else if(xl(e,t)){var Z=l(0,u.length-1);o(x,x.text,L),H&&e.remove(a.line,H),Z.length&&e.insert(a.line,Z)}else if(h==x)if(u.length==1)o(h,h.text.slice(0,a.ch)+D+h.text.slice(s.ch),L);else{var ie=l(1,u.length-1);ie.push(new Hr(D+h.text.slice(s.ch),L,r)),o(h,h.text.slice(0,a.ch)+u[0],i(0)),e.insert(a.line+1,ie)}else if(u.length==1)o(h,h.text.slice(0,a.ch)+u[0]+x.text.slice(s.ch),i(0)),e.remove(a.line+1,H);else{o(h,h.text.slice(0,a.ch)+u[0],i(0)),o(x,D+x.text.slice(s.ch),L);var ae=l(1,u.length-1);H>1&&e.remove(a.line+1,H-1),e.insert(a.line+1,ae)}ot(e,"change",e,t)}function vr(e,t,n){function r(i,o,l){if(i.linked)for(var a=0;a<i.linked.length;++a){var s=i.linked[a];if(s.doc!=o){var u=l&&s.sharedHist;n&&!u||(t(s.doc,u),r(s.doc,i,u))}}}r(e,null,!0)}function yl(e,t){if(t.cm)throw new Error("This document is already in use.");e.doc=t,t.cm=e,Bi(e),Ji(e),bl(e),e.options.direction=t.direction,e.options.lineWrapping||Ci(e),e.options.mode=t.modeOption,St(e)}function bl(e){(e.doc.direction=="rtl"?j:V)(e.display.lineDiv,"CodeMirror-rtl")}function nu(e){At(e,function(){bl(e),St(e)})}function ni(e){this.done=[],this.undone=[],this.undoDepth=e?e.undoDepth:1/0,this.lastModTime=this.lastSelTime=0,this.lastOp=this.lastSelOp=null,this.lastOrigin=this.lastSelOrigin=null,this.generation=this.maxGeneration=e?e.maxGeneration:1}function $i(e,t){var n={from:it(t.from),to:gr(t),text:$t(e,t.from,t.to)};return Sl(e,n,t.from.line,t.to.line+1),vr(e,function(r){return Sl(r,n,t.from.line,t.to.line+1)},!0),n}function kl(e){for(;e.length;){var t=we(e);if(t.ranges)e.pop();else break}}function iu(e,t){if(t)return kl(e.done),we(e.done);if(e.done.length&&!we(e.done).ranges)return we(e.done);if(e.done.length>1&&!e.done[e.done.length-2].ranges)return e.done.pop(),we(e.done)}function wl(e,t,n,r){var i=e.history;i.undone.length=0;var o=+new Date,l,a;if((i.lastOp==r||i.lastOrigin==t.origin&&t.origin&&(t.origin.charAt(0)=="+"&&i.lastModTime>o-(e.cm?e.cm.options.historyEventDelay:500)||t.origin.charAt(0)=="*"))&&(l=iu(i,i.lastOp==r)))a=we(l.changes),ce(t.from,t.to)==0&&ce(t.from,a.to)==0?a.to=gr(t):l.changes.push($i(e,t));else{var s=we(i.done);for((!s||!s.ranges)&&ii(e.sel,i.done),l={changes:[$i(e,t)],generation:i.generation},i.done.push(l);i.done.length>i.undoDepth;)i.done.shift(),i.done[0].ranges||i.done.shift()}i.done.push(n),i.generation=++i.maxGeneration,i.lastModTime=i.lastSelTime=o,i.lastOp=i.lastSelOp=r,i.lastOrigin=i.lastSelOrigin=t.origin,a||Ye(e,"historyAdded")}function ou(e,t,n,r){var i=t.charAt(0);return i=="*"||i=="+"&&n.ranges.length==r.ranges.length&&n.somethingSelected()==r.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}function lu(e,t,n,r){var i=e.history,o=r&&r.origin;n==i.lastSelOp||o&&i.lastSelOrigin==o&&(i.lastModTime==i.lastSelTime&&i.lastOrigin==o||ou(e,o,we(i.done),t))?i.done[i.done.length-1]=t:ii(t,i.done),i.lastSelTime=+new Date,i.lastSelOrigin=o,i.lastSelOp=n,r&&r.clearRedo!==!1&&kl(i.undone)}function ii(e,t){var n=we(t);n&&n.ranges&&n.equals(e)||t.push(e)}function Sl(e,t,n,r){var i=t["spans_"+e.id],o=0;e.iter(Math.max(e.first,n),Math.min(e.first+e.size,r),function(l){l.markedSpans&&((i||(i=t["spans_"+e.id]={}))[o]=l.markedSpans),++o})}function au(e){if(!e)return null;for(var t,n=0;n<e.length;++n)e[n].marker.explicitlyCleared?t||(t=e.slice(0,n)):t&&t.push(e[n]);return t?t.length?t:null:e}function su(e,t){var n=t["spans_"+e.id];if(!n)return null;for(var r=[],i=0;i<t.text.length;++i)r.push(au(n[i]));return r}function Ll(e,t){var n=su(e,t),r=wi(e,t);if(!n)return r;if(!r)return n;for(var i=0;i<n.length;++i){var o=n[i],l=r[i];if(o&&l)e:for(var a=0;a<l.length;++a){for(var s=l[a],u=0;u<o.length;++u)if(o[u].marker==s.marker)continue e;o.push(s)}else l&&(n[i]=l)}return n}function Yr(e,t,n){for(var r=[],i=0;i<e.length;++i){var o=e[i];if(o.ranges){r.push(n?Ot.prototype.deepCopy.call(o):o);continue}var l=o.changes,a=[];r.push({changes:a});for(var s=0;s<l.length;++s){var u=l[s],h=void 0;if(a.push({from:u.from,to:u.to,text:u.text}),t)for(var x in u)(h=x.match(/^spans_(\d+)$/))&&ve(t,Number(h[1]))>-1&&(we(a)[x]=u[x],delete u[x])}}return r}function Vi(e,t,n,r){if(r){var i=e.anchor;if(n){var o=ce(t,i)<0;o!=ce(n,i)<0?(i=t,t=n):o!=ce(t,n)<0&&(t=n)}return new He(i,t)}else return new He(n||t,t)}function oi(e,t,n,r,i){i==null&&(i=e.cm&&(e.cm.display.shift||e.extend)),gt(e,new Ot([Vi(e.sel.primary(),t,n,i)],0),r)}function Tl(e,t,n){for(var r=[],i=e.cm&&(e.cm.display.shift||e.extend),o=0;o<e.sel.ranges.length;o++)r[o]=Vi(e.sel.ranges[o],t[o],null,i);var l=Kt(e.cm,r,e.sel.primIndex);gt(e,l,n)}function eo(e,t,n,r){var i=e.sel.ranges.slice(0);i[t]=n,gt(e,Kt(e.cm,i,e.sel.primIndex),r)}function Cl(e,t,n,r){gt(e,pr(t,n),r)}function uu(e,t,n){var r={ranges:t.ranges,update:function(i){this.ranges=[];for(var o=0;o<i.length;o++)this.ranges[o]=new He(Ae(e,i[o].anchor),Ae(e,i[o].head))},origin:n&&n.origin};return Ye(e,"beforeSelectionChange",e,r),e.cm&&Ye(e.cm,"beforeSelectionChange",e.cm,r),r.ranges!=t.ranges?Kt(e.cm,r.ranges,r.ranges.length-1):t}function Dl(e,t,n){var r=e.history.done,i=we(r);i&&i.ranges?(r[r.length-1]=t,li(e,t,n)):gt(e,t,n)}function gt(e,t,n){li(e,t,n),lu(e,e.sel,e.cm?e.cm.curOp.id:NaN,n)}function li(e,t,n){(Ft(e,"beforeSelectionChange")||e.cm&&Ft(e.cm,"beforeSelectionChange"))&&(t=uu(e,t,n));var r=n&&n.bias||(ce(t.primary().head,e.sel.primary().head)<0?-1:1);Ml(e,Al(e,t,r,!0)),!(n&&n.scroll===!1)&&e.cm&&e.cm.getOption("readOnly")!="nocursor"&&Gr(e.cm)}function Ml(e,t){t.equals(e.sel)||(e.sel=t,e.cm&&(e.cm.curOp.updateInput=1,e.cm.curOp.selectionChanged=!0,It(e.cm)),ot(e,"cursorActivity",e))}function Fl(e){Ml(e,Al(e,e.sel,null,!1))}function Al(e,t,n,r){for(var i,o=0;o<t.ranges.length;o++){var l=t.ranges[o],a=t.ranges.length==e.sel.ranges.length&&e.sel.ranges[o],s=ai(e,l.anchor,a&&a.anchor,n,r),u=l.head==l.anchor?s:ai(e,l.head,a&&a.head,n,r);(i||s!=l.anchor||u!=l.head)&&(i||(i=t.ranges.slice(0,o)),i[o]=new He(s,u))}return i?Kt(e.cm,i,t.primIndex):t}function Qr(e,t,n,r,i){var o=ye(e,t.line);if(o.markedSpans)for(var l=0;l<o.markedSpans.length;++l){var a=o.markedSpans[l],s=a.marker,u="selectLeft"in s?!s.selectLeft:s.inclusiveLeft,h="selectRight"in s?!s.selectRight:s.inclusiveRight;if((a.from==null||(u?a.from<=t.ch:a.from<t.ch))&&(a.to==null||(h?a.to>=t.ch:a.to>t.ch))){if(i&&(Ye(s,"beforeCursorEnter"),s.explicitlyCleared))if(o.markedSpans){--l;continue}else break;if(!s.atomic)continue;if(n){var x=s.find(r<0?1:-1),D=void 0;if((r<0?h:u)&&(x=Nl(e,x,-r,x&&x.line==t.line?o:null)),x&&x.line==t.line&&(D=ce(x,n))&&(r<0?D<0:D>0))return Qr(e,x,t,r,i)}var L=s.find(r<0?-1:1);return(r<0?u:h)&&(L=Nl(e,L,r,L.line==t.line?o:null)),L?Qr(e,L,t,r,i):null}}return t}function ai(e,t,n,r,i){var o=r||1,l=Qr(e,t,n,o,i)||!i&&Qr(e,t,n,o,!0)||Qr(e,t,n,-o,i)||!i&&Qr(e,t,n,-o,!0);return l||(e.cantEdit=!0,B(e.first,0))}function Nl(e,t,n,r){return n<0&&t.ch==0?t.line>e.first?Ae(e,B(t.line-1)):null:n>0&&t.ch==(r||ye(e,t.line)).text.length?t.line<e.first+e.size-1?B(t.line+1,0):null:new B(t.line,t.ch+n)}function El(e){e.setSelection(B(e.firstLine(),0),B(e.lastLine()),$e)}function Ol(e,t,n){var r={canceled:!1,from:t.from,to:t.to,text:t.text,origin:t.origin,cancel:function(){return r.canceled=!0}};return n&&(r.update=function(i,o,l,a){i&&(r.from=Ae(e,i)),o&&(r.to=Ae(e,o)),l&&(r.text=l),a!==void 0&&(r.origin=a)}),Ye(e,"beforeChange",e,r),e.cm&&Ye(e.cm,"beforeChange",e.cm,r),r.canceled?(e.cm&&(e.cm.curOp.updateInput=2),null):{from:r.from,to:r.to,text:r.text,origin:r.origin}}function Jr(e,t,n){if(e.cm){if(!e.cm.curOp)return lt(e.cm,Jr)(e,t,n);if(e.cm.state.suppressEdits)return}if(!((Ft(e,"beforeChange")||e.cm&&Ft(e.cm,"beforeChange"))&&(t=Ol(e,t,!0),!t))){var r=Lo&&!n&&ls(e,t.from,t.to);if(r)for(var i=r.length-1;i>=0;--i)Pl(e,{from:r[i].from,to:r[i].to,text:i?[""]:t.text,origin:t.origin});else Pl(e,t)}}function Pl(e,t){if(!(t.text.length==1&&t.text[0]==""&&ce(t.from,t.to)==0)){var n=Qi(e,t);wl(e,t,n,e.cm?e.cm.curOp.id:NaN),Ln(e,t,n,wi(e,t));var r=[];vr(e,function(i,o){!o&&ve(r,i.history)==-1&&(Rl(i.history,t),r.push(i.history)),Ln(i,t,null,wi(i,t))})}}function si(e,t,n){var r=e.cm&&e.cm.state.suppressEdits;if(!(r&&!n)){for(var i=e.history,o,l=e.sel,a=t=="undo"?i.done:i.undone,s=t=="undo"?i.undone:i.done,u=0;u<a.length&&(o=a[u],!(n?o.ranges&&!o.equals(e.sel):!o.ranges));u++);if(u!=a.length){for(i.lastOrigin=i.lastSelOrigin=null;;)if(o=a.pop(),o.ranges){if(ii(o,s),n&&!o.equals(e.sel)){gt(e,o,{clearRedo:!1});return}l=o}else if(r){a.push(o);return}else break;var h=[];ii(l,s),s.push({changes:h,generation:i.generation}),i.generation=o.generation||++i.maxGeneration;for(var x=Ft(e,"beforeChange")||e.cm&&Ft(e.cm,"beforeChange"),D=function(Z){var ie=o.changes[Z];if(ie.origin=t,x&&!Ol(e,ie,!1))return a.length=0,{};h.push($i(e,ie));var ae=Z?Qi(e,ie):we(a);Ln(e,ie,ae,Ll(e,ie)),!Z&&e.cm&&e.cm.scrollIntoView({from:ie.from,to:gr(ie)});var he=[];vr(e,function(se,ge){!ge&&ve(he,se.history)==-1&&(Rl(se.history,ie),he.push(se.history)),Ln(se,ie,null,Ll(se,ie))})},L=o.changes.length-1;L>=0;--L){var H=D(L);if(H)return H.v}}}}function Il(e,t){if(t!=0&&(e.first+=t,e.sel=new Ot(Ie(e.sel.ranges,function(i){return new He(B(i.anchor.line+t,i.anchor.ch),B(i.head.line+t,i.head.ch))}),e.sel.primIndex),e.cm)){St(e.cm,e.first,e.first-t,t);for(var n=e.cm.display,r=n.viewFrom;r<n.viewTo;r++)dr(e.cm,r,"gutter")}}function Ln(e,t,n,r){if(e.cm&&!e.cm.curOp)return lt(e.cm,Ln)(e,t,n,r);if(t.to.line<e.first){Il(e,t.text.length-1-(t.to.line-t.from.line));return}if(!(t.from.line>e.lastLine())){if(t.from.line<e.first){var i=t.text.length-1-(e.first-t.from.line);Il(e,i),t={from:B(e.first,0),to:B(t.to.line+i,t.to.ch),text:[we(t.text)],origin:t.origin}}var o=e.lastLine();t.to.line>o&&(t={from:t.from,to:B(o,ye(e,o).text.length),text:[t.text[0]],origin:t.origin}),t.removed=$t(e,t.from,t.to),n||(n=Qi(e,t)),e.cm?fu(e.cm,t,r):Zi(e,t,r),li(e,n,$e),e.cantEdit&&ai(e,B(e.firstLine(),0))&&(e.cantEdit=!1)}}function fu(e,t,n){var r=e.doc,i=e.display,o=t.from,l=t.to,a=!1,s=o.line;e.options.lineWrapping||(s=f(qt(ye(r,o.line))),r.iter(s,l.line+1,function(L){if(L==i.maxLine)return a=!0,!0})),r.sel.contains(t.from,t.to)>-1&&It(e),Zi(r,t,n,el(e)),e.options.lineWrapping||(r.iter(s,o.line+t.text.length,function(L){var H=Un(L);H>i.maxLineLength&&(i.maxLine=L,i.maxLineLength=H,i.maxLineChanged=!0,a=!1)}),a&&(e.curOp.updateMaxLine=!0)),Va(r,o.line),kn(e,400);var u=t.text.length-(l.line-o.line)-1;t.full?St(e):o.line==l.line&&t.text.length==1&&!xl(e.doc,t)?dr(e,o.line,"text"):St(e,o.line,l.line+1,u);var h=Ft(e,"changes"),x=Ft(e,"change");if(x||h){var D={from:o,to:l,text:t.text,removed:t.removed,origin:t.origin};x&&ot(e,"change",e,D),h&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(D)}e.display.selForContextMenu=null}function Zr(e,t,n,r,i){var o;r||(r=n),ce(r,n)<0&&(o=[r,n],n=o[0],r=o[1]),typeof t=="string"&&(t=e.splitLines(t)),Jr(e,{from:n,to:r,text:t,origin:i})}function zl(e,t,n,r){n<e.line?e.line+=r:t<e.line&&(e.line=t,e.ch=0)}function Bl(e,t,n,r){for(var i=0;i<e.length;++i){var o=e[i],l=!0;if(o.ranges){o.copied||(o=e[i]=o.deepCopy(),o.copied=!0);for(var a=0;a<o.ranges.length;a++)zl(o.ranges[a].anchor,t,n,r),zl(o.ranges[a].head,t,n,r);continue}for(var s=0;s<o.changes.length;++s){var u=o.changes[s];if(n<u.from.line)u.from=B(u.from.line+r,u.from.ch),u.to=B(u.to.line+r,u.to.ch);else if(t<=u.to.line){l=!1;break}}l||(e.splice(0,i+1),i=0)}}function Rl(e,t){var n=t.from.line,r=t.to.line,i=t.text.length-(r-n)-1;Bl(e.done,n,r,i),Bl(e.undone,n,r,i)}function Tn(e,t,n,r){var i=t,o=t;return typeof t=="number"?o=ye(e,go(e,t)):i=f(t),i==null?null:(r(o,i)&&e.cm&&dr(e.cm,i,n),o)}function Cn(e){this.lines=e,this.parent=null;for(var t=0,n=0;n<e.length;++n)e[n].parent=this,t+=e[n].height;this.height=t}Cn.prototype={chunkSize:function(){return this.lines.length},removeInner:function(e,t){for(var n=e,r=e+t;n<r;++n){var i=this.lines[n];this.height-=i.height,cs(i),ot(i,"delete")}this.lines.splice(e,t)},collapse:function(e){e.push.apply(e,this.lines)},insertInner:function(e,t,n){this.height+=n,this.lines=this.lines.slice(0,e).concat(t).concat(this.lines.slice(e));for(var r=0;r<t.length;++r)t[r].parent=this},iterN:function(e,t,n){for(var r=e+t;e<r;++e)if(n(this.lines[e]))return!0}};function Dn(e){this.children=e;for(var t=0,n=0,r=0;r<e.length;++r){var i=e[r];t+=i.chunkSize(),n+=i.height,i.parent=this}this.size=t,this.height=n,this.parent=null}Dn.prototype={chunkSize:function(){return this.size},removeInner:function(e,t){this.size-=t;for(var n=0;n<this.children.length;++n){var r=this.children[n],i=r.chunkSize();if(e<i){var o=Math.min(t,i-e),l=r.height;if(r.removeInner(e,o),this.height-=l-r.height,i==o&&(this.children.splice(n--,1),r.parent=null),(t-=o)==0)break;e=0}else e-=i}if(this.size-t<25&&(this.children.length>1||!(this.children[0]instanceof Cn))){var a=[];this.collapse(a),this.children=[new Cn(a)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t<this.children.length;++t)this.children[t].collapse(e)},insertInner:function(e,t,n){this.size+=t.length,this.height+=n;for(var r=0;r<this.children.length;++r){var i=this.children[r],o=i.chunkSize();if(e<=o){if(i.insertInner(e,t,n),i.lines&&i.lines.length>50){for(var l=i.lines.length%25+25,a=l;a<i.lines.length;){var s=new Cn(i.lines.slice(a,a+=25));i.height-=s.height,this.children.splice(++r,0,s),s.parent=this}i.lines=i.lines.slice(0,l),this.maybeSpill()}break}e-=o}},maybeSpill:function(){if(!(this.children.length<=10)){var e=this;do{var t=e.children.splice(e.children.length-5,5),n=new Dn(t);if(e.parent){e.size-=n.size,e.height-=n.height;var i=ve(e.parent.children,e);e.parent.children.splice(i+1,0,n)}else{var r=new Dn(e.children);r.parent=e,e.children=[r,n],e=r}n.parent=e.parent}while(e.children.length>10);e.parent.maybeSpill()}},iterN:function(e,t,n){for(var r=0;r<this.children.length;++r){var i=this.children[r],o=i.chunkSize();if(e<o){var l=Math.min(t,o-e);if(i.iterN(e,l,n))return!0;if((t-=l)==0)break;e=0}else e-=o}}};var Mn=function(e,t,n){if(n)for(var r in n)n.hasOwnProperty(r)&&(this[r]=n[r]);this.doc=e,this.node=t};Mn.prototype.clear=function(){var e=this.doc.cm,t=this.line.widgets,n=this.line,r=f(n);if(!(r==null||!t)){for(var i=0;i<t.length;++i)t[i]==this&&t.splice(i--,1);t.length||(n.widgets=null);var o=pn(this);Et(n,Math.max(0,n.height-o)),e&&(At(e,function(){Wl(e,n,-o),dr(e,r,"widget")}),ot(e,"lineWidgetCleared",e,this,r))}},Mn.prototype.changed=function(){var e=this,t=this.height,n=this.doc.cm,r=this.line;this.height=null;var i=pn(this)-t;i&&(cr(this.doc,r)||Et(r,r.height+i),n&&At(n,function(){n.curOp.forceUpdate=!0,Wl(n,r,i),ot(n,"lineWidgetChanged",n,e,f(r))}))},Bt(Mn);function Wl(e,t,n){er(t)<(e.curOp&&e.curOp.scrollTop||e.doc.scrollTop)&&ji(e,n)}function cu(e,t,n,r){var i=new Mn(e,n,r),o=e.cm;return o&&i.noHScroll&&(o.display.alignWidgets=!0),Tn(e,t,"widget",function(l){var a=l.widgets||(l.widgets=[]);if(i.insertAt==null?a.push(i):a.splice(Math.min(a.length,Math.max(0,i.insertAt)),0,i),i.line=l,o&&!cr(e,l)){var s=er(l)<e.scrollTop;Et(l,l.height+pn(i)),s&&ji(o,i.height),o.curOp.forceUpdate=!0}return!0}),o&&ot(o,"lineWidgetAdded",o,i,typeof t=="number"?t:f(t)),i}var Hl=0,mr=function(e,t){this.lines=[],this.type=t,this.doc=e,this.id=++Hl};mr.prototype.clear=function(){if(!this.explicitlyCleared){var e=this.doc.cm,t=e&&!e.curOp;if(t&&Mr(e),Ft(this,"clear")){var n=this.find();n&&ot(this,"clear",n.from,n.to)}for(var r=null,i=null,o=0;o<this.lines.length;++o){var l=this.lines[o],a=cn(l.markedSpans,this);e&&!this.collapsed?dr(e,f(l),"text"):e&&(a.to!=null&&(i=f(l)),a.from!=null&&(r=f(l))),l.markedSpans=rs(l.markedSpans,a),a.from==null&&this.collapsed&&!cr(this.doc,l)&&e&&Et(l,jr(e.display))}if(e&&this.collapsed&&!e.options.lineWrapping)for(var s=0;s<this.lines.length;++s){var u=qt(this.lines[s]),h=Un(u);h>e.display.maxLineLength&&(e.display.maxLine=u,e.display.maxLineLength=h,e.display.maxLineChanged=!0)}r!=null&&e&&this.collapsed&&St(e,r,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&Fl(e.doc)),e&&ot(e,"markerCleared",e,this,r,i),t&&Fr(e),this.parent&&this.parent.clear()}},mr.prototype.find=function(e,t){e==null&&this.type=="bookmark"&&(e=1);for(var n,r,i=0;i<this.lines.length;++i){var o=this.lines[i],l=cn(o.markedSpans,this);if(l.from!=null&&(n=B(t?o:f(o),l.from),e==-1))return n;if(l.to!=null&&(r=B(t?o:f(o),l.to),e==1))return r}return n&&{from:n,to:r}},mr.prototype.changed=function(){var e=this,t=this.find(-1,!0),n=this,r=this.doc.cm;!t||!r||At(r,function(){var i=t.line,o=f(t.line),l=Ai(r,o);if(l&&(Go(l),r.curOp.selectionChanged=r.curOp.forceUpdate=!0),r.curOp.updateMaxLine=!0,!cr(n.doc,i)&&n.height!=null){var a=n.height;n.height=null;var s=pn(n)-a;s&&Et(i,i.height+s)}ot(r,"markerChanged",r,e)})},mr.prototype.attachLine=function(e){if(!this.lines.length&&this.doc.cm){var t=this.doc.cm.curOp;(!t.maybeHiddenMarkers||ve(t.maybeHiddenMarkers,this)==-1)&&(t.maybeUnhiddenMarkers||(t.maybeUnhiddenMarkers=[])).push(this)}this.lines.push(e)},mr.prototype.detachLine=function(e){if(this.lines.splice(ve(this.lines,e),1),!this.lines.length&&this.doc.cm){var t=this.doc.cm.curOp;(t.maybeHiddenMarkers||(t.maybeHiddenMarkers=[])).push(this)}},Bt(mr);function $r(e,t,n,r,i){if(r&&r.shared)return du(e,t,n,r,i);if(e.cm&&!e.cm.curOp)return lt(e.cm,$r)(e,t,n,r,i);var o=new mr(e,i),l=ce(t,n);if(r&&Me(r,o,!1),l>0||l==0&&o.clearWhenEmpty!==!1)return o;if(o.replacedWith&&(o.collapsed=!0,o.widgetNode=T("span",[o.replacedWith],"CodeMirror-widget"),r.handleMouseEvents||o.widgetNode.setAttribute("cm-ignore-events","true"),r.insertLeft&&(o.widgetNode.insertLeft=!0)),o.collapsed){if(Ao(e,t.line,t,n,o)||t.line!=n.line&&Ao(e,n.line,t,n,o))throw new Error("Inserting collapsed marker partially overlapping an existing one");ts()}o.addToHistory&&wl(e,{from:t,to:n,origin:"markText"},e.sel,NaN);var a=t.line,s=e.cm,u;if(e.iter(a,n.line+1,function(x){s&&o.collapsed&&!s.options.lineWrapping&&qt(x)==s.display.maxLine&&(u=!0),o.collapsed&&a!=t.line&&Et(x,0),ns(x,new _n(o,a==t.line?t.ch:null,a==n.line?n.ch:null),e.cm&&e.cm.curOp),++a}),o.collapsed&&e.iter(t.line,n.line+1,function(x){cr(e,x)&&Et(x,0)}),o.clearOnEnter&&Se(o,"beforeCursorEnter",function(){return o.clear()}),o.readOnly&&(es(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),o.collapsed&&(o.id=++Hl,o.atomic=!0),s){if(u&&(s.curOp.updateMaxLine=!0),o.collapsed)St(s,t.line,n.line+1);else if(o.className||o.startStyle||o.endStyle||o.css||o.attributes||o.title)for(var h=t.line;h<=n.line;h++)dr(s,h,"text");o.atomic&&Fl(s.doc),ot(s,"markerAdded",s,o)}return o}var Fn=function(e,t){this.markers=e,this.primary=t;for(var n=0;n<e.length;++n)e[n].parent=this};Fn.prototype.clear=function(){if(!this.explicitlyCleared){this.explicitlyCleared=!0;for(var e=0;e<this.markers.length;++e)this.markers[e].clear();ot(this,"clear")}},Fn.prototype.find=function(e,t){return this.primary.find(e,t)},Bt(Fn);function du(e,t,n,r,i){r=Me(r),r.shared=!1;var o=[$r(e,t,n,r,i)],l=o[0],a=r.widgetNode;return vr(e,function(s){a&&(r.widgetNode=a.cloneNode(!0)),o.push($r(s,Ae(s,t),Ae(s,n),r,i));for(var u=0;u<s.linked.length;++u)if(s.linked[u].isParent)return;l=we(o)}),new Fn(o,l)}function _l(e){return e.findMarks(B(e.first,0),e.clipPos(B(e.lastLine())),function(t){return t.parent})}function hu(e,t){for(var n=0;n<t.length;n++){var r=t[n],i=r.find(),o=e.clipPos(i.from),l=e.clipPos(i.to);if(ce(o,l)){var a=$r(e,o,l,r.primary,r.primary.type);r.markers.push(a),a.parent=r}}}function pu(e){for(var t=function(r){var i=e[r],o=[i.primary.doc];vr(i.primary.doc,function(s){return o.push(s)});for(var l=0;l<i.markers.length;l++){var a=i.markers[l];ve(o,a.doc)==-1&&(a.parent=null,i.markers.splice(l--,1))}},n=0;n<e.length;n++)t(n)}var gu=0,Lt=function(e,t,n,r,i){if(!(this instanceof Lt))return new Lt(e,t,n,r,i);n==null&&(n=0),Dn.call(this,[new Cn([new Hr("",null)])]),this.first=n,this.scrollTop=this.scrollLeft=0,this.cantEdit=!1,this.cleanGeneration=1,this.modeFrontier=this.highlightFrontier=n;var o=B(n,0);this.sel=pr(o),this.history=new ni(null),this.id=++gu,this.modeOption=t,this.lineSep=r,this.direction=i=="rtl"?"rtl":"ltr",this.extend=!1,typeof e=="string"&&(e=this.splitLines(e)),Zi(this,{from:o,to:o,text:e}),gt(this,pr(o),$e)};Lt.prototype=K(Dn.prototype,{constructor:Lt,iter:function(e,t,n){n?this.iterN(e-this.first,t-e,n):this.iterN(this.first,this.first+this.size,e)},insert:function(e,t){for(var n=0,r=0;r<t.length;++r)n+=t[r].height;this.insertInner(e-this.first,t,n)},remove:function(e,t){this.removeInner(e-this.first,t)},getValue:function(e){var t=un(this,this.first,this.first+this.size);return e===!1?t:t.join(e||this.lineSeparator())},setValue:at(function(e){var t=B(this.first,0),n=this.first+this.size-1;Jr(this,{from:t,to:B(n,ye(this,n).text.length),text:this.splitLines(e),origin:"setValue",full:!0},!0),this.cm&&mn(this.cm,0,0),gt(this,pr(t),$e)}),replaceRange:function(e,t,n,r){t=Ae(this,t),n=n?Ae(this,n):t,Zr(this,e,t,n,r)},getRange:function(e,t,n){var r=$t(this,Ae(this,e),Ae(this,t));return n===!1?r:n===""?r.join(""):r.join(n||this.lineSeparator())},getLine:function(e){var t=this.getLineHandle(e);return t&&t.text},getLineHandle:function(e){if(U(this,e))return ye(this,e)},getLineNumber:function(e){return f(e)},getLineHandleVisualStart:function(e){return typeof e=="number"&&(e=ye(this,e)),qt(e)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(e){return Ae(this,e)},getCursor:function(e){var t=this.sel.primary(),n;return e==null||e=="head"?n=t.head:e=="anchor"?n=t.anchor:e=="end"||e=="to"||e===!1?n=t.to():n=t.from(),n},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:at(function(e,t,n){Cl(this,Ae(this,typeof e=="number"?B(e,t||0):e),null,n)}),setSelection:at(function(e,t,n){Cl(this,Ae(this,e),Ae(this,t||e),n)}),extendSelection:at(function(e,t,n){oi(this,Ae(this,e),t&&Ae(this,t),n)}),extendSelections:at(function(e,t){Tl(this,vo(this,e),t)}),extendSelectionsBy:at(function(e,t){var n=Ie(this.sel.ranges,e);Tl(this,vo(this,n),t)}),setSelections:at(function(e,t,n){if(e.length){for(var r=[],i=0;i<e.length;i++)r[i]=new He(Ae(this,e[i].anchor),Ae(this,e[i].head||e[i].anchor));t==null&&(t=Math.min(e.length-1,this.sel.primIndex)),gt(this,Kt(this.cm,r,t),n)}}),addSelection:at(function(e,t,n){var r=this.sel.ranges.slice(0);r.push(new He(Ae(this,e),Ae(this,t||e))),gt(this,Kt(this.cm,r,r.length-1),n)}),getSelection:function(e){for(var t=this.sel.ranges,n,r=0;r<t.length;r++){var i=$t(this,t[r].from(),t[r].to());n=n?n.concat(i):i}return e===!1?n:n.join(e||this.lineSeparator())},getSelections:function(e){for(var t=[],n=this.sel.ranges,r=0;r<n.length;r++){var i=$t(this,n[r].from(),n[r].to());e!==!1&&(i=i.join(e||this.lineSeparator())),t[r]=i}return t},replaceSelection:function(e,t,n){for(var r=[],i=0;i<this.sel.ranges.length;i++)r[i]=e;this.replaceSelections(r,t,n||"+input")},replaceSelections:at(function(e,t,n){for(var r=[],i=this.sel,o=0;o<i.ranges.length;o++){var l=i.ranges[o];r[o]={from:l.from(),to:l.to(),text:this.splitLines(e[o]),origin:n}}for(var a=t&&t!="end"&&ru(this,r,t),s=r.length-1;s>=0;s--)Jr(this,r[s]);a?Dl(this,a):this.cm&&Gr(this.cm)}),undo:at(function(){si(this,"undo")}),redo:at(function(){si(this,"redo")}),undoSelection:at(function(){si(this,"undo",!0)}),redoSelection:at(function(){si(this,"redo",!0)}),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,n=0,r=0;r<e.done.length;r++)e.done[r].ranges||++t;for(var i=0;i<e.undone.length;i++)e.undone[i].ranges||++n;return{undo:t,redo:n}},clearHistory:function(){var e=this;this.history=new ni(this.history),vr(this,function(t){return t.history=e.history},!0)},markClean:function(){this.cleanGeneration=this.changeGeneration(!0)},changeGeneration:function(e){return e&&(this.history.lastOp=this.history.lastSelOp=this.history.lastOrigin=null),this.history.generation},isClean:function(e){return this.history.generation==(e||this.cleanGeneration)},getHistory:function(){return{done:Yr(this.history.done),undone:Yr(this.history.undone)}},setHistory:function(e){var t=this.history=new ni(this.history);t.done=Yr(e.done.slice(0),null,!0),t.undone=Yr(e.undone.slice(0),null,!0)},setGutterMarker:at(function(e,t,n){return Tn(this,e,"gutter",function(r){var i=r.gutterMarkers||(r.gutterMarkers={});return i[t]=n,!n&&be(i)&&(r.gutterMarkers=null),!0})}),clearGutter:at(function(e){var t=this;this.iter(function(n){n.gutterMarkers&&n.gutterMarkers[e]&&Tn(t,n,"gutter",function(){return n.gutterMarkers[e]=null,be(n.gutterMarkers)&&(n.gutterMarkers=null),!0})})}),lineInfo:function(e){var t;if(typeof e=="number"){if(!U(this,e)||(t=e,e=ye(this,e),!e))return null}else if(t=f(e),t==null)return null;return{line:t,handle:e,text:e.text,gutterMarkers:e.gutterMarkers,textClass:e.textClass,bgClass:e.bgClass,wrapClass:e.wrapClass,widgets:e.widgets}},addLineClass:at(function(e,t,n){return Tn(this,e,t=="gutter"?"gutter":"class",function(r){var i=t=="text"?"textClass":t=="background"?"bgClass":t=="gutter"?"gutterClass":"wrapClass";if(!r[i])r[i]=n;else{if(P(n).test(r[i]))return!1;r[i]+=" "+n}return!0})}),removeLineClass:at(function(e,t,n){return Tn(this,e,t=="gutter"?"gutter":"class",function(r){var i=t=="text"?"textClass":t=="background"?"bgClass":t=="gutter"?"gutterClass":"wrapClass",o=r[i];if(o)if(n==null)r[i]=null;else{var l=o.match(P(n));if(!l)return!1;var a=l.index+l[0].length;r[i]=o.slice(0,l.index)+(!l.index||a==o.length?"":" ")+o.slice(a)||null}else return!1;return!0})}),addLineWidget:at(function(e,t,n){return cu(this,e,t,n)}),removeLineWidget:function(e){e.clear()},markText:function(e,t,n){return $r(this,Ae(this,e),Ae(this,t),n,n&&n.type||"range")},setBookmark:function(e,t){var n={replacedWith:t&&(t.nodeType==null?t.widget:t),insertLeft:t&&t.insertLeft,clearWhenEmpty:!1,shared:t&&t.shared,handleMouseEvents:t&&t.handleMouseEvents};return e=Ae(this,e),$r(this,e,e,n,"bookmark")},findMarksAt:function(e){e=Ae(this,e);var t=[],n=ye(this,e.line).markedSpans;if(n)for(var r=0;r<n.length;++r){var i=n[r];(i.from==null||i.from<=e.ch)&&(i.to==null||i.to>=e.ch)&&t.push(i.marker.parent||i.marker)}return t},findMarks:function(e,t,n){e=Ae(this,e),t=Ae(this,t);var r=[],i=e.line;return this.iter(e.line,t.line+1,function(o){var l=o.markedSpans;if(l)for(var a=0;a<l.length;a++){var s=l[a];!(s.to!=null&&i==e.line&&e.ch>=s.to||s.from==null&&i!=e.line||s.from!=null&&i==t.line&&s.from>=t.ch)&&(!n||n(s.marker))&&r.push(s.marker.parent||s.marker)}++i}),r},getAllMarks:function(){var e=[];return this.iter(function(t){var n=t.markedSpans;if(n)for(var r=0;r<n.length;++r)n[r].from!=null&&e.push(n[r].marker)}),e},posFromIndex:function(e){var t,n=this.first,r=this.lineSeparator().length;return this.iter(function(i){var o=i.text.length+r;if(o>e)return t=e,!0;e-=o,++n}),Ae(this,B(n,t))},indexFromPos:function(e){e=Ae(this,e);var t=e.ch;if(e.line<this.first||e.ch<0)return 0;var n=this.lineSeparator().length;return this.iter(this.first,e.line,function(r){t+=r.text.length+n}),t},copy:function(e){var t=new Lt(un(this,this.first,this.first+this.size),this.modeOption,this.first,this.lineSep,this.direction);return t.scrollTop=this.scrollTop,t.scrollLeft=this.scrollLeft,t.sel=this.sel,t.extend=!1,e&&(t.history.undoDepth=this.history.undoDepth,t.setHistory(this.getHistory())),t},linkedDoc:function(e){e||(e={});var t=this.first,n=this.first+this.size;e.from!=null&&e.from>t&&(t=e.from),e.to!=null&&e.to<n&&(n=e.to);var r=new Lt(un(this,t,n),e.mode||this.modeOption,t,this.lineSep,this.direction);return e.sharedHist&&(r.history=this.history),(this.linked||(this.linked=[])).push({doc:r,sharedHist:e.sharedHist}),r.linked=[{doc:this,isParent:!0,sharedHist:e.sharedHist}],hu(r,_l(this)),r},unlinkDoc:function(e){if(e instanceof Ge&&(e=e.doc),this.linked)for(var t=0;t<this.linked.length;++t){var n=this.linked[t];if(n.doc==e){this.linked.splice(t,1),e.unlinkDoc(this),pu(_l(this));break}}if(e.history==this.history){var r=[e.id];vr(e,function(i){return r.push(i.id)},!0),e.history=new ni(null),e.history.done=Yr(this.history.done,r),e.history.undone=Yr(this.history.undone,r)}},iterLinkedDocs:function(e){vr(this,e)},getMode:function(){return this.mode},getEditor:function(){return this.cm},splitLines:function(e){return this.lineSep?e.split(this.lineSep):zt(e)},lineSeparator:function(){return this.lineSep||`
`},setDirection:at(function(e){e!="rtl"&&(e="ltr"),e!=this.direction&&(this.direction=e,this.iter(function(t){return t.order=null}),this.cm&&nu(this.cm))})}),Lt.prototype.eachLine=Lt.prototype.iter;var ql=0;function vu(e){var t=this;if(jl(t),!(Qe(t,e)||tr(t.display,e))){pt(e),k&&(ql=+new Date);var n=Lr(t,e,!0),r=e.dataTransfer.files;if(!(!n||t.isReadOnly()))if(r&&r.length&&window.FileReader&&window.File)for(var i=r.length,o=Array(i),l=0,a=function(){++l==i&&lt(t,function(){n=Ae(t.doc,n);var L={from:n,to:n,text:t.doc.splitLines(o.filter(function(H){return H!=null}).join(t.doc.lineSeparator())),origin:"paste"};Jr(t.doc,L),Dl(t.doc,pr(Ae(t.doc,n),Ae(t.doc,gr(L))))})()},s=function(L,H){if(t.options.allowDropFileTypes&&ve(t.options.allowDropFileTypes,L.type)==-1){a();return}var Z=new FileReader;Z.onerror=function(){return a()},Z.onload=function(){var ie=Z.result;if(/[\x00-\x08\x0e-\x1f]{2}/.test(ie)){a();return}o[H]=ie,a()},Z.readAsText(L)},u=0;u<r.length;u++)s(r[u],u);else{if(t.state.draggingText&&t.doc.sel.contains(n)>-1){t.state.draggingText(e),setTimeout(function(){return t.display.input.focus()},20);return}try{var h=e.dataTransfer.getData("Text");if(h){var x;if(t.state.draggingText&&!t.state.draggingText.copy&&(x=t.listSelections()),li(t.doc,pr(n,n)),x)for(var D=0;D<x.length;++D)Zr(t.doc,"",x[D].anchor,x[D].head,"drag");t.replaceSelection(h,"around","paste"),t.display.input.focus()}}catch{}}}}function mu(e,t){if(k&&(!e.state.draggingText||+new Date-ql<100)){ar(t);return}if(!(Qe(e,t)||tr(e.display,t))&&(t.dataTransfer.setData("Text",e.getSelection()),t.dataTransfer.effectAllowed="copyMove",t.dataTransfer.setDragImage&&!$)){var n=c("img",null,null,"position: fixed; left: 0; top: 0;");n.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",A&&(n.width=n.height=1,e.display.wrapper.appendChild(n),n._top=n.offsetTop),t.dataTransfer.setDragImage(n,0,0),A&&n.parentNode.removeChild(n)}}function xu(e,t){var n=Lr(e,t);if(n){var r=document.createDocumentFragment();Ri(e,n,r),e.display.dragCursor||(e.display.dragCursor=c("div",null,"CodeMirror-cursors CodeMirror-dragcursors"),e.display.lineSpace.insertBefore(e.display.dragCursor,e.display.cursorDiv)),G(e.display.dragCursor,r)}}function jl(e){e.display.dragCursor&&(e.display.lineSpace.removeChild(e.display.dragCursor),e.display.dragCursor=null)}function Kl(e){if(document.getElementsByClassName){for(var t=document.getElementsByClassName("CodeMirror"),n=[],r=0;r<t.length;r++){var i=t[r].CodeMirror;i&&n.push(i)}n.length&&n[0].operation(function(){for(var o=0;o<n.length;o++)e(n[o])})}}var Ul=!1;function yu(){Ul||(bu(),Ul=!0)}function bu(){var e;Se(window,"resize",function(){e==null&&(e=setTimeout(function(){e=null,Kl(ku)},100))}),Se(window,"blur",function(){return Kl(Ur)})}function ku(e){var t=e.display;t.cachedCharWidth=t.cachedTextHeight=t.cachedPaddingH=null,t.scrollbarsClipped=!1,e.setSize()}for(var xr={3:"Pause",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",106:"*",107:"=",109:"-",110:".",111:"/",145:"ScrollLock",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",224:"Mod",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"},An=0;An<10;An++)xr[An+48]=xr[An+96]=String(An);for(var ui=65;ui<=90;ui++)xr[ui]=String.fromCharCode(ui);for(var Nn=1;Nn<=12;Nn++)xr[Nn+111]=xr[Nn+63235]="F"+Nn;var nr={};nr.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"},nr.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"},nr.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars","Ctrl-O":"openLine"},nr.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]},nr.default=z?nr.macDefault:nr.pcDefault;function wu(e){var t=e.split(/-(?!$)/);e=t[t.length-1];for(var n,r,i,o,l=0;l<t.length-1;l++){var a=t[l];if(/^(cmd|meta|m)$/i.test(a))o=!0;else if(/^a(lt)?$/i.test(a))n=!0;else if(/^(c|ctrl|control)$/i.test(a))r=!0;else if(/^s(hift)?$/i.test(a))i=!0;else throw new Error("Unrecognized modifier name: "+a)}return n&&(e="Alt-"+e),r&&(e="Ctrl-"+e),o&&(e="Cmd-"+e),i&&(e="Shift-"+e),e}function Su(e){var t={};for(var n in e)if(e.hasOwnProperty(n)){var r=e[n];if(/^(name|fallthrough|(de|at)tach)$/.test(n))continue;if(r=="..."){delete e[n];continue}for(var i=Ie(n.split(" "),wu),o=0;o<i.length;o++){var l=void 0,a=void 0;o==i.length-1?(a=i.join(" "),l=r):(a=i.slice(0,o+1).join(" "),l="...");var s=t[a];if(!s)t[a]=l;else if(s!=l)throw new Error("Inconsistent bindings for "+a)}delete e[n]}for(var u in t)e[u]=t[u];return e}function Vr(e,t,n,r){t=fi(t);var i=t.call?t.call(e,r):t[e];if(i===!1)return"nothing";if(i==="...")return"multi";if(i!=null&&n(i))return"handled";if(t.fallthrough){if(Object.prototype.toString.call(t.fallthrough)!="[object Array]")return Vr(e,t.fallthrough,n,r);for(var o=0;o<t.fallthrough.length;o++){var l=Vr(e,t.fallthrough[o],n,r);if(l)return l}}}function Gl(e){var t=typeof e=="string"?e:xr[e.keyCode];return t=="Ctrl"||t=="Alt"||t=="Shift"||t=="Mod"}function Xl(e,t,n){var r=e;return t.altKey&&r!="Alt"&&(e="Alt-"+e),(W?t.metaKey:t.ctrlKey)&&r!="Ctrl"&&(e="Ctrl-"+e),(W?t.ctrlKey:t.metaKey)&&r!="Mod"&&(e="Cmd-"+e),!n&&t.shiftKey&&r!="Shift"&&(e="Shift-"+e),e}function Yl(e,t){if(A&&e.keyCode==34&&e.char)return!1;var n=xr[e.keyCode];return n==null||e.altGraphKey?!1:(e.keyCode==3&&e.code&&(n=e.code),Xl(n,e,t))}function fi(e){return typeof e=="string"?nr[e]:e}function en(e,t){for(var n=e.doc.sel.ranges,r=[],i=0;i<n.length;i++){for(var o=t(n[i]);r.length&&ce(o.from,we(r).to)<=0;){var l=r.pop();if(ce(l.from,o.from)<0){o.from=l.from;break}}r.push(o)}At(e,function(){for(var a=r.length-1;a>=0;a--)Zr(e.doc,"",r[a].from,r[a].to,"+delete");Gr(e)})}function to(e,t,n){var r=Mt(e.text,t+n,n);return r<0||r>e.text.length?null:r}function ro(e,t,n){var r=to(e,t.ch,n);return r==null?null:new B(t.line,r,n<0?"after":"before")}function no(e,t,n,r,i){if(e){t.doc.direction=="rtl"&&(i=-i);var o=Re(n,t.doc.direction);if(o){var l=i<0?we(o):o[0],a=i<0==(l.level==1),s=a?"after":"before",u;if(l.level>0||t.doc.direction=="rtl"){var h=qr(t,n);u=i<0?n.text.length-1:0;var x=Qt(t,h,u).top;u=Pt(function(D){return Qt(t,h,D).top==x},i<0==(l.level==1)?l.from:l.to-1,u),s=="before"&&(u=to(n,u,1))}else u=i<0?l.to:l.from;return new B(r,u,s)}}return new B(r,i<0?n.text.length:0,i<0?"before":"after")}function Lu(e,t,n,r){var i=Re(t,e.doc.direction);if(!i)return ro(t,n,r);n.ch>=t.text.length?(n.ch=t.text.length,n.sticky="before"):n.ch<=0&&(n.ch=0,n.sticky="after");var o=lr(i,n.ch,n.sticky),l=i[o];if(e.doc.direction=="ltr"&&l.level%2==0&&(r>0?l.to>n.ch:l.from<n.ch))return ro(t,n,r);var a=function(ae,he){return to(t,ae instanceof B?ae.ch:ae,he)},s,u=function(ae){return e.options.lineWrapping?(s=s||qr(e,t),Vo(e,t,s,ae)):{begin:0,end:t.text.length}},h=u(n.sticky=="before"?a(n,-1):n.ch);if(e.doc.direction=="rtl"||l.level==1){var x=l.level==1==r<0,D=a(n,x?1:-1);if(D!=null&&(x?D<=l.to&&D<=h.end:D>=l.from&&D>=h.begin)){var L=x?"before":"after";return new B(n.line,D,L)}}var H=function(ae,he,se){for(var ge=function(Ke,st){return st?new B(n.line,a(Ke,1),"before"):new B(n.line,Ke,"after")};ae>=0&&ae<i.length;ae+=he){var Le=i[ae],ke=he>0==(Le.level!=1),Ee=ke?se.begin:a(se.end,-1);if(Le.from<=Ee&&Ee<Le.to||(Ee=ke?Le.from:a(Le.to,-1),se.begin<=Ee&&Ee<se.end))return ge(Ee,ke)}},Z=H(o+r,r,h);if(Z)return Z;var ie=r>0?h.end:a(h.begin,-1);return ie!=null&&!(r>0&&ie==t.text.length)&&(Z=H(r>0?0:i.length-1,r,u(ie)),Z)?Z:null}var En={selectAll:El,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),$e)},killLine:function(e){return en(e,function(t){if(t.empty()){var n=ye(e.doc,t.head.line).text.length;return t.head.ch==n&&t.head.line<e.lastLine()?{from:t.head,to:B(t.head.line+1,0)}:{from:t.head,to:B(t.head.line,n)}}else return{from:t.from(),to:t.to()}})},deleteLine:function(e){return en(e,function(t){return{from:B(t.from().line,0),to:Ae(e.doc,B(t.to().line+1,0))}})},delLineLeft:function(e){return en(e,function(t){return{from:B(t.from().line,0),to:t.from()}})},delWrappedLineLeft:function(e){return en(e,function(t){var n=e.charCoords(t.head,"div").top+5,r=e.coordsChar({left:0,top:n},"div");return{from:r,to:t.from()}})},delWrappedLineRight:function(e){return en(e,function(t){var n=e.charCoords(t.head,"div").top+5,r=e.coordsChar({left:e.display.lineDiv.offsetWidth+100,top:n},"div");return{from:t.from(),to:r}})},undo:function(e){return e.undo()},redo:function(e){return e.redo()},undoSelection:function(e){return e.undoSelection()},redoSelection:function(e){return e.redoSelection()},goDocStart:function(e){return e.extendSelection(B(e.firstLine(),0))},goDocEnd:function(e){return e.extendSelection(B(e.lastLine()))},goLineStart:function(e){return e.extendSelectionsBy(function(t){return Ql(e,t.head.line)},{origin:"+move",bias:1})},goLineStartSmart:function(e){return e.extendSelectionsBy(function(t){return Jl(e,t.head)},{origin:"+move",bias:1})},goLineEnd:function(e){return e.extendSelectionsBy(function(t){return Tu(e,t.head.line)},{origin:"+move",bias:-1})},goLineRight:function(e){return e.extendSelectionsBy(function(t){var n=e.cursorCoords(t.head,"div").top+5;return e.coordsChar({left:e.display.lineDiv.offsetWidth+100,top:n},"div")},Pe)},goLineLeft:function(e){return e.extendSelectionsBy(function(t){var n=e.cursorCoords(t.head,"div").top+5;return e.coordsChar({left:0,top:n},"div")},Pe)},goLineLeftSmart:function(e){return e.extendSelectionsBy(function(t){var n=e.cursorCoords(t.head,"div").top+5,r=e.coordsChar({left:0,top:n},"div");return r.ch<e.getLine(r.line).search(/\S/)?Jl(e,t.head):r},Pe)},goLineUp:function(e){return e.moveV(-1,"line")},goLineDown:function(e){return e.moveV(1,"line")},goPageUp:function(e){return e.moveV(-1,"page")},goPageDown:function(e){return e.moveV(1,"page")},goCharLeft:function(e){return e.moveH(-1,"char")},goCharRight:function(e){return e.moveH(1,"char")},goColumnLeft:function(e){return e.moveH(-1,"column")},goColumnRight:function(e){return e.moveH(1,"column")},goWordLeft:function(e){return e.moveH(-1,"word")},goGroupRight:function(e){return e.moveH(1,"group")},goGroupLeft:function(e){return e.moveH(-1,"group")},goWordRight:function(e){return e.moveH(1,"word")},delCharBefore:function(e){return e.deleteH(-1,"codepoint")},delCharAfter:function(e){return e.deleteH(1,"char")},delWordBefore:function(e){return e.deleteH(-1,"word")},delWordAfter:function(e){return e.deleteH(1,"word")},delGroupBefore:function(e){return e.deleteH(-1,"group")},delGroupAfter:function(e){return e.deleteH(1,"group")},indentAuto:function(e){return e.indentSelection("smart")},indentMore:function(e){return e.indentSelection("add")},indentLess:function(e){return e.indentSelection("subtract")},insertTab:function(e){return e.replaceSelection("    ")},insertSoftTab:function(e){for(var t=[],n=e.listSelections(),r=e.options.tabSize,i=0;i<n.length;i++){var o=n[i].from(),l=Fe(e.getLine(o.line),o.ch,r);t.push(et(r-l%r))}e.replaceSelections(t)},defaultTab:function(e){e.somethingSelected()?e.indentSelection("add"):e.execCommand("insertTab")},transposeChars:function(e){return At(e,function(){for(var t=e.listSelections(),n=[],r=0;r<t.length;r++)if(t[r].empty()){var i=t[r].head,o=ye(e.doc,i.line).text;if(o){if(i.ch==o.length&&(i=new B(i.line,i.ch-1)),i.ch>0)i=new B(i.line,i.ch+1),e.replaceRange(o.charAt(i.ch-1)+o.charAt(i.ch-2),B(i.line,i.ch-2),i,"+transpose");else if(i.line>e.doc.first){var l=ye(e.doc,i.line-1).text;l&&(i=new B(i.line,1),e.replaceRange(o.charAt(0)+e.doc.lineSeparator()+l.charAt(l.length-1),B(i.line-1,l.length-1),i,"+transpose"))}}n.push(new He(i,i))}e.setSelections(n)})},newlineAndIndent:function(e){return At(e,function(){for(var t=e.listSelections(),n=t.length-1;n>=0;n--)e.replaceRange(e.doc.lineSeparator(),t[n].anchor,t[n].head,"+input");t=e.listSelections();for(var r=0;r<t.length;r++)e.indentLine(t[r].from().line,null,!0);Gr(e)})},openLine:function(e){return e.replaceSelection(`
`,"start")},toggleOverwrite:function(e){return e.toggleOverwrite()}};function Ql(e,t){var n=ye(e.doc,t),r=qt(n);return r!=n&&(t=f(r)),no(!0,e,r,t,1)}function Tu(e,t){var n=ye(e.doc,t),r=ss(n);return r!=n&&(t=f(r)),no(!0,e,n,t,-1)}function Jl(e,t){var n=Ql(e,t.line),r=ye(e.doc,n.line),i=Re(r,e.doc.direction);if(!i||i[0].level==0){var o=Math.max(n.ch,r.text.search(/\S/)),l=t.line==n.line&&t.ch<=o&&t.ch;return B(n.line,l?0:o,n.sticky)}return n}function ci(e,t,n){if(typeof t=="string"&&(t=En[t],!t))return!1;e.display.input.ensurePolled();var r=e.display.shift,i=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),n&&(e.display.shift=!1),i=t(e)!=qe}finally{e.display.shift=r,e.state.suppressEdits=!1}return i}function Cu(e,t,n){for(var r=0;r<e.state.keyMaps.length;r++){var i=Vr(t,e.state.keyMaps[r],n,e);if(i)return i}return e.options.extraKeys&&Vr(t,e.options.extraKeys,n,e)||Vr(t,e.options.keyMap,n,e)}var Du=new Ce;function On(e,t,n,r){var i=e.state.keySeq;if(i){if(Gl(t))return"handled";if(/\'$/.test(t)?e.state.keySeq=null:Du.set(50,function(){e.state.keySeq==i&&(e.state.keySeq=null,e.display.input.reset())}),Zl(e,i+" "+t,n,r))return!0}return Zl(e,t,n,r)}function Zl(e,t,n,r){var i=Cu(e,t,r);return i=="multi"&&(e.state.keySeq=t),i=="handled"&&ot(e,"keyHandled",e,t,n),(i=="handled"||i=="multi")&&(pt(n),Wi(e)),!!i}function $l(e,t){var n=Yl(t,!0);return n?t.shiftKey&&!e.state.keySeq?On(e,"Shift-"+n,t,function(r){return ci(e,r,!0)})||On(e,n,t,function(r){if(typeof r=="string"?/^go[A-Z]/.test(r):r.motion)return ci(e,r)}):On(e,n,t,function(r){return ci(e,r)}):!1}function Mu(e,t,n){return On(e,"'"+n+"'",t,function(r){return ci(e,r,!0)})}var io=null;function Vl(e){var t=this;if(!(e.target&&e.target!=t.display.input.getField())&&(t.curOp.focus=y(fe(t)),!Qe(t,e))){k&&I<11&&e.keyCode==27&&(e.returnValue=!1);var n=e.keyCode;t.display.shift=n==16||e.shiftKey;var r=$l(t,e);A&&(io=r?n:null,!r&&n==88&&!Wn&&(z?e.metaKey:e.ctrlKey)&&t.replaceSelection("",null,"cut")),_&&!z&&!r&&n==46&&e.shiftKey&&!e.ctrlKey&&document.execCommand&&document.execCommand("cut"),n==18&&!/\bCodeMirror-crosshair\b/.test(t.display.lineDiv.className)&&Fu(t)}}function Fu(e){var t=e.display.lineDiv;j(t,"CodeMirror-crosshair");function n(r){(r.keyCode==18||!r.altKey)&&(V(t,"CodeMirror-crosshair"),ht(document,"keyup",n),ht(document,"mouseover",n))}Se(document,"keyup",n),Se(document,"mouseover",n)}function ea(e){e.keyCode==16&&(this.doc.sel.shift=!1),Qe(this,e)}function ta(e){var t=this;if(!(e.target&&e.target!=t.display.input.getField())&&!(tr(t.display,e)||Qe(t,e)||e.ctrlKey&&!e.altKey||z&&e.metaKey)){var n=e.keyCode,r=e.charCode;if(A&&n==io){io=null,pt(e);return}if(!(A&&(!e.which||e.which<10)&&$l(t,e))){var i=String.fromCharCode(r??n);i!="\b"&&(Mu(t,e,i)||t.display.input.onKeyPress(e))}}}var Au=400,oo=function(e,t,n){this.time=e,this.pos=t,this.button=n};oo.prototype.compare=function(e,t,n){return this.time+Au>e&&ce(t,this.pos)==0&&n==this.button};var Pn,In;function Nu(e,t){var n=+new Date;return In&&In.compare(n,e,t)?(Pn=In=null,"triple"):Pn&&Pn.compare(n,e,t)?(In=new oo(n,e,t),Pn=null,"double"):(Pn=new oo(n,e,t),In=null,"single")}function ra(e){var t=this,n=t.display;if(!(Qe(t,e)||n.activeTouch&&n.input.supportsTouch())){if(n.input.ensurePolled(),n.shift=e.shiftKey,tr(n,e)){Y||(n.scroller.draggable=!1,setTimeout(function(){return n.scroller.draggable=!0},100));return}if(!lo(t,e)){var r=Lr(t,e),i=Rt(e),o=r?Nu(r,i):"single";le(t).focus(),i==1&&t.state.selectingText&&t.state.selectingText(e),!(r&&Eu(t,i,r,o,e))&&(i==1?r?Pu(t,r,o,e):ln(e)==n.scroller&&pt(e):i==2?(r&&oi(t.doc,r),setTimeout(function(){return n.input.focus()},20)):i==3&&(J?t.display.input.onContextMenu(e):Hi(t)))}}}function Eu(e,t,n,r,i){var o="Click";return r=="double"?o="Double"+o:r=="triple"&&(o="Triple"+o),o=(t==1?"Left":t==2?"Middle":"Right")+o,On(e,Xl(o,i),i,function(l){if(typeof l=="string"&&(l=En[l]),!l)return!1;var a=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),a=l(e,n)!=qe}finally{e.state.suppressEdits=!1}return a})}function Ou(e,t,n){var r=e.getOption("configureMouse"),i=r?r(e,t,n):{};if(i.unit==null){var o=X?n.shiftKey&&n.metaKey:n.altKey;i.unit=o?"rectangle":t=="single"?"char":t=="double"?"word":"line"}return(i.extend==null||e.doc.extend)&&(i.extend=e.doc.extend||n.shiftKey),i.addNew==null&&(i.addNew=z?n.metaKey:n.ctrlKey),i.moveOnDrag==null&&(i.moveOnDrag=!(z?n.altKey:n.ctrlKey)),i}function Pu(e,t,n,r){k?setTimeout(xe(nl,e),0):e.curOp.focus=y(fe(e));var i=Ou(e,n,r),o=e.doc.sel,l;e.options.dragDrop&&xi&&!e.isReadOnly()&&n=="single"&&(l=o.contains(t))>-1&&(ce((l=o.ranges[l]).from(),t)<0||t.xRel>0)&&(ce(l.to(),t)>0||t.xRel<0)?Iu(e,r,t,i):zu(e,r,t,i)}function Iu(e,t,n,r){var i=e.display,o=!1,l=lt(e,function(u){Y&&(i.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:Hi(e)),ht(i.wrapper.ownerDocument,"mouseup",l),ht(i.wrapper.ownerDocument,"mousemove",a),ht(i.scroller,"dragstart",s),ht(i.scroller,"drop",l),o||(pt(u),r.addNew||oi(e.doc,n,null,null,r.extend),Y&&!$||k&&I==9?setTimeout(function(){i.wrapper.ownerDocument.body.focus({preventScroll:!0}),i.input.focus()},20):i.input.focus())}),a=function(u){o=o||Math.abs(t.clientX-u.clientX)+Math.abs(t.clientY-u.clientY)>=10},s=function(){return o=!0};Y&&(i.scroller.draggable=!0),e.state.draggingText=l,l.copy=!r.moveOnDrag,Se(i.wrapper.ownerDocument,"mouseup",l),Se(i.wrapper.ownerDocument,"mousemove",a),Se(i.scroller,"dragstart",s),Se(i.scroller,"drop",l),e.state.delayingBlurEvent=!0,setTimeout(function(){return i.input.focus()},20),i.scroller.dragDrop&&i.scroller.dragDrop()}function na(e,t,n){if(n=="char")return new He(t,t);if(n=="word")return e.findWordAt(t);if(n=="line")return new He(B(t.line,0),Ae(e.doc,B(t.line+1,0)));var r=n(e,t);return new He(r.from,r.to)}function zu(e,t,n,r){k&&Hi(e);var i=e.display,o=e.doc;pt(t);var l,a,s=o.sel,u=s.ranges;if(r.addNew&&!r.extend?(a=o.sel.contains(n),a>-1?l=u[a]:l=new He(n,n)):(l=o.sel.primary(),a=o.sel.primIndex),r.unit=="rectangle")r.addNew||(l=new He(n,n)),n=Lr(e,t,!0,!0),a=-1;else{var h=na(e,n,r.unit);r.extend?l=Vi(l,h.anchor,h.head,r.extend):l=h}r.addNew?a==-1?(a=u.length,gt(o,Kt(e,u.concat([l]),a),{scroll:!1,origin:"*mouse"})):u.length>1&&u[a].empty()&&r.unit=="char"&&!r.extend?(gt(o,Kt(e,u.slice(0,a).concat(u.slice(a+1)),0),{scroll:!1,origin:"*mouse"}),s=o.sel):eo(o,a,l,dt):(a=0,gt(o,new Ot([l],0),dt),s=o.sel);var x=n;function D(se){if(ce(x,se)!=0)if(x=se,r.unit=="rectangle"){for(var ge=[],Le=e.options.tabSize,ke=Fe(ye(o,n.line).text,n.ch,Le),Ee=Fe(ye(o,se.line).text,se.ch,Le),Ke=Math.min(ke,Ee),st=Math.max(ke,Ee),Xe=Math.min(n.line,se.line),Nt=Math.min(e.lastLine(),Math.max(n.line,se.line));Xe<=Nt;Xe++){var Tt=ye(o,Xe).text,tt=_e(Tt,Ke,Le);Ke==st?ge.push(new He(B(Xe,tt),B(Xe,tt))):Tt.length>tt&&ge.push(new He(B(Xe,tt),B(Xe,_e(Tt,st,Le))))}ge.length||ge.push(new He(n,n)),gt(o,Kt(e,s.ranges.slice(0,a).concat(ge),a),{origin:"*mouse",scroll:!1}),e.scrollIntoView(se)}else{var Ct=l,ft=na(e,se,r.unit),nt=Ct.anchor,rt;ce(ft.anchor,nt)>0?(rt=ft.head,nt=Wr(Ct.from(),ft.anchor)):(rt=ft.anchor,nt=wt(Ct.to(),ft.head));var Ze=s.ranges.slice(0);Ze[a]=Bu(e,new He(Ae(o,nt),rt)),gt(o,Kt(e,Ze,a),dt)}}var L=i.wrapper.getBoundingClientRect(),H=0;function Z(se){var ge=++H,Le=Lr(e,se,!0,r.unit=="rectangle");if(Le)if(ce(Le,x)!=0){e.curOp.focus=y(fe(e)),D(Le);var ke=Vn(i,o);(Le.line>=ke.to||Le.line<ke.from)&&setTimeout(lt(e,function(){H==ge&&Z(se)}),150)}else{var Ee=se.clientY<L.top?-20:se.clientY>L.bottom?20:0;Ee&&setTimeout(lt(e,function(){H==ge&&(i.scroller.scrollTop+=Ee,Z(se))}),50)}}function ie(se){e.state.selectingText=!1,H=1/0,se&&(pt(se),i.input.focus()),ht(i.wrapper.ownerDocument,"mousemove",ae),ht(i.wrapper.ownerDocument,"mouseup",he),o.history.lastSelOrigin=null}var ae=lt(e,function(se){se.buttons===0||!Rt(se)?ie(se):Z(se)}),he=lt(e,ie);e.state.selectingText=he,Se(i.wrapper.ownerDocument,"mousemove",ae),Se(i.wrapper.ownerDocument,"mouseup",he)}function Bu(e,t){var n=t.anchor,r=t.head,i=ye(e.doc,n.line);if(ce(n,r)==0&&n.sticky==r.sticky)return t;var o=Re(i);if(!o)return t;var l=lr(o,n.ch,n.sticky),a=o[l];if(a.from!=n.ch&&a.to!=n.ch)return t;var s=l+(a.from==n.ch==(a.level!=1)?0:1);if(s==0||s==o.length)return t;var u;if(r.line!=n.line)u=(r.line-n.line)*(e.doc.direction=="ltr"?1:-1)>0;else{var h=lr(o,r.ch,r.sticky),x=h-l||(r.ch-n.ch)*(a.level==1?-1:1);h==s-1||h==s?u=x<0:u=x>0}var D=o[s+(u?-1:0)],L=u==(D.level==1),H=L?D.from:D.to,Z=L?"after":"before";return n.ch==H&&n.sticky==Z?t:new He(new B(n.line,H,Z),r)}function ia(e,t,n,r){var i,o;if(t.touches)i=t.touches[0].clientX,o=t.touches[0].clientY;else try{i=t.clientX,o=t.clientY}catch{return!1}if(i>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;r&&pt(t);var l=e.display,a=l.lineDiv.getBoundingClientRect();if(o>a.bottom||!Ft(e,n))return kt(t);o-=a.top-l.viewOffset;for(var s=0;s<e.display.gutterSpecs.length;++s){var u=l.gutters.childNodes[s];if(u&&u.getBoundingClientRect().right>=i){var h=m(e.doc,o),x=e.display.gutterSpecs[s];return Ye(e,n,e,h,x.className,t),kt(t)}}}function lo(e,t){return ia(e,t,"gutterClick",!0)}function oa(e,t){tr(e.display,t)||Ru(e,t)||Qe(e,t,"contextmenu")||J||e.display.input.onContextMenu(t)}function Ru(e,t){return Ft(e,"gutterContextMenu")?ia(e,t,"gutterContextMenu",!1):!1}function la(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),gn(e)}var tn={toString:function(){return"CodeMirror.Init"}},aa={},di={};function Wu(e){var t=e.optionHandlers;function n(r,i,o,l){e.defaults[r]=i,o&&(t[r]=l?function(a,s,u){u!=tn&&o(a,s,u)}:o)}e.defineOption=n,e.Init=tn,n("value","",function(r,i){return r.setValue(i)},!0),n("mode",null,function(r,i){r.doc.modeOption=i,Ji(r)},!0),n("indentUnit",2,Ji,!0),n("indentWithTabs",!1),n("smartIndent",!0),n("tabSize",4,function(r){Sn(r),gn(r),St(r)},!0),n("lineSeparator",null,function(r,i){if(r.doc.lineSep=i,!!i){var o=[],l=r.doc.first;r.doc.iter(function(s){for(var u=0;;){var h=s.text.indexOf(i,u);if(h==-1)break;u=h+i.length,o.push(B(l,h))}l++});for(var a=o.length-1;a>=0;a--)Zr(r.doc,i,o[a],B(o[a].line,o[a].ch+i.length))}}),n("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\u202d\u202e\u2066\u2067\u2069\ufeff\ufff9-\ufffc]/g,function(r,i,o){r.state.specialChars=new RegExp(i.source+(i.test("    ")?"":"|    "),"g"),o!=tn&&r.refresh()}),n("specialCharPlaceholder",ps,function(r){return r.refresh()},!0),n("electricChars",!0),n("inputStyle",N?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),n("spellcheck",!1,function(r,i){return r.getInputField().spellcheck=i},!0),n("autocorrect",!1,function(r,i){return r.getInputField().autocorrect=i},!0),n("autocapitalize",!1,function(r,i){return r.getInputField().autocapitalize=i},!0),n("rtlMoveVisually",!q),n("wholeLineUpdateBefore",!0),n("theme","default",function(r){la(r),wn(r)},!0),n("keyMap","default",function(r,i,o){var l=fi(i),a=o!=tn&&fi(o);a&&a.detach&&a.detach(r,l),l.attach&&l.attach(r,a||null)}),n("extraKeys",null),n("configureMouse",null),n("lineWrapping",!1,_u,!0),n("gutters",[],function(r,i){r.display.gutterSpecs=Yi(i,r.options.lineNumbers),wn(r)},!0),n("fixedGutter",!0,function(r,i){r.display.gutters.style.left=i?zi(r.display)+"px":"0",r.refresh()},!0),n("coverGutterNextToScrollbar",!1,function(r){return Xr(r)},!0),n("scrollbarStyle","native",function(r){ul(r),Xr(r),r.display.scrollbars.setScrollTop(r.doc.scrollTop),r.display.scrollbars.setScrollLeft(r.doc.scrollLeft)},!0),n("lineNumbers",!1,function(r,i){r.display.gutterSpecs=Yi(r.options.gutters,i),wn(r)},!0),n("firstLineNumber",1,wn,!0),n("lineNumberFormatter",function(r){return r},wn,!0),n("showCursorWhenSelecting",!1,vn,!0),n("resetSelectionOnContextMenu",!0),n("lineWiseCopyCut",!0),n("pasteLinesPerSelection",!0),n("selectionsMayTouch",!1),n("readOnly",!1,function(r,i){i=="nocursor"&&(Ur(r),r.display.input.blur()),r.display.input.readOnlyChanged(i)}),n("screenReaderLabel",null,function(r,i){i=i===""?null:i,r.display.input.screenReaderLabelChanged(i)}),n("disableInput",!1,function(r,i){i||r.display.input.reset()},!0),n("dragDrop",!0,Hu),n("allowDropFileTypes",null),n("cursorBlinkRate",530),n("cursorScrollMargin",0),n("cursorHeight",1,vn,!0),n("singleCursorHeightPerLine",!0,vn,!0),n("workTime",100),n("workDelay",100),n("flattenSpans",!0,Sn,!0),n("addModeClass",!1,Sn,!0),n("pollInterval",100),n("undoDepth",200,function(r,i){return r.doc.history.undoDepth=i}),n("historyEventDelay",1250),n("viewportMargin",10,function(r){return r.refresh()},!0),n("maxHighlightLength",1e4,Sn,!0),n("moveInputWithCursor",!0,function(r,i){i||r.display.input.resetPosition()}),n("tabindex",null,function(r,i){return r.display.input.getField().tabIndex=i||""}),n("autofocus",null),n("direction","ltr",function(r,i){return r.doc.setDirection(i)},!0),n("phrases",null)}function Hu(e,t,n){var r=n&&n!=tn;if(!t!=!r){var i=e.display.dragFunctions,o=t?Se:ht;o(e.display.scroller,"dragstart",i.start),o(e.display.scroller,"dragenter",i.enter),o(e.display.scroller,"dragover",i.over),o(e.display.scroller,"dragleave",i.leave),o(e.display.scroller,"drop",i.drop)}}function _u(e){e.options.lineWrapping?(j(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(V(e.display.wrapper,"CodeMirror-wrap"),Ci(e)),Bi(e),St(e),gn(e),setTimeout(function(){return Xr(e)},100)}function Ge(e,t){var n=this;if(!(this instanceof Ge))return new Ge(e,t);this.options=t=t?Me(t):{},Me(aa,t,!1);var r=t.value;typeof r=="string"?r=new Lt(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var i=new Ge.inputStyles[t.inputStyle](this),o=this.display=new eu(e,r,i,t);o.wrapper.CodeMirror=this,la(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),ul(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new Ce,keySeq:null,specialChars:null},t.autofocus&&!N&&o.input.focus(),k&&I<11&&setTimeout(function(){return n.display.input.reset(!0)},20),qu(this),yu(),Mr(this),this.curOp.forceUpdate=!0,yl(this,r),t.autofocus&&!N||this.hasFocus()?setTimeout(function(){n.hasFocus()&&!n.state.focused&&_i(n)},20):Ur(this);for(var l in di)di.hasOwnProperty(l)&&di[l](this,t[l],tn);dl(this),t.finishInit&&t.finishInit(this);for(var a=0;a<ao.length;++a)ao[a](this);Fr(this),Y&&t.lineWrapping&&getComputedStyle(o.lineDiv).textRendering=="optimizelegibility"&&(o.lineDiv.style.textRendering="auto")}Ge.defaults=aa,Ge.optionHandlers=di;function qu(e){var t=e.display;Se(t.scroller,"mousedown",lt(e,ra)),k&&I<11?Se(t.scroller,"dblclick",lt(e,function(s){if(!Qe(e,s)){var u=Lr(e,s);if(!(!u||lo(e,s)||tr(e.display,s))){pt(s);var h=e.findWordAt(u);oi(e.doc,h.anchor,h.head)}}})):Se(t.scroller,"dblclick",function(s){return Qe(e,s)||pt(s)}),Se(t.scroller,"contextmenu",function(s){return oa(e,s)}),Se(t.input.getField(),"contextmenu",function(s){t.scroller.contains(s.target)||oa(e,s)});var n,r={end:0};function i(){t.activeTouch&&(n=setTimeout(function(){return t.activeTouch=null},1e3),r=t.activeTouch,r.end=+new Date)}function o(s){if(s.touches.length!=1)return!1;var u=s.touches[0];return u.radiusX<=1&&u.radiusY<=1}function l(s,u){if(u.left==null)return!0;var h=u.left-s.left,x=u.top-s.top;return h*h+x*x>400}Se(t.scroller,"touchstart",function(s){if(!Qe(e,s)&&!o(s)&&!lo(e,s)){t.input.ensurePolled(),clearTimeout(n);var u=+new Date;t.activeTouch={start:u,moved:!1,prev:u-r.end<=300?r:null},s.touches.length==1&&(t.activeTouch.left=s.touches[0].pageX,t.activeTouch.top=s.touches[0].pageY)}}),Se(t.scroller,"touchmove",function(){t.activeTouch&&(t.activeTouch.moved=!0)}),Se(t.scroller,"touchend",function(s){var u=t.activeTouch;if(u&&!tr(t,s)&&u.left!=null&&!u.moved&&new Date-u.start<300){var h=e.coordsChar(t.activeTouch,"page"),x;!u.prev||l(u,u.prev)?x=new He(h,h):!u.prev.prev||l(u,u.prev.prev)?x=e.findWordAt(h):x=new He(B(h.line,0),Ae(e.doc,B(h.line+1,0))),e.setSelection(x.anchor,x.head),e.focus(),pt(s)}i()}),Se(t.scroller,"touchcancel",i),Se(t.scroller,"scroll",function(){t.scroller.clientHeight&&(xn(e,t.scroller.scrollTop),Cr(e,t.scroller.scrollLeft,!0),Ye(e,"scroll",e))}),Se(t.scroller,"mousewheel",function(s){return gl(e,s)}),Se(t.scroller,"DOMMouseScroll",function(s){return gl(e,s)}),Se(t.wrapper,"scroll",function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0}),t.dragFunctions={enter:function(s){Qe(e,s)||ar(s)},over:function(s){Qe(e,s)||(xu(e,s),ar(s))},start:function(s){return mu(e,s)},drop:lt(e,vu),leave:function(s){Qe(e,s)||jl(e)}};var a=t.input.getField();Se(a,"keyup",function(s){return ea.call(e,s)}),Se(a,"keydown",lt(e,Vl)),Se(a,"keypress",lt(e,ta)),Se(a,"focus",function(s){return _i(e,s)}),Se(a,"blur",function(s){return Ur(e,s)})}var ao=[];Ge.defineInitHook=function(e){return ao.push(e)};function zn(e,t,n,r){var i=e.doc,o;n==null&&(n="add"),n=="smart"&&(i.mode.indent?o=fn(e,t).state:n="prev");var l=e.options.tabSize,a=ye(i,t),s=Fe(a.text,null,l);a.stateAfter&&(a.stateAfter=null);var u=a.text.match(/^\s*/)[0],h;if(!r&&!/\S/.test(a.text))h=0,n="not";else if(n=="smart"&&(h=i.mode.indent(o,a.text.slice(u.length),a.text),h==qe||h>150)){if(!r)return;n="prev"}n=="prev"?t>i.first?h=Fe(ye(i,t-1).text,null,l):h=0:n=="add"?h=s+e.options.indentUnit:n=="subtract"?h=s-e.options.indentUnit:typeof n=="number"&&(h=s+n),h=Math.max(0,h);var x="",D=0;if(e.options.indentWithTabs)for(var L=Math.floor(h/l);L;--L)D+=l,x+="    ";if(D<h&&(x+=et(h-D)),x!=u)return Zr(i,x,B(t,0),B(t,u.length),"+input"),a.stateAfter=null,!0;for(var H=0;H<i.sel.ranges.length;H++){var Z=i.sel.ranges[H];if(Z.head.line==t&&Z.head.ch<u.length){var ie=B(t,u.length);eo(i,H,new He(ie,ie));break}}}var Ut=null;function hi(e){Ut=e}function so(e,t,n,r,i){var o=e.doc;e.display.shift=!1,r||(r=o.sel);var l=+new Date-200,a=i=="paste"||e.state.pasteIncoming>l,s=zt(t),u=null;if(a&&r.ranges.length>1)if(Ut&&Ut.text.join(`
`)==t){if(r.ranges.length%Ut.text.length==0){u=[];for(var h=0;h<Ut.text.length;h++)u.push(o.splitLines(Ut.text[h]))}}else s.length==r.ranges.length&&e.options.pasteLinesPerSelection&&(u=Ie(s,function(ae){return[ae]}));for(var x=e.curOp.updateInput,D=r.ranges.length-1;D>=0;D--){var L=r.ranges[D],H=L.from(),Z=L.to();L.empty()&&(n&&n>0?H=B(H.line,H.ch-n):e.state.overwrite&&!a?Z=B(Z.line,Math.min(ye(o,Z.line).text.length,Z.ch+we(s).length)):a&&Ut&&Ut.lineWise&&Ut.text.join(`
`)==s.join(`
`)&&(H=Z=B(H.line,0)));var ie={from:H,to:Z,text:u?u[D%u.length]:s,origin:i||(a?"paste":e.state.cutIncoming>l?"cut":"+input")};Jr(e.doc,ie),ot(e,"inputRead",e,ie)}t&&!a&&ua(e,t),Gr(e),e.curOp.updateInput<2&&(e.curOp.updateInput=x),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function sa(e,t){var n=e.clipboardData&&e.clipboardData.getData("Text");if(n)return e.preventDefault(),!t.isReadOnly()&&!t.options.disableInput&&t.hasFocus()&&At(t,function(){return so(t,n,0,null,"paste")}),!0}function ua(e,t){if(!(!e.options.electricChars||!e.options.smartIndent))for(var n=e.doc.sel,r=n.ranges.length-1;r>=0;r--){var i=n.ranges[r];if(!(i.head.ch>100||r&&n.ranges[r-1].head.line==i.head.line)){var o=e.getModeAt(i.head),l=!1;if(o.electricChars){for(var a=0;a<o.electricChars.length;a++)if(t.indexOf(o.electricChars.charAt(a))>-1){l=zn(e,i.head.line,"smart");break}}else o.electricInput&&o.electricInput.test(ye(e.doc,i.head.line).text.slice(0,i.head.ch))&&(l=zn(e,i.head.line,"smart"));l&&ot(e,"electricInput",e,i.head.line)}}}function fa(e){for(var t=[],n=[],r=0;r<e.doc.sel.ranges.length;r++){var i=e.doc.sel.ranges[r].head.line,o={anchor:B(i,0),head:B(i+1,0)};n.push(o),t.push(e.getRange(o.anchor,o.head))}return{text:t,ranges:n}}function uo(e,t,n,r){e.setAttribute("autocorrect",n?"on":"off"),e.setAttribute("autocapitalize",r?"on":"off"),e.setAttribute("spellcheck",!!t)}function ca(){var e=c("textarea",null,null,"position: absolute; bottom: -1em; padding: 0; width: 1px; height: 1em; min-height: 1em; outline: none"),t=c("div",[e],null,"overflow: hidden; position: relative; width: 3px; height: 0px;");return Y?e.style.width="1000px":e.setAttribute("wrap","off"),w&&(e.style.border="1px solid black"),t}function ju(e){var t=e.optionHandlers,n=e.helpers={};e.prototype={constructor:e,focus:function(){le(this).focus(),this.display.input.focus()},setOption:function(r,i){var o=this.options,l=o[r];o[r]==i&&r!="mode"||(o[r]=i,t.hasOwnProperty(r)&&lt(this,t[r])(this,i,l),Ye(this,"optionChange",this,r))},getOption:function(r){return this.options[r]},getDoc:function(){return this.doc},addKeyMap:function(r,i){this.state.keyMaps[i?"push":"unshift"](fi(r))},removeKeyMap:function(r){for(var i=this.state.keyMaps,o=0;o<i.length;++o)if(i[o]==r||i[o].name==r)return i.splice(o,1),!0},addOverlay:yt(function(r,i){var o=r.token?r:e.getMode(this.options,r);if(o.startState)throw new Error("Overlays may not be stateful.");E(this.state.overlays,{mode:o,modeSpec:r,opaque:i&&i.opaque,priority:i&&i.priority||0},function(l){return l.priority}),this.state.modeGen++,St(this)}),removeOverlay:yt(function(r){for(var i=this.state.overlays,o=0;o<i.length;++o){var l=i[o].modeSpec;if(l==r||typeof r=="string"&&l.name==r){i.splice(o,1),this.state.modeGen++,St(this);return}}}),indentLine:yt(function(r,i,o){typeof i!="string"&&typeof i!="number"&&(i==null?i=this.options.smartIndent?"smart":"prev":i=i?"add":"subtract"),U(this.doc,r)&&zn(this,r,i,o)}),indentSelection:yt(function(r){for(var i=this.doc.sel.ranges,o=-1,l=0;l<i.length;l++){var a=i[l];if(a.empty())a.head.line>o&&(zn(this,a.head.line,r,!0),o=a.head.line,l==this.doc.sel.primIndex&&Gr(this));else{var s=a.from(),u=a.to(),h=Math.max(o,s.line);o=Math.min(this.lastLine(),u.line-(u.ch?0:1))+1;for(var x=h;x<o;++x)zn(this,x,r);var D=this.doc.sel.ranges;s.ch==0&&i.length==D.length&&D[l].from().ch>0&&eo(this.doc,l,new He(s,D[l].to()),$e)}}}),getTokenAt:function(r,i){return ko(this,r,i)},getLineTokens:function(r,i){return ko(this,B(r),i,!0)},getTokenTypeAt:function(r){r=Ae(this.doc,r);var i=xo(this,ye(this.doc,r.line)),o=0,l=(i.length-1)/2,a=r.ch,s;if(a==0)s=i[2];else for(;;){var u=o+l>>1;if((u?i[u*2-1]:0)>=a)l=u;else if(i[u*2+1]<a)o=u+1;else{s=i[u*2+2];break}}var h=s?s.indexOf("overlay "):-1;return h<0?s:h==0?null:s.slice(0,h-1)},getModeAt:function(r){var i=this.doc.mode;return i.innerMode?e.innerMode(i,this.getTokenAt(r).state).mode:i},getHelper:function(r,i){return this.getHelpers(r,i)[0]},getHelpers:function(r,i){var o=[];if(!n.hasOwnProperty(i))return o;var l=n[i],a=this.getModeAt(r);if(typeof a[i]=="string")l[a[i]]&&o.push(l[a[i]]);else if(a[i])for(var s=0;s<a[i].length;s++){var u=l[a[i][s]];u&&o.push(u)}else a.helperType&&l[a.helperType]?o.push(l[a.helperType]):l[a.name]&&o.push(l[a.name]);for(var h=0;h<l._global.length;h++){var x=l._global[h];x.pred(a,this)&&ve(o,x.val)==-1&&o.push(x.val)}return o},getStateAfter:function(r,i){var o=this.doc;return r=go(o,r??o.first+o.size-1),fn(this,r+1,i).state},cursorCoords:function(r,i){var o,l=this.doc.sel.primary();return r==null?o=l.head:typeof r=="object"?o=Ae(this.doc,r):o=r?l.from():l.to(),jt(this,o,i||"page")},charCoords:function(r,i){return Qn(this,Ae(this.doc,r),i||"page")},coordsChar:function(r,i){return r=Jo(this,r,i||"page"),Oi(this,r.left,r.top)},lineAtHeight:function(r,i){return r=Jo(this,{top:r,left:0},i||"page").top,m(this.doc,r+this.display.viewOffset)},heightAtLine:function(r,i,o){var l=!1,a;if(typeof r=="number"){var s=this.doc.first+this.doc.size-1;r<this.doc.first?r=this.doc.first:r>s&&(r=s,l=!0),a=ye(this.doc,r)}else a=r;return Yn(this,a,{top:0,left:0},i||"page",o||l).top+(l?this.doc.height-er(a):0)},defaultTextHeight:function(){return jr(this.display)},defaultCharWidth:function(){return Kr(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(r,i,o,l,a){var s=this.display;r=jt(this,Ae(this.doc,r));var u=r.bottom,h=r.left;if(i.style.position="absolute",i.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(i),s.sizer.appendChild(i),l=="over")u=r.top;else if(l=="above"||l=="near"){var x=Math.max(s.wrapper.clientHeight,this.doc.height),D=Math.max(s.sizer.clientWidth,s.lineSpace.clientWidth);(l=="above"||r.bottom+i.offsetHeight>x)&&r.top>i.offsetHeight?u=r.top-i.offsetHeight:r.bottom+i.offsetHeight<=x&&(u=r.bottom),h+i.offsetWidth>D&&(h=D-i.offsetWidth)}i.style.top=u+"px",i.style.left=i.style.right="",a=="right"?(h=s.sizer.clientWidth-i.offsetWidth,i.style.right="0px"):(a=="left"?h=0:a=="middle"&&(h=(s.sizer.clientWidth-i.offsetWidth)/2),i.style.left=h+"px"),o&&Hs(this,{left:h,top:u,right:h+i.offsetWidth,bottom:u+i.offsetHeight})},triggerOnKeyDown:yt(Vl),triggerOnKeyPress:yt(ta),triggerOnKeyUp:ea,triggerOnMouseDown:yt(ra),execCommand:function(r){if(En.hasOwnProperty(r))return En[r].call(null,this)},triggerElectric:yt(function(r){ua(this,r)}),findPosH:function(r,i,o,l){var a=1;i<0&&(a=-1,i=-i);for(var s=Ae(this.doc,r),u=0;u<i&&(s=fo(this.doc,s,a,o,l),!s.hitSide);++u);return s},moveH:yt(function(r,i){var o=this;this.extendSelectionsBy(function(l){return o.display.shift||o.doc.extend||l.empty()?fo(o.doc,l.head,r,i,o.options.rtlMoveVisually):r<0?l.from():l.to()},Pe)}),deleteH:yt(function(r,i){var o=this.doc.sel,l=this.doc;o.somethingSelected()?l.replaceSelection("",null,"+delete"):en(this,function(a){var s=fo(l,a.head,r,i,!1);return r<0?{from:s,to:a.head}:{from:a.head,to:s}})}),findPosV:function(r,i,o,l){var a=1,s=l;i<0&&(a=-1,i=-i);for(var u=Ae(this.doc,r),h=0;h<i;++h){var x=jt(this,u,"div");if(s==null?s=x.left:x.left=s,u=da(this,x,a,o),u.hitSide)break}return u},moveV:yt(function(r,i){var o=this,l=this.doc,a=[],s=!this.display.shift&&!l.extend&&l.sel.somethingSelected();if(l.extendSelectionsBy(function(h){if(s)return r<0?h.from():h.to();var x=jt(o,h.head,"div");h.goalColumn!=null&&(x.left=h.goalColumn),a.push(x.left);var D=da(o,x,r,i);return i=="page"&&h==l.sel.primary()&&ji(o,Qn(o,D,"div").top-x.top),D},Pe),a.length)for(var u=0;u<l.sel.ranges.length;u++)l.sel.ranges[u].goalColumn=a[u]}),findWordAt:function(r){var i=this.doc,o=ye(i,r.line).text,l=r.ch,a=r.ch;if(o){var s=this.getHelper(r,"wordChars");(r.sticky=="before"||a==o.length)&&l?--l:++a;for(var u=o.charAt(l),h=De(u,s)?function(x){return De(x,s)}:/\s/.test(u)?function(x){return/\s/.test(x)}:function(x){return!/\s/.test(x)&&!De(x)};l>0&&h(o.charAt(l-1));)--l;for(;a<o.length&&h(o.charAt(a));)++a}return new He(B(r.line,l),B(r.line,a))},toggleOverwrite:function(r){r!=null&&r==this.state.overwrite||((this.state.overwrite=!this.state.overwrite)?j(this.display.cursorDiv,"CodeMirror-overwrite"):V(this.display.cursorDiv,"CodeMirror-overwrite"),Ye(this,"overwriteToggle",this,this.state.overwrite))},hasFocus:function(){return this.display.input.getField()==y(fe(this))},isReadOnly:function(){return!!(this.options.readOnly||this.doc.cantEdit)},scrollTo:yt(function(r,i){mn(this,r,i)}),getScrollInfo:function(){var r=this.display.scroller;return{left:r.scrollLeft,top:r.scrollTop,height:r.scrollHeight-Yt(this)-this.display.barHeight,width:r.scrollWidth-Yt(this)-this.display.barWidth,clientHeight:Fi(this),clientWidth:wr(this)}},scrollIntoView:yt(function(r,i){r==null?(r={from:this.doc.sel.primary().head,to:null},i==null&&(i=this.options.cursorScrollMargin)):typeof r=="number"?r={from:B(r,0),to:null}:r.from==null&&(r={from:r,to:null}),r.to||(r.to=r.from),r.margin=i||0,r.from.line!=null?_s(this,r):ol(this,r.from,r.to,r.margin)}),setSize:yt(function(r,i){var o=this,l=function(s){return typeof s=="number"||/^\d+$/.test(String(s))?s+"px":s};r!=null&&(this.display.wrapper.style.width=l(r)),i!=null&&(this.display.wrapper.style.height=l(i)),this.options.lineWrapping&&Xo(this);var a=this.display.viewFrom;this.doc.iter(a,this.display.viewTo,function(s){if(s.widgets){for(var u=0;u<s.widgets.length;u++)if(s.widgets[u].noHScroll){dr(o,a,"widget");break}}++a}),this.curOp.forceUpdate=!0,Ye(this,"refresh",this)}),operation:function(r){return At(this,r)},startOperation:function(){return Mr(this)},endOperation:function(){return Fr(this)},refresh:yt(function(){var r=this.display.cachedTextHeight;St(this),this.curOp.forceUpdate=!0,gn(this),mn(this,this.doc.scrollLeft,this.doc.scrollTop),Gi(this.display),(r==null||Math.abs(r-jr(this.display))>.5||this.options.lineWrapping)&&Bi(this),Ye(this,"refresh",this)}),swapDoc:yt(function(r){var i=this.doc;return i.cm=null,this.state.selectingText&&this.state.selectingText(),yl(this,r),gn(this),this.display.input.reset(),mn(this,r.scrollLeft,r.scrollTop),this.curOp.forceScroll=!0,ot(this,"swapDoc",this,i),i}),phrase:function(r){var i=this.options.phrases;return i&&Object.prototype.hasOwnProperty.call(i,r)?i[r]:r},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},Bt(e),e.registerHelper=function(r,i,o){n.hasOwnProperty(r)||(n[r]=e[r]={_global:[]}),n[r][i]=o},e.registerGlobalHelper=function(r,i,o,l){e.registerHelper(r,i,l),n[r]._global.push({pred:o,val:l})}}function fo(e,t,n,r,i){var o=t,l=n,a=ye(e,t.line),s=i&&e.direction=="rtl"?-n:n;function u(){var he=t.line+s;return he<e.first||he>=e.first+e.size?!1:(t=new B(he,t.ch,t.sticky),a=ye(e,he))}function h(he){var se;if(r=="codepoint"){var ge=a.text.charCodeAt(t.ch+(n>0?0:-1));if(isNaN(ge))se=null;else{var Le=n>0?ge>=55296&&ge<56320:ge>=56320&&ge<57343;se=new B(t.line,Math.max(0,Math.min(a.text.length,t.ch+n*(Le?2:1))),-n)}}else i?se=Lu(e.cm,a,t,n):se=ro(a,t,n);if(se==null)if(!he&&u())t=no(i,e.cm,a,t.line,s);else return!1;else t=se;return!0}if(r=="char"||r=="codepoint")h();else if(r=="column")h(!0);else if(r=="word"||r=="group")for(var x=null,D=r=="group",L=e.cm&&e.cm.getHelper(t,"wordChars"),H=!0;!(n<0&&!h(!H));H=!1){var Z=a.text.charAt(t.ch)||`
`,ie=De(Z,L)?"w":D&&Z==`
`?"n":!D||/\s/.test(Z)?null:"p";if(D&&!H&&!ie&&(ie="s"),x&&x!=ie){n<0&&(n=1,h(),t.sticky="after");break}if(ie&&(x=ie),n>0&&!h(!H))break}var ae=ai(e,t,o,l,!0);return We(o,ae)&&(ae.hitSide=!0),ae}function da(e,t,n,r){var i=e.doc,o=t.left,l;if(r=="page"){var a=Math.min(e.display.wrapper.clientHeight,le(e).innerHeight||i(e).documentElement.clientHeight),s=Math.max(a-.5*jr(e.display),3);l=(n>0?t.bottom:t.top)+n*s}else r=="line"&&(l=n>0?t.bottom+3:t.top-3);for(var u;u=Oi(e,o,l),!!u.outside;){if(n<0?l<=0:l>=i.height){u.hitSide=!0;break}l+=n*5}return u}var je=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new Ce,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};je.prototype.init=function(e){var t=this,n=this,r=n.cm,i=n.div=e.lineDiv;i.contentEditable=!0,uo(i,r.options.spellcheck,r.options.autocorrect,r.options.autocapitalize);function o(a){for(var s=a.target;s;s=s.parentNode){if(s==i)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(s.className))break}return!1}Se(i,"paste",function(a){!o(a)||Qe(r,a)||sa(a,r)||I<=11&&setTimeout(lt(r,function(){return t.updateFromDOM()}),20)}),Se(i,"compositionstart",function(a){t.composing={data:a.data,done:!1}}),Se(i,"compositionupdate",function(a){t.composing||(t.composing={data:a.data,done:!1})}),Se(i,"compositionend",function(a){t.composing&&(a.data!=t.composing.data&&t.readFromDOMSoon(),t.composing.done=!0)}),Se(i,"touchstart",function(){return n.forceCompositionEnd()}),Se(i,"input",function(){t.composing||t.readFromDOMSoon()});function l(a){if(!(!o(a)||Qe(r,a))){if(r.somethingSelected())hi({lineWise:!1,text:r.getSelections()}),a.type=="cut"&&r.replaceSelection("",null,"cut");else if(r.options.lineWiseCopyCut){var s=fa(r);hi({lineWise:!0,text:s.text}),a.type=="cut"&&r.operation(function(){r.setSelections(s.ranges,0,$e),r.replaceSelection("",null,"cut")})}else return;if(a.clipboardData){a.clipboardData.clearData();var u=Ut.text.join(`
`);if(a.clipboardData.setData("Text",u),a.clipboardData.getData("Text")==u){a.preventDefault();return}}var h=ca(),x=h.firstChild;uo(x),r.display.lineSpace.insertBefore(h,r.display.lineSpace.firstChild),x.value=Ut.text.join(`
`);var D=y(Te(i));v(x),setTimeout(function(){r.display.lineSpace.removeChild(h),D.focus(),D==i&&n.showPrimarySelection()},50)}}Se(i,"copy",l),Se(i,"cut",l)},je.prototype.screenReaderLabelChanged=function(e){e?this.div.setAttribute("aria-label",e):this.div.removeAttribute("aria-label")},je.prototype.prepareSelection=function(){var e=rl(this.cm,!1);return e.focus=y(Te(this.div))==this.div,e},je.prototype.showSelection=function(e,t){!e||!this.cm.display.view.length||((e.focus||t)&&this.showPrimarySelection(),this.showMultipleSelections(e))},je.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},je.prototype.showPrimarySelection=function(){var e=this.getSelection(),t=this.cm,n=t.doc.sel.primary(),r=n.from(),i=n.to();if(t.display.viewTo==t.display.viewFrom||r.line>=t.display.viewTo||i.line<t.display.viewFrom){e.removeAllRanges();return}var o=pi(t,e.anchorNode,e.anchorOffset),l=pi(t,e.focusNode,e.focusOffset);if(!(o&&!o.bad&&l&&!l.bad&&ce(Wr(o,l),r)==0&&ce(wt(o,l),i)==0)){var a=t.display.view,s=r.line>=t.display.viewFrom&&ha(t,r)||{node:a[0].measure.map[2],offset:0},u=i.line<t.display.viewTo&&ha(t,i);if(!u){var h=a[a.length-1].measure,x=h.maps?h.maps[h.maps.length-1]:h.map;u={node:x[x.length-1],offset:x[x.length-2]-x[x.length-3]}}if(!s||!u){e.removeAllRanges();return}var D=e.rangeCount&&e.getRangeAt(0),L;try{L=C(s.node,s.offset,u.offset,u.node)}catch{}L&&(!_&&t.state.focused?(e.collapse(s.node,s.offset),L.collapsed||(e.removeAllRanges(),e.addRange(L))):(e.removeAllRanges(),e.addRange(L)),D&&e.anchorNode==null?e.addRange(D):_&&this.startGracePeriod()),this.rememberSelection()}},je.prototype.startGracePeriod=function(){var e=this;clearTimeout(this.gracePeriod),this.gracePeriod=setTimeout(function(){e.gracePeriod=!1,e.selectionChanged()&&e.cm.operation(function(){return e.cm.curOp.selectionChanged=!0})},20)},je.prototype.showMultipleSelections=function(e){G(this.cm.display.cursorDiv,e.cursors),G(this.cm.display.selectionDiv,e.selection)},je.prototype.rememberSelection=function(){var e=this.getSelection();this.lastAnchorNode=e.anchorNode,this.lastAnchorOffset=e.anchorOffset,this.lastFocusNode=e.focusNode,this.lastFocusOffset=e.focusOffset},je.prototype.selectionInEditor=function(){var e=this.getSelection();if(!e.rangeCount)return!1;var t=e.getRangeAt(0).commonAncestorContainer;return g(this.div,t)},je.prototype.focus=function(){this.cm.options.readOnly!="nocursor"&&((!this.selectionInEditor()||y(Te(this.div))!=this.div)&&this.showSelection(this.prepareSelection(),!0),this.div.focus())},je.prototype.blur=function(){this.div.blur()},je.prototype.getField=function(){return this.div},je.prototype.supportsTouch=function(){return!0},je.prototype.receivedFocus=function(){var e=this,t=this;this.selectionInEditor()?setTimeout(function(){return e.pollSelection()},20):At(this.cm,function(){return t.cm.curOp.selectionChanged=!0});function n(){t.cm.state.focused&&(t.pollSelection(),t.polling.set(t.cm.options.pollInterval,n))}this.polling.set(this.cm.options.pollInterval,n)},je.prototype.selectionChanged=function(){var e=this.getSelection();return e.anchorNode!=this.lastAnchorNode||e.anchorOffset!=this.lastAnchorOffset||e.focusNode!=this.lastFocusNode||e.focusOffset!=this.lastFocusOffset},je.prototype.pollSelection=function(){if(!(this.readDOMTimeout!=null||this.gracePeriod||!this.selectionChanged())){var e=this.getSelection(),t=this.cm;if(M&&S&&this.cm.display.gutterSpecs.length&&Ku(e.anchorNode)){this.cm.triggerOnKeyDown({type:"keydown",keyCode:8,preventDefault:Math.abs}),this.blur(),this.focus();return}if(!this.composing){this.rememberSelection();var n=pi(t,e.anchorNode,e.anchorOffset),r=pi(t,e.focusNode,e.focusOffset);n&&r&&At(t,function(){gt(t.doc,pr(n,r),$e),(n.bad||r.bad)&&(t.curOp.selectionChanged=!0)})}}},je.prototype.pollContent=function(){this.readDOMTimeout!=null&&(clearTimeout(this.readDOMTimeout),this.readDOMTimeout=null);var e=this.cm,t=e.display,n=e.doc.sel.primary(),r=n.from(),i=n.to();if(r.ch==0&&r.line>e.firstLine()&&(r=B(r.line-1,ye(e.doc,r.line-1).length)),i.ch==ye(e.doc,i.line).text.length&&i.line<e.lastLine()&&(i=B(i.line+1,0)),r.line<t.viewFrom||i.line>t.viewTo-1)return!1;var o,l,a;r.line==t.viewFrom||(o=Tr(e,r.line))==0?(l=f(t.view[0].line),a=t.view[0].node):(l=f(t.view[o].line),a=t.view[o-1].node.nextSibling);var s=Tr(e,i.line),u,h;if(s==t.view.length-1?(u=t.viewTo-1,h=t.lineDiv.lastChild):(u=f(t.view[s+1].line)-1,h=t.view[s+1].node.previousSibling),!a)return!1;for(var x=e.doc.splitLines(Uu(e,a,h,l,u)),D=$t(e.doc,B(l,0),B(u,ye(e.doc,u).text.length));x.length>1&&D.length>1;)if(we(x)==we(D))x.pop(),D.pop(),u--;else if(x[0]==D[0])x.shift(),D.shift(),l++;else break;for(var L=0,H=0,Z=x[0],ie=D[0],ae=Math.min(Z.length,ie.length);L<ae&&Z.charCodeAt(L)==ie.charCodeAt(L);)++L;for(var he=we(x),se=we(D),ge=Math.min(he.length-(x.length==1?L:0),se.length-(D.length==1?L:0));H<ge&&he.charCodeAt(he.length-H-1)==se.charCodeAt(se.length-H-1);)++H;if(x.length==1&&D.length==1&&l==r.line)for(;L&&L>r.ch&&he.charCodeAt(he.length-H-1)==se.charCodeAt(se.length-H-1);)L--,H++;x[x.length-1]=he.slice(0,he.length-H).replace(/^\u200b+/,""),x[0]=x[0].slice(L).replace(/\u200b+$/,"");var Le=B(l,L),ke=B(u,D.length?we(D).length-H:0);if(x.length>1||x[0]||ce(Le,ke))return Zr(e.doc,x,Le,ke,"+input"),!0},je.prototype.ensurePolled=function(){this.forceCompositionEnd()},je.prototype.reset=function(){this.forceCompositionEnd()},je.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},je.prototype.readFromDOMSoon=function(){var e=this;this.readDOMTimeout==null&&(this.readDOMTimeout=setTimeout(function(){if(e.readDOMTimeout=null,e.composing)if(e.composing.done)e.composing=null;else return;e.updateFromDOM()},80))},je.prototype.updateFromDOM=function(){var e=this;(this.cm.isReadOnly()||!this.pollContent())&&At(this.cm,function(){return St(e.cm)})},je.prototype.setUneditable=function(e){e.contentEditable="false"},je.prototype.onKeyPress=function(e){e.charCode==0||this.composing||(e.preventDefault(),this.cm.isReadOnly()||lt(this.cm,so)(this.cm,String.fromCharCode(e.charCode==null?e.keyCode:e.charCode),0))},je.prototype.readOnlyChanged=function(e){this.div.contentEditable=String(e!="nocursor")},je.prototype.onContextMenu=function(){},je.prototype.resetPosition=function(){},je.prototype.needsContentAttribute=!0;function ha(e,t){var n=Ai(e,t.line);if(!n||n.hidden)return null;var r=ye(e.doc,t.line),i=qo(n,r,t.line),o=Re(r,e.doc.direction),l="left";if(o){var a=lr(o,t.ch);l=a%2?"right":"left"}var s=Uo(i.map,t.ch,l);return s.offset=s.collapse=="right"?s.end:s.start,s}function Ku(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function rn(e,t){return t&&(e.bad=!0),e}function Uu(e,t,n,r,i){var o="",l=!1,a=e.doc.lineSeparator(),s=!1;function u(L){return function(H){return H.id==L}}function h(){l&&(o+=a,s&&(o+=a),l=s=!1)}function x(L){L&&(h(),o+=L)}function D(L){if(L.nodeType==1){var H=L.getAttribute("cm-text");if(H){x(H);return}var Z=L.getAttribute("cm-marker"),ie;if(Z){var ae=e.findMarks(B(r,0),B(i+1,0),u(+Z));ae.length&&(ie=ae[0].find(0))&&x($t(e.doc,ie.from,ie.to).join(a));return}if(L.getAttribute("contenteditable")=="false")return;var he=/^(pre|div|p|li|table|br)$/i.test(L.nodeName);if(!/^br$/i.test(L.nodeName)&&L.textContent.length==0)return;he&&h();for(var se=0;se<L.childNodes.length;se++)D(L.childNodes[se]);/^(pre|p)$/i.test(L.nodeName)&&(s=!0),he&&(l=!0)}else L.nodeType==3&&x(L.nodeValue.replace(/\u200b/g,"").replace(/\u00a0/g," "))}for(;D(t),t!=n;)t=t.nextSibling,s=!1;return o}function pi(e,t,n){var r;if(t==e.display.lineDiv){if(r=e.display.lineDiv.childNodes[n],!r)return rn(e.clipPos(B(e.display.viewTo-1)),!0);t=null,n=0}else for(r=t;;r=r.parentNode){if(!r||r==e.display.lineDiv)return null;if(r.parentNode&&r.parentNode==e.display.lineDiv)break}for(var i=0;i<e.display.view.length;i++){var o=e.display.view[i];if(o.node==r)return Gu(o,t,n)}}function Gu(e,t,n){var r=e.text.firstChild,i=!1;if(!t||!g(r,t))return rn(B(f(e.line),0),!0);if(t==r&&(i=!0,t=r.childNodes[n],n=0,!t)){var o=e.rest?we(e.rest):e.line;return rn(B(f(o),o.text.length),i)}var l=t.nodeType==3?t:null,a=t;for(!l&&t.childNodes.length==1&&t.firstChild.nodeType==3&&(l=t.firstChild,n&&(n=l.nodeValue.length));a.parentNode!=r;)a=a.parentNode;var s=e.measure,u=s.maps;function h(ie,ae,he){for(var se=-1;se<(u?u.length:0);se++)for(var ge=se<0?s.map:u[se],Le=0;Le<ge.length;Le+=3){var ke=ge[Le+2];if(ke==ie||ke==ae){var Ee=f(se<0?e.line:e.rest[se]),Ke=ge[Le]+he;return(he<0||ke!=ie)&&(Ke=ge[Le+(he?1:0)]),B(Ee,Ke)}}}var x=h(l,a,n);if(x)return rn(x,i);for(var D=a.nextSibling,L=l?l.nodeValue.length-n:0;D;D=D.nextSibling){if(x=h(D,D.firstChild,0),x)return rn(B(x.line,x.ch-L),i);L+=D.textContent.length}for(var H=a.previousSibling,Z=n;H;H=H.previousSibling){if(x=h(H,H.firstChild,-1),x)return rn(B(x.line,x.ch+Z),i);Z+=H.textContent.length}}var Ve=function(e){this.cm=e,this.prevInput="",this.pollingFast=!1,this.polling=new Ce,this.hasSelection=!1,this.composing=null,this.resetting=!1};Ve.prototype.init=function(e){var t=this,n=this,r=this.cm;this.createField(e);var i=this.textarea;e.wrapper.insertBefore(this.wrapper,e.wrapper.firstChild),w&&(i.style.width="0px"),Se(i,"input",function(){k&&I>=9&&t.hasSelection&&(t.hasSelection=null),n.poll()}),Se(i,"paste",function(l){Qe(r,l)||sa(l,r)||(r.state.pasteIncoming=+new Date,n.fastPoll())});function o(l){if(!Qe(r,l)){if(r.somethingSelected())hi({lineWise:!1,text:r.getSelections()});else if(r.options.lineWiseCopyCut){var a=fa(r);hi({lineWise:!0,text:a.text}),l.type=="cut"?r.setSelections(a.ranges,null,$e):(n.prevInput="",i.value=a.text.join(`
`),v(i))}else return;l.type=="cut"&&(r.state.cutIncoming=+new Date)}}Se(i,"cut",o),Se(i,"copy",o),Se(e.scroller,"paste",function(l){if(!(tr(e,l)||Qe(r,l))){if(!i.dispatchEvent){r.state.pasteIncoming=+new Date,n.focus();return}var a=new Event("paste");a.clipboardData=l.clipboardData,i.dispatchEvent(a)}}),Se(e.lineSpace,"selectstart",function(l){tr(e,l)||pt(l)}),Se(i,"compositionstart",function(){var l=r.getCursor("from");n.composing&&n.composing.range.clear(),n.composing={start:l,range:r.markText(l,r.getCursor("to"),{className:"CodeMirror-composing"})}}),Se(i,"compositionend",function(){n.composing&&(n.poll(),n.composing.range.clear(),n.composing=null)})},Ve.prototype.createField=function(e){this.wrapper=ca(),this.textarea=this.wrapper.firstChild;var t=this.cm.options;uo(this.textarea,t.spellcheck,t.autocorrect,t.autocapitalize)},Ve.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},Ve.prototype.prepareSelection=function(){var e=this.cm,t=e.display,n=e.doc,r=rl(e);if(e.options.moveInputWithCursor){var i=jt(e,n.sel.primary().head,"div"),o=t.wrapper.getBoundingClientRect(),l=t.lineDiv.getBoundingClientRect();r.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,i.top+l.top-o.top)),r.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,i.left+l.left-o.left))}return r},Ve.prototype.showSelection=function(e){var t=this.cm,n=t.display;G(n.cursorDiv,e.cursors),G(n.selectionDiv,e.selection),e.teTop!=null&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},Ve.prototype.reset=function(e){if(!(this.contextMenuPending||this.composing&&e)){var t=this.cm;if(this.resetting=!0,t.somethingSelected()){this.prevInput="";var n=t.getSelection();this.textarea.value=n,t.state.focused&&v(this.textarea),k&&I>=9&&(this.hasSelection=n)}else e||(this.prevInput=this.textarea.value="",k&&I>=9&&(this.hasSelection=null));this.resetting=!1}},Ve.prototype.getField=function(){return this.textarea},Ve.prototype.supportsTouch=function(){return!1},Ve.prototype.focus=function(){if(this.cm.options.readOnly!="nocursor"&&(!N||y(Te(this.textarea))!=this.textarea))try{this.textarea.focus()}catch{}},Ve.prototype.blur=function(){this.textarea.blur()},Ve.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},Ve.prototype.receivedFocus=function(){this.slowPoll()},Ve.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){e.poll(),e.cm.state.focused&&e.slowPoll()})},Ve.prototype.fastPoll=function(){var e=!1,t=this;t.pollingFast=!0;function n(){var r=t.poll();!r&&!e?(e=!0,t.polling.set(60,n)):(t.pollingFast=!1,t.slowPoll())}t.polling.set(20,n)},Ve.prototype.poll=function(){var e=this,t=this.cm,n=this.textarea,r=this.prevInput;if(this.contextMenuPending||this.resetting||!t.state.focused||ur(n)&&!r&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var i=n.value;if(i==r&&!t.somethingSelected())return!1;if(k&&I>=9&&this.hasSelection===i||z&&/[\uf700-\uf7ff]/.test(i))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var o=i.charCodeAt(0);if(o==8203&&!r&&(r="​"),o==8666)return this.reset(),this.cm.execCommand("undo")}for(var l=0,a=Math.min(r.length,i.length);l<a&&r.charCodeAt(l)==i.charCodeAt(l);)++l;return At(t,function(){so(t,i.slice(l),r.length-l,null,e.composing?"*compose":null),i.length>1e3||i.indexOf(`
`)>-1?n.value=e.prevInput="":e.prevInput=i,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},Ve.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},Ve.prototype.onKeyPress=function(){k&&I>=9&&(this.hasSelection=null),this.fastPoll()},Ve.prototype.onContextMenu=function(e){var t=this,n=t.cm,r=n.display,i=t.textarea;t.contextMenuPending&&t.contextMenuPending();var o=Lr(n,e),l=r.scroller.scrollTop;if(!o||A)return;var a=n.options.resetSelectionOnContextMenu;a&&n.doc.sel.contains(o)==-1&&lt(n,gt)(n.doc,pr(o),$e);var s=i.style.cssText,u=t.wrapper.style.cssText,h=t.wrapper.offsetParent.getBoundingClientRect();t.wrapper.style.cssText="position: static",i.style.cssText=`position: absolute; width: 30px; height: 30px;
      top: `+(e.clientY-h.top-5)+"px; left: "+(e.clientX-h.left-5)+`px;
      z-index: 1000; background: `+(k?"rgba(255, 255, 255, .05)":"transparent")+`;
      outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);`;var x;Y&&(x=i.ownerDocument.defaultView.scrollY),r.input.focus(),Y&&i.ownerDocument.defaultView.scrollTo(null,x),r.input.reset(),n.somethingSelected()||(i.value=t.prevInput=" "),t.contextMenuPending=L,r.selForContextMenu=n.doc.sel,clearTimeout(r.detectingSelectAll);function D(){if(i.selectionStart!=null){var Z=n.somethingSelected(),ie="​"+(Z?i.value:"");i.value="⇚",i.value=ie,t.prevInput=Z?"":"​",i.selectionStart=1,i.selectionEnd=ie.length,r.selForContextMenu=n.doc.sel}}function L(){if(t.contextMenuPending==L&&(t.contextMenuPending=!1,t.wrapper.style.cssText=u,i.style.cssText=s,k&&I<9&&r.scrollbars.setScrollTop(r.scroller.scrollTop=l),i.selectionStart!=null)){(!k||k&&I<9)&&D();var Z=0,ie=function(){r.selForContextMenu==n.doc.sel&&i.selectionStart==0&&i.selectionEnd>0&&t.prevInput=="​"?lt(n,El)(n):Z++<10?r.detectingSelectAll=setTimeout(ie,500):(r.selForContextMenu=null,r.input.reset())};r.detectingSelectAll=setTimeout(ie,200)}}if(k&&I>=9&&D(),J){ar(e);var H=function(){ht(window,"mouseup",H),setTimeout(L,20)};Se(window,"mouseup",H)}else setTimeout(L,50)},Ve.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled=e=="nocursor",this.textarea.readOnly=!!e},Ve.prototype.setUneditable=function(){},Ve.prototype.needsContentAttribute=!1;function Xu(e,t){if(t=t?Me(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),t.autofocus==null){var n=y(Te(e));t.autofocus=n==e||e.getAttribute("autofocus")!=null&&n==document.body}function r(){e.value=a.getValue()}var i;if(e.form&&(Se(e.form,"submit",r),!t.leaveSubmitMethodAlone)){var o=e.form;i=o.submit;try{var l=o.submit=function(){r(),o.submit=i,o.submit(),o.submit=l}}catch{}}t.finishInit=function(s){s.save=r,s.getTextArea=function(){return e},s.toTextArea=function(){s.toTextArea=isNaN,r(),e.parentNode.removeChild(s.getWrapperElement()),e.style.display="",e.form&&(ht(e.form,"submit",r),!t.leaveSubmitMethodAlone&&typeof e.form.submit=="function"&&(e.form.submit=i))}},e.style.display="none";var a=Ge(function(s){return e.parentNode.insertBefore(s,e.nextSibling)},t);return a}function Yu(e){e.off=ht,e.on=Se,e.wheelEventPixels=tu,e.Doc=Lt,e.splitLines=zt,e.countColumn=Fe,e.findColumn=_e,e.isWordChar=me,e.Pass=qe,e.signal=Ye,e.Line=Hr,e.changeEnd=gr,e.scrollbarModel=sl,e.Pos=B,e.cmpPos=ce,e.modes=Pr,e.mimeModes=Ht,e.resolveMode=Ir,e.getMode=zr,e.modeExtensions=fr,e.extendMode=Br,e.copyState=Gt,e.startState=Rr,e.innerMode=sn,e.commands=En,e.keyMap=nr,e.keyName=Yl,e.isModifierKey=Gl,e.lookupKey=Vr,e.normalizeKeyMap=Su,e.StringStream=Je,e.SharedTextMarker=Fn,e.TextMarker=mr,e.LineWidget=Mn,e.e_preventDefault=pt,e.e_stopPropagation=Er,e.e_stop=ar,e.addClass=j,e.contains=g,e.rmClass=V,e.keyNames=xr}Wu(Ge),ju(Ge);var Qu="iter insert remove copy getEditor constructor".split(" ");for(var gi in Lt.prototype)Lt.prototype.hasOwnProperty(gi)&&ve(Qu,gi)<0&&(Ge.prototype[gi]=(function(e){return function(){return e.apply(this.doc,arguments)}})(Lt.prototype[gi]));return Bt(Lt),Ge.inputStyles={textarea:Ve,contenteditable:je},Ge.defineMode=function(e){!Ge.defaults.mode&&e!="null"&&(Ge.defaults.mode=e),_t.apply(this,arguments)},Ge.defineMIME=kr,Ge.defineMode("null",function(){return{token:function(e){return e.skipToEnd()}}}),Ge.defineMIME("text/plain","null"),Ge.defineExtension=function(e,t){Ge.prototype[e]=t},Ge.defineDocExtension=function(e,t){Lt.prototype[e]=t},Ge.fromTextArea=Xu,Yu(Ge),Ge.version="5.65.18",Ge}))})(vi)),vi.exports}var $u=mt();const hf=Ju($u);var ga={exports:{}},va;function Xa(){return va||(va=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineMode("css",function(J,P){var V=P.inline;P.propertyKeywords||(P=b.resolveMode("text/css"));var F=J.indentUnit,G=P.tokenHooks,c=P.documentTypes||{},T=P.mediaTypes||{},C=P.mediaFeatures||{},g=P.mediaValueKeywords||{},y=P.propertyKeywords||{},j=P.nonStandardPropertyKeywords||{},de=P.fontProperties||{},v=P.counterDescriptors||{},d=P.colorKeywords||{},fe=P.valueKeywords||{},Te=P.allowNested,le=P.lineComment,xe=P.supportsAtComponent===!0,Me=J.highlightNonStandardPropertyKeywords!==!1,Fe,Ce;function ve(E,ee){return Fe=ee,E}function Oe(E,ee){var K=E.next();if(G[K]){var ze=G[K](E,ee);if(ze!==!1)return ze}if(K=="@")return E.eatWhile(/[\w\\\-]/),ve("def",E.current());if(K=="="||(K=="~"||K=="|")&&E.eat("="))return ve(null,"compare");if(K=='"'||K=="'")return ee.tokenize=qe(K),ee.tokenize(E,ee);if(K=="#")return E.eatWhile(/[\w\\\-]/),ve("atom","hash");if(K=="!")return E.match(/^\s*\w*/),ve("keyword","important");if(/\d/.test(K)||K=="."&&E.eat(/\d/))return E.eatWhile(/[\w.%]/),ve("number","unit");if(K==="-"){if(/[\d.]/.test(E.peek()))return E.eatWhile(/[\w.%]/),ve("number","unit");if(E.match(/^-[\w\\\-]*/))return E.eatWhile(/[\w\\\-]/),E.match(/^\s*:/,!1)?ve("variable-2","variable-definition"):ve("variable-2","variable");if(E.match(/^\w+-/))return ve("meta","meta")}else return/[,+>*\/]/.test(K)?ve(null,"select-op"):K=="."&&E.match(/^-?[_a-z][_a-z0-9-]*/i)?ve("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(K)?ve(null,K):E.match(/^[\w-.]+(?=\()/)?(/^(url(-prefix)?|domain|regexp)$/i.test(E.current())&&(ee.tokenize=$e),ve("variable callee","variable")):/[\w\\\-]/.test(K)?(E.eatWhile(/[\w\\\-]/),ve("property","word")):ve(null,null)}function qe(E){return function(ee,K){for(var ze=!1,me;(me=ee.next())!=null;){if(me==E&&!ze){E==")"&&ee.backUp(1);break}ze=!ze&&me=="\\"}return(me==E||!ze&&E!=")")&&(K.tokenize=null),ve("string","string")}}function $e(E,ee){return E.next(),E.match(/^\s*[\"\')]/,!1)?ee.tokenize=null:ee.tokenize=qe(")"),ve(null,"(")}function dt(E,ee,K){this.type=E,this.indent=ee,this.prev=K}function Pe(E,ee,K,ze){return E.context=new dt(K,ee.indentation()+(ze===!1?0:F),E.context),K}function _e(E){return E.context.prev&&(E.context=E.context.prev),E.context.type}function Ue(E,ee,K){return Ie[K.context.type](E,ee,K)}function et(E,ee,K,ze){for(var me=ze||1;me>0;me--)K.context=K.context.prev;return Ue(E,ee,K)}function we(E){var ee=E.current().toLowerCase();fe.hasOwnProperty(ee)?Ce="atom":d.hasOwnProperty(ee)?Ce="keyword":Ce="variable"}var Ie={};return Ie.top=function(E,ee,K){if(E=="{")return Pe(K,ee,"block");if(E=="}"&&K.context.prev)return _e(K);if(xe&&/@component/i.test(E))return Pe(K,ee,"atComponentBlock");if(/^@(-moz-)?document$/i.test(E))return Pe(K,ee,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/i.test(E))return Pe(K,ee,"atBlock");if(/^@(font-face|counter-style)/i.test(E))return K.stateArg=E,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/i.test(E))return"keyframes";if(E&&E.charAt(0)=="@")return Pe(K,ee,"at");if(E=="hash")Ce="builtin";else if(E=="word")Ce="tag";else{if(E=="variable-definition")return"maybeprop";if(E=="interpolation")return Pe(K,ee,"interpolation");if(E==":")return"pseudo";if(Te&&E=="(")return Pe(K,ee,"parens")}return K.context.type},Ie.block=function(E,ee,K){if(E=="word"){var ze=ee.current().toLowerCase();return y.hasOwnProperty(ze)?(Ce="property","maybeprop"):j.hasOwnProperty(ze)?(Ce=Me?"string-2":"property","maybeprop"):Te?(Ce=ee.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(Ce+=" error","maybeprop")}else return E=="meta"?"block":!Te&&(E=="hash"||E=="qualifier")?(Ce="error","block"):Ie.top(E,ee,K)},Ie.maybeprop=function(E,ee,K){return E==":"?Pe(K,ee,"prop"):Ue(E,ee,K)},Ie.prop=function(E,ee,K){if(E==";")return _e(K);if(E=="{"&&Te)return Pe(K,ee,"propBlock");if(E=="}"||E=="{")return et(E,ee,K);if(E=="(")return Pe(K,ee,"parens");if(E=="hash"&&!/^#([0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/.test(ee.current()))Ce+=" error";else if(E=="word")we(ee);else if(E=="interpolation")return Pe(K,ee,"interpolation");return"prop"},Ie.propBlock=function(E,ee,K){return E=="}"?_e(K):E=="word"?(Ce="property","maybeprop"):K.context.type},Ie.parens=function(E,ee,K){return E=="{"||E=="}"?et(E,ee,K):E==")"?_e(K):E=="("?Pe(K,ee,"parens"):E=="interpolation"?Pe(K,ee,"interpolation"):(E=="word"&&we(ee),"parens")},Ie.pseudo=function(E,ee,K){return E=="meta"?"pseudo":E=="word"?(Ce="variable-3",K.context.type):Ue(E,ee,K)},Ie.documentTypes=function(E,ee,K){return E=="word"&&c.hasOwnProperty(ee.current())?(Ce="tag",K.context.type):Ie.atBlock(E,ee,K)},Ie.atBlock=function(E,ee,K){if(E=="(")return Pe(K,ee,"atBlock_parens");if(E=="}"||E==";")return et(E,ee,K);if(E=="{")return _e(K)&&Pe(K,ee,Te?"block":"top");if(E=="interpolation")return Pe(K,ee,"interpolation");if(E=="word"){var ze=ee.current().toLowerCase();ze=="only"||ze=="not"||ze=="and"||ze=="or"?Ce="keyword":T.hasOwnProperty(ze)?Ce="attribute":C.hasOwnProperty(ze)?Ce="property":g.hasOwnProperty(ze)?Ce="keyword":y.hasOwnProperty(ze)?Ce="property":j.hasOwnProperty(ze)?Ce=Me?"string-2":"property":fe.hasOwnProperty(ze)?Ce="atom":d.hasOwnProperty(ze)?Ce="keyword":Ce="error"}return K.context.type},Ie.atComponentBlock=function(E,ee,K){return E=="}"?et(E,ee,K):E=="{"?_e(K)&&Pe(K,ee,Te?"block":"top",!1):(E=="word"&&(Ce="error"),K.context.type)},Ie.atBlock_parens=function(E,ee,K){return E==")"?_e(K):E=="{"||E=="}"?et(E,ee,K,2):Ie.atBlock(E,ee,K)},Ie.restricted_atBlock_before=function(E,ee,K){return E=="{"?Pe(K,ee,"restricted_atBlock"):E=="word"&&K.stateArg=="@counter-style"?(Ce="variable","restricted_atBlock_before"):Ue(E,ee,K)},Ie.restricted_atBlock=function(E,ee,K){return E=="}"?(K.stateArg=null,_e(K)):E=="word"?(K.stateArg=="@font-face"&&!de.hasOwnProperty(ee.current().toLowerCase())||K.stateArg=="@counter-style"&&!v.hasOwnProperty(ee.current().toLowerCase())?Ce="error":Ce="property","maybeprop"):"restricted_atBlock"},Ie.keyframes=function(E,ee,K){return E=="word"?(Ce="variable","keyframes"):E=="{"?Pe(K,ee,"top"):Ue(E,ee,K)},Ie.at=function(E,ee,K){return E==";"?_e(K):E=="{"||E=="}"?et(E,ee,K):(E=="word"?Ce="tag":E=="hash"&&(Ce="builtin"),"at")},Ie.interpolation=function(E,ee,K){return E=="}"?_e(K):E=="{"||E==";"?et(E,ee,K):(E=="word"?Ce="variable":E!="variable"&&E!="("&&E!=")"&&(Ce="error"),"interpolation")},{startState:function(E){return{tokenize:null,state:V?"block":"top",stateArg:null,context:new dt(V?"block":"top",E||0,null)}},token:function(E,ee){if(!ee.tokenize&&E.eatSpace())return null;var K=(ee.tokenize||Oe)(E,ee);return K&&typeof K=="object"&&(Fe=K[1],K=K[0]),Ce=K,Fe!="comment"&&(ee.state=Ie[ee.state](Fe,E,ee)),Ce},indent:function(E,ee){var K=E.context,ze=ee&&ee.charAt(0),me=K.indent;return K.type=="prop"&&(ze=="}"||ze==")")&&(K=K.prev),K.prev&&(ze=="}"&&(K.type=="block"||K.type=="top"||K.type=="interpolation"||K.type=="restricted_atBlock")?(K=K.prev,me=K.indent):(ze==")"&&(K.type=="parens"||K.type=="atBlock_parens")||ze=="{"&&(K.type=="at"||K.type=="atBlock"))&&(me=Math.max(0,K.indent-F))),me},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:le,fold:"brace"}});function pe(J){for(var P={},V=0;V<J.length;++V)P[J[V].toLowerCase()]=!0;return P}var _=["domain","regexp","url","url-prefix"],te=pe(_),oe=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],Q=pe(oe),k=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid","orientation","device-pixel-ratio","min-device-pixel-ratio","max-device-pixel-ratio","pointer","any-pointer","hover","any-hover","prefers-color-scheme","dynamic-range","video-dynamic-range"],I=pe(k),Y=["landscape","portrait","none","coarse","fine","on-demand","hover","interlace","progressive","dark","light","standard","high"],ne=pe(Y),S=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","all","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","binding","bleed","block-size","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-content","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-gap","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-gap","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","inset","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","left","letter-spacing","line-break","line-height","line-height-step","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","place-content","place-items","place-self","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotate","rotation","rotation-point","row-gap","ruby-align","ruby-overhang","ruby-position","ruby-span","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-type","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-orientation","text-outline","text-overflow","text-rendering","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","touch-action","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-select","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","paint-order","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],R=pe(S),A=["accent-color","aspect-ratio","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","content-visibility","margin-block","margin-block-end","margin-block-start","margin-inline","margin-inline-end","margin-inline-start","overflow-anchor","overscroll-behavior","padding-block","padding-block-end","padding-block-start","padding-inline","padding-inline-end","padding-inline-start","scroll-snap-stop","scrollbar-3d-light-color","scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-track-color","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","shape-inside","zoom"],$=pe(A),ue=["font-display","font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],O=pe(ue),w=["additive-symbols","fallback","negative","pad","prefix","range","speak-as","suffix","symbols","system"],M=pe(w),N=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],z=pe(N),X=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","blur","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","brightness","bullets","button","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","conic-gradient","contain","content","contents","content-box","context-menu","continuous","contrast","copy","counter","counters","cover","crop","cross","crosshair","cubic-bezier","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","devanagari","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","drop-shadow","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","georgian","grayscale","graytext","grid","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hard-light","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","hue","hue-rotate","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","luminosity","malayalam","manipulation","match","matrix","matrix3d","media-play-button","media-slider","media-sliderthumb","media-volume-slider","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","multiple_mask_images","multiply","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","opacity","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeating-conic-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturate","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","self-start","self-end","semi-condensed","semi-expanded","separate","sepia","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","somali","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","square-button","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"],q=pe(X),p=_.concat(oe).concat(k).concat(Y).concat(S).concat(A).concat(N).concat(X);b.registerHelper("hintWords","css",p);function W(J,P){for(var V=!1,F;(F=J.next())!=null;){if(V&&F=="/"){P.tokenize=null;break}V=F=="*"}return["comment","comment"]}b.defineMIME("text/css",{documentTypes:te,mediaTypes:Q,mediaFeatures:I,mediaValueKeywords:ne,propertyKeywords:R,nonStandardPropertyKeywords:$,fontProperties:O,counterDescriptors:M,colorKeywords:z,valueKeywords:q,tokenHooks:{"/":function(J,P){return J.eat("*")?(P.tokenize=W,W(J,P)):!1}},name:"css"}),b.defineMIME("text/x-scss",{mediaTypes:Q,mediaFeatures:I,mediaValueKeywords:ne,propertyKeywords:R,nonStandardPropertyKeywords:$,colorKeywords:z,valueKeywords:q,fontProperties:O,allowNested:!0,lineComment:"//",tokenHooks:{"/":function(J,P){return J.eat("/")?(J.skipToEnd(),["comment","comment"]):J.eat("*")?(P.tokenize=W,W(J,P)):["operator","operator"]},":":function(J){return J.match(/^\s*\{/,!1)?[null,null]:!1},$:function(J){return J.match(/^[\w-]+/),J.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"]},"#":function(J){return J.eat("{")?[null,"interpolation"]:!1}},name:"css",helperType:"scss"}),b.defineMIME("text/x-less",{mediaTypes:Q,mediaFeatures:I,mediaValueKeywords:ne,propertyKeywords:R,nonStandardPropertyKeywords:$,colorKeywords:z,valueKeywords:q,fontProperties:O,allowNested:!0,lineComment:"//",tokenHooks:{"/":function(J,P){return J.eat("/")?(J.skipToEnd(),["comment","comment"]):J.eat("*")?(P.tokenize=W,W(J,P)):["operator","operator"]},"@":function(J){return J.eat("{")?[null,"interpolation"]:J.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/i,!1)?!1:(J.eatWhile(/[\w\\\-]/),J.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"])},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"}),b.defineMIME("text/x-gss",{documentTypes:te,mediaTypes:Q,mediaFeatures:I,propertyKeywords:R,nonStandardPropertyKeywords:$,fontProperties:O,counterDescriptors:M,colorKeywords:z,valueKeywords:q,supportsAtComponent:!0,tokenHooks:{"/":function(J,P){return J.eat("*")?(P.tokenize=W,W(J,P)):!1}},name:"css",helperType:"gss"})})})()),ga.exports}Xa();var ma={exports:{}},xa={exports:{}},ya;function Ya(){return ya||(ya=1,(function(ct,xt){(function(b){b(mt())})(function(b){var pe={autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0,caseFold:!0},_={autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1,allowMissingTagName:!1,caseFold:!1};b.defineMode("xml",function(te,oe){var Q=te.indentUnit,k={},I=oe.htmlMode?pe:_;for(var Y in I)k[Y]=I[Y];for(var Y in oe)k[Y]=oe[Y];var ne,S;function R(c,T){function C(j){return T.tokenize=j,j(c,T)}var g=c.next();if(g=="<")return c.eat("!")?c.eat("[")?c.match("CDATA[")?C(ue("atom","]]>")):null:c.match("--")?C(ue("comment","-->")):c.match("DOCTYPE",!0,!0)?(c.eatWhile(/[\w\._\-]/),C(O(1))):null:c.eat("?")?(c.eatWhile(/[\w\._\-]/),T.tokenize=ue("meta","?>"),"meta"):(ne=c.eat("/")?"closeTag":"openTag",T.tokenize=A,"tag bracket");if(g=="&"){var y;return c.eat("#")?c.eat("x")?y=c.eatWhile(/[a-fA-F\d]/)&&c.eat(";"):y=c.eatWhile(/[\d]/)&&c.eat(";"):y=c.eatWhile(/[\w\.\-:]/)&&c.eat(";"),y?"atom":"error"}else return c.eatWhile(/[^&<]/),null}R.isInText=!0;function A(c,T){var C=c.next();if(C==">"||C=="/"&&c.eat(">"))return T.tokenize=R,ne=C==">"?"endTag":"selfcloseTag","tag bracket";if(C=="=")return ne="equals",null;if(C=="<"){T.tokenize=R,T.state=X,T.tagName=T.tagStart=null;var g=T.tokenize(c,T);return g?g+" tag error":"tag error"}else return/[\'\"]/.test(C)?(T.tokenize=$(C),T.stringStartCol=c.column(),T.tokenize(c,T)):(c.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function $(c){var T=function(C,g){for(;!C.eol();)if(C.next()==c){g.tokenize=A;break}return"string"};return T.isInAttribute=!0,T}function ue(c,T){return function(C,g){for(;!C.eol();){if(C.match(T)){g.tokenize=R;break}C.next()}return c}}function O(c){return function(T,C){for(var g;(g=T.next())!=null;){if(g=="<")return C.tokenize=O(c+1),C.tokenize(T,C);if(g==">")if(c==1){C.tokenize=R;break}else return C.tokenize=O(c-1),C.tokenize(T,C)}return"meta"}}function w(c){return c&&c.toLowerCase()}function M(c,T,C){this.prev=c.context,this.tagName=T||"",this.indent=c.indented,this.startOfLine=C,(k.doNotIndent.hasOwnProperty(T)||c.context&&c.context.noIndent)&&(this.noIndent=!0)}function N(c){c.context&&(c.context=c.context.prev)}function z(c,T){for(var C;;){if(!c.context||(C=c.context.tagName,!k.contextGrabbers.hasOwnProperty(w(C))||!k.contextGrabbers[w(C)].hasOwnProperty(w(T))))return;N(c)}}function X(c,T,C){return c=="openTag"?(C.tagStart=T.column(),q):c=="closeTag"?p:X}function q(c,T,C){return c=="word"?(C.tagName=T.current(),S="tag",P):k.allowMissingTagName&&c=="endTag"?(S="tag bracket",P(c,T,C)):(S="error",q)}function p(c,T,C){if(c=="word"){var g=T.current();return C.context&&C.context.tagName!=g&&k.implicitlyClosed.hasOwnProperty(w(C.context.tagName))&&N(C),C.context&&C.context.tagName==g||k.matchClosing===!1?(S="tag",W):(S="tag error",J)}else return k.allowMissingTagName&&c=="endTag"?(S="tag bracket",W(c,T,C)):(S="error",J)}function W(c,T,C){return c!="endTag"?(S="error",W):(N(C),X)}function J(c,T,C){return S="error",W(c,T,C)}function P(c,T,C){if(c=="word")return S="attribute",V;if(c=="endTag"||c=="selfcloseTag"){var g=C.tagName,y=C.tagStart;return C.tagName=C.tagStart=null,c=="selfcloseTag"||k.autoSelfClosers.hasOwnProperty(w(g))?z(C,g):(z(C,g),C.context=new M(C,g,y==C.indented)),X}return S="error",P}function V(c,T,C){return c=="equals"?F:(k.allowMissing||(S="error"),P(c,T,C))}function F(c,T,C){return c=="string"?G:c=="word"&&k.allowUnquoted?(S="string",P):(S="error",P(c,T,C))}function G(c,T,C){return c=="string"?G:P(c,T,C)}return{startState:function(c){var T={tokenize:R,state:X,indented:c||0,tagName:null,tagStart:null,context:null};return c!=null&&(T.baseIndent=c),T},token:function(c,T){if(!T.tagName&&c.sol()&&(T.indented=c.indentation()),c.eatSpace())return null;ne=null;var C=T.tokenize(c,T);return(C||ne)&&C!="comment"&&(S=null,T.state=T.state(ne||C,c,T),S&&(C=S=="error"?C+" error":S)),C},indent:function(c,T,C){var g=c.context;if(c.tokenize.isInAttribute)return c.tagStart==c.indented?c.stringStartCol+1:c.indented+Q;if(g&&g.noIndent)return b.Pass;if(c.tokenize!=A&&c.tokenize!=R)return C?C.match(/^(\s*)/)[0].length:0;if(c.tagName)return k.multilineTagIndentPastTag!==!1?c.tagStart+c.tagName.length+2:c.tagStart+Q*(k.multilineTagIndentFactor||1);if(k.alignCDATA&&/<!\[CDATA\[/.test(T))return 0;var y=T&&/^<(\/)?([\w_:\.-]*)/.exec(T);if(y&&y[1])for(;g;)if(g.tagName==y[2]){g=g.prev;break}else if(k.implicitlyClosed.hasOwnProperty(w(g.tagName)))g=g.prev;else break;else if(y)for(;g;){var j=k.contextGrabbers[w(g.tagName)];if(j&&j.hasOwnProperty(w(y[2])))g=g.prev;else break}for(;g&&g.prev&&!g.startOfLine;)g=g.prev;return g?g.indent+Q:c.baseIndent||0},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml",skipAttribute:function(c){c.state==F&&(c.state=P)},xmlCurrentTag:function(c){return c.tagName?{name:c.tagName,close:c.type=="closeTag"}:null},xmlCurrentContext:function(c){for(var T=[],C=c.context;C;C=C.prev)T.push(C.tagName);return T.reverse()}}}),b.defineMIME("text/xml","xml"),b.defineMIME("application/xml","xml"),b.mimeModes.hasOwnProperty("text/html")||b.defineMIME("text/html",{name:"xml",htmlMode:!0})})})()),xa.exports}var ba={exports:{}},ka;function Qa(){return ka||(ka=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineMode("javascript",function(pe,_){var te=pe.indentUnit,oe=_.statementIndent,Q=_.jsonld,k=_.json||Q,I=_.trackScope!==!1,Y=_.typescript,ne=_.wordCharacters||/[\w$\xa1-\uffff]/,S=(function(){function f(it){return{type:it,style:"keyword"}}var m=f("keyword a"),U=f("keyword b"),re=f("keyword c"),B=f("keyword d"),ce=f("operator"),We={type:"atom",style:"atom"};return{if:f("if"),while:m,with:m,else:U,do:U,try:U,finally:U,return:B,break:B,continue:B,new:f("new"),delete:re,void:re,throw:re,debugger:f("debugger"),var:f("var"),const:f("var"),let:f("var"),function:f("function"),catch:f("catch"),for:f("for"),switch:f("switch"),case:f("case"),default:f("default"),in:ce,typeof:ce,instanceof:ce,true:We,false:We,null:We,undefined:We,NaN:We,Infinity:We,this:f("this"),class:f("class"),super:f("atom"),yield:re,export:f("export"),import:f("import"),extends:re,await:re}})(),R=/[+\-*&%=<>!?|~^@]/,A=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function $(f){for(var m=!1,U,re=!1;(U=f.next())!=null;){if(!m){if(U=="/"&&!re)return;U=="["?re=!0:re&&U=="]"&&(re=!1)}m=!m&&U=="\\"}}var ue,O;function w(f,m,U){return ue=f,O=U,m}function M(f,m){var U=f.next();if(U=='"'||U=="'")return m.tokenize=N(U),m.tokenize(f,m);if(U=="."&&f.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return w("number","number");if(U=="."&&f.match(".."))return w("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(U))return w(U);if(U=="="&&f.eat(">"))return w("=>","operator");if(U=="0"&&f.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return w("number","number");if(/\d/.test(U))return f.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),w("number","number");if(U=="/")return f.eat("*")?(m.tokenize=z,z(f,m)):f.eat("/")?(f.skipToEnd(),w("comment","comment")):Et(f,m,1)?($(f),f.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),w("regexp","string-2")):(f.eat("="),w("operator","operator",f.current()));if(U=="`")return m.tokenize=X,X(f,m);if(U=="#"&&f.peek()=="!")return f.skipToEnd(),w("meta","meta");if(U=="#"&&f.eatWhile(ne))return w("variable","property");if(U=="<"&&f.match("!--")||U=="-"&&f.match("->")&&!/\S/.test(f.string.slice(0,f.start)))return f.skipToEnd(),w("comment","comment");if(R.test(U))return(U!=">"||!m.lexical||m.lexical.type!=">")&&(f.eat("=")?(U=="!"||U=="=")&&f.eat("="):/[<>*+\-|&?]/.test(U)&&(f.eat(U),U==">"&&f.eat(U))),U=="?"&&f.eat(".")?w("."):w("operator","operator",f.current());if(ne.test(U)){f.eatWhile(ne);var re=f.current();if(m.lastType!="."){if(S.propertyIsEnumerable(re)){var B=S[re];return w(B.type,B.style,re)}if(re=="async"&&f.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return w("async","keyword",re)}return w("variable","variable",re)}}function N(f){return function(m,U){var re=!1,B;if(Q&&m.peek()=="@"&&m.match(A))return U.tokenize=M,w("jsonld-keyword","meta");for(;(B=m.next())!=null&&!(B==f&&!re);)re=!re&&B=="\\";return re||(U.tokenize=M),w("string","string")}}function z(f,m){for(var U=!1,re;re=f.next();){if(re=="/"&&U){m.tokenize=M;break}U=re=="*"}return w("comment","comment")}function X(f,m){for(var U=!1,re;(re=f.next())!=null;){if(!U&&(re=="`"||re=="$"&&f.eat("{"))){m.tokenize=M;break}U=!U&&re=="\\"}return w("quasi","string-2",f.current())}var q="([{}])";function p(f,m){m.fatArrowAt&&(m.fatArrowAt=null);var U=f.string.indexOf("=>",f.start);if(!(U<0)){if(Y){var re=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(f.string.slice(f.start,U));re&&(U=re.index)}for(var B=0,ce=!1,We=U-1;We>=0;--We){var it=f.string.charAt(We),wt=q.indexOf(it);if(wt>=0&&wt<3){if(!B){++We;break}if(--B==0){it=="("&&(ce=!0);break}}else if(wt>=3&&wt<6)++B;else if(ne.test(it))ce=!0;else if(/["'\/`]/.test(it))for(;;--We){if(We==0)return;var Wr=f.string.charAt(We-1);if(Wr==it&&f.string.charAt(We-2)!="\\"){We--;break}}else if(ce&&!B){++We;break}}ce&&!B&&(m.fatArrowAt=We)}}var W={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function J(f,m,U,re,B,ce){this.indented=f,this.column=m,this.type=U,this.prev=B,this.info=ce,re!=null&&(this.align=re)}function P(f,m){if(!I)return!1;for(var U=f.localVars;U;U=U.next)if(U.name==m)return!0;for(var re=f.context;re;re=re.prev)for(var U=re.vars;U;U=U.next)if(U.name==m)return!0}function V(f,m,U,re,B){var ce=f.cc;for(F.state=f,F.stream=B,F.marked=null,F.cc=ce,F.style=m,f.lexical.hasOwnProperty("align")||(f.lexical.align=!0);;){var We=ce.length?ce.pop():k?ve:Fe;if(We(U,re)){for(;ce.length&&ce[ce.length-1].lex;)ce.pop()();return F.marked?F.marked:U=="variable"&&P(f,re)?"variable-2":m}}}var F={state:null,marked:null,cc:null};function G(){for(var f=arguments.length-1;f>=0;f--)F.cc.push(arguments[f])}function c(){return G.apply(null,arguments),!0}function T(f,m){for(var U=m;U;U=U.next)if(U.name==f)return!0;return!1}function C(f){var m=F.state;if(F.marked="def",!!I){if(m.context){if(m.lexical.info=="var"&&m.context&&m.context.block){var U=g(f,m.context);if(U!=null){m.context=U;return}}else if(!T(f,m.localVars)){m.localVars=new de(f,m.localVars);return}}_.globalVars&&!T(f,m.globalVars)&&(m.globalVars=new de(f,m.globalVars))}}function g(f,m){if(m)if(m.block){var U=g(f,m.prev);return U?U==m.prev?m:new j(U,m.vars,!0):null}else return T(f,m.vars)?m:new j(m.prev,new de(f,m.vars),!1);else return null}function y(f){return f=="public"||f=="private"||f=="protected"||f=="abstract"||f=="readonly"}function j(f,m,U){this.prev=f,this.vars=m,this.block=U}function de(f,m){this.name=f,this.next=m}var v=new de("this",new de("arguments",null));function d(){F.state.context=new j(F.state.context,F.state.localVars,!1),F.state.localVars=v}function fe(){F.state.context=new j(F.state.context,F.state.localVars,!0),F.state.localVars=null}d.lex=fe.lex=!0;function Te(){F.state.localVars=F.state.context.vars,F.state.context=F.state.context.prev}Te.lex=!0;function le(f,m){var U=function(){var re=F.state,B=re.indented;if(re.lexical.type=="stat")B=re.lexical.indented;else for(var ce=re.lexical;ce&&ce.type==")"&&ce.align;ce=ce.prev)B=ce.indented;re.lexical=new J(B,F.stream.column(),f,null,re.lexical,m)};return U.lex=!0,U}function xe(){var f=F.state;f.lexical.prev&&(f.lexical.type==")"&&(f.indented=f.lexical.indented),f.lexical=f.lexical.prev)}xe.lex=!0;function Me(f){function m(U){return U==f?c():f==";"||U=="}"||U==")"||U=="]"?G():c(m)}return m}function Fe(f,m){return f=="var"?c(le("vardef",m),Er,Me(";"),xe):f=="keyword a"?c(le("form"),qe,Fe,xe):f=="keyword b"?c(le("form"),Fe,xe):f=="keyword d"?F.stream.match(/^\s*$/,!1)?c():c(le("stat"),dt,Me(";"),xe):f=="debugger"?c(Me(";")):f=="{"?c(le("}"),fe,Pt,xe,Te):f==";"?c():f=="if"?(F.state.lexical.info=="else"&&F.state.cc[F.state.cc.length-1]==xe&&F.state.cc.pop()(),c(le("form"),qe,Fe,xe,Or)):f=="function"?c(zt):f=="for"?c(le("form"),fe,Rn,Fe,Te,xe):f=="class"||Y&&m=="interface"?(F.marked="keyword",c(le("form",f=="class"?f:m),Pr,xe)):f=="variable"?Y&&m=="declare"?(F.marked="keyword",c(Fe)):Y&&(m=="module"||m=="enum"||m=="type")&&F.stream.match(/^\s*\w/,!1)?(F.marked="keyword",m=="enum"?c(ye):m=="type"?c(Wn,Me("operator"),Re,Me(";")):c(le("form"),kt,Me("{"),le("}"),Pt,xe,xe)):Y&&m=="namespace"?(F.marked="keyword",c(le("form"),ve,Fe,xe)):Y&&m=="abstract"?(F.marked="keyword",c(Fe)):c(le("stat"),ze):f=="switch"?c(le("form"),qe,Me("{"),le("}","switch"),fe,Pt,xe,xe,Te):f=="case"?c(ve,Me(":")):f=="default"?c(Me(":")):f=="catch"?c(le("form"),d,Ce,Fe,xe,Te):f=="export"?c(le("stat"),Ir,xe):f=="import"?c(le("stat"),fr,xe):f=="async"?c(Fe):m=="@"?c(ve,Fe):G(le("stat"),ve,Me(";"),xe)}function Ce(f){if(f=="(")return c(Wt,Me(")"))}function ve(f,m){return $e(f,m,!1)}function Oe(f,m){return $e(f,m,!0)}function qe(f){return f!="("?G():c(le(")"),dt,Me(")"),xe)}function $e(f,m,U){if(F.state.fatArrowAt==F.stream.start){var re=U?Ie:we;if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,Me("=>"),re,Te);if(f=="variable")return G(d,kt,Me("=>"),re,Te)}var B=U?_e:Pe;return W.hasOwnProperty(f)?c(B):f=="function"?c(zt,B):f=="class"||Y&&m=="interface"?(F.marked="keyword",c(le("form"),yi,xe)):f=="keyword c"||f=="async"?c(U?Oe:ve):f=="("?c(le(")"),dt,Me(")"),xe,B):f=="operator"||f=="spread"?c(U?Oe:ve):f=="["?c(le("]"),Je,xe,B):f=="{"?Mt(De,"}",null,B):f=="quasi"?G(Ue,B):f=="new"?c(E(U)):c()}function dt(f){return f.match(/[;\}\)\],]/)?G():G(ve)}function Pe(f,m){return f==","?c(dt):_e(f,m,!1)}function _e(f,m,U){var re=U==!1?Pe:_e,B=U==!1?ve:Oe;if(f=="=>")return c(d,U?Ie:we,Te);if(f=="operator")return/\+\+|--/.test(m)||Y&&m=="!"?c(re):Y&&m=="<"&&F.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?c(le(">"),Ne(Re,">"),xe,re):m=="?"?c(ve,Me(":"),B):c(B);if(f=="quasi")return G(Ue,re);if(f!=";"){if(f=="(")return Mt(Oe,")","call",re);if(f==".")return c(me,re);if(f=="[")return c(le("]"),dt,Me("]"),xe,re);if(Y&&m=="as")return F.marked="keyword",c(Re,re);if(f=="regexp")return F.state.lastType=F.marked="operator",F.stream.backUp(F.stream.pos-F.stream.start-1),c(B)}}function Ue(f,m){return f!="quasi"?G():m.slice(m.length-2)!="${"?c(Ue):c(dt,et)}function et(f){if(f=="}")return F.marked="string-2",F.state.tokenize=X,c(Ue)}function we(f){return p(F.stream,F.state),G(f=="{"?Fe:ve)}function Ie(f){return p(F.stream,F.state),G(f=="{"?Fe:Oe)}function E(f){return function(m){return m=="."?c(f?K:ee):m=="variable"&&Y?c(Ft,f?_e:Pe):G(f?Oe:ve)}}function ee(f,m){if(m=="target")return F.marked="keyword",c(Pe)}function K(f,m){if(m=="target")return F.marked="keyword",c(_e)}function ze(f){return f==":"?c(xe,Fe):G(Pe,Me(";"),xe)}function me(f){if(f=="variable")return F.marked="property",c()}function De(f,m){if(f=="async")return F.marked="property",c(De);if(f=="variable"||F.style=="keyword"){if(F.marked="property",m=="get"||m=="set")return c(be);var U;return Y&&F.state.fatArrowAt==F.stream.start&&(U=F.stream.match(/^\s*:\s*/,!1))&&(F.state.fatArrowAt=F.stream.pos+U[0].length),c(Be)}else{if(f=="number"||f=="string")return F.marked=Q?"property":F.style+" property",c(Be);if(f=="jsonld-keyword")return c(Be);if(Y&&y(m))return F.marked="keyword",c(De);if(f=="[")return c(ve,or,Me("]"),Be);if(f=="spread")return c(Oe,Be);if(m=="*")return F.marked="keyword",c(De);if(f==":")return G(Be)}}function be(f){return f!="variable"?G(Be):(F.marked="property",c(zt))}function Be(f){if(f==":")return c(Oe);if(f=="(")return G(zt)}function Ne(f,m,U){function re(B,ce){if(U?U.indexOf(B)>-1:B==","){var We=F.state.lexical;return We.info=="call"&&(We.pos=(We.pos||0)+1),c(function(it,wt){return it==m||wt==m?G():G(f)},re)}return B==m||ce==m?c():U&&U.indexOf(";")>-1?G(f):c(Me(m))}return function(B,ce){return B==m||ce==m?c():G(f,re)}}function Mt(f,m,U){for(var re=3;re<arguments.length;re++)F.cc.push(arguments[re]);return c(le(m,U),Ne(f,m),xe)}function Pt(f){return f=="}"?c():G(Fe,Pt)}function or(f,m){if(Y){if(f==":")return c(Re);if(m=="?")return c(or)}}function br(f,m){if(Y&&(f==":"||m=="in"))return c(Re)}function lr(f){if(Y&&f==":")return F.stream.match(/^\s*\w+\s+is\b/,!1)?c(ve,mi,Re):c(Re)}function mi(f,m){if(m=="is")return F.marked="keyword",c()}function Re(f,m){if(m=="keyof"||m=="typeof"||m=="infer"||m=="readonly")return F.marked="keyword",c(m=="typeof"?Oe:Re);if(f=="variable"||m=="void")return F.marked="type",c(It);if(m=="|"||m=="&")return c(Re);if(f=="string"||f=="number"||f=="atom")return c(It);if(f=="[")return c(le("]"),Ne(Re,"]",","),xe,It);if(f=="{")return c(le("}"),Se,xe,It);if(f=="(")return c(Ne(Qe,")"),Bn,It);if(f=="<")return c(Ne(Re,">"),Re);if(f=="quasi")return G(ht,It)}function Bn(f){if(f=="=>")return c(Re)}function Se(f){return f.match(/[\}\)\]]/)?c():f==","||f==";"?c(Se):G(Zt,Se)}function Zt(f,m){if(f=="variable"||F.style=="keyword")return F.marked="property",c(Zt);if(m=="?"||f=="number"||f=="string")return c(Zt);if(f==":")return c(Re);if(f=="[")return c(Me("variable"),br,Me("]"),Zt);if(f=="(")return G(ur,Zt);if(!f.match(/[;\}\)\],]/))return c()}function ht(f,m){return f!="quasi"?G():m.slice(m.length-2)!="${"?c(ht):c(Re,Ye)}function Ye(f){if(f=="}")return F.marked="string-2",F.state.tokenize=X,c(ht)}function Qe(f,m){return f=="variable"&&F.stream.match(/^\s*[?:]/,!1)||m=="?"?c(Qe):f==":"?c(Re):f=="spread"?c(Qe):G(Re)}function It(f,m){if(m=="<")return c(le(">"),Ne(Re,">"),xe,It);if(m=="|"||f=="."||m=="&")return c(Re);if(f=="[")return c(Re,Me("]"),It);if(m=="extends"||m=="implements")return F.marked="keyword",c(Re);if(m=="?")return c(Re,Me(":"),Re)}function Ft(f,m){if(m=="<")return c(le(">"),Ne(Re,">"),xe,It)}function Bt(){return G(Re,pt)}function pt(f,m){if(m=="=")return c(Re)}function Er(f,m){return m=="enum"?(F.marked="keyword",c(ye)):G(kt,or,Rt,xi)}function kt(f,m){if(Y&&y(m))return F.marked="keyword",c(kt);if(f=="variable")return C(m),c();if(f=="spread")return c(kt);if(f=="[")return Mt(ln,"]");if(f=="{")return Mt(ar,"}")}function ar(f,m){return f=="variable"&&!F.stream.match(/^\s*:/,!1)?(C(m),c(Rt)):(f=="variable"&&(F.marked="property"),f=="spread"?c(kt):f=="}"?G():f=="["?c(ve,Me("]"),Me(":"),ar):c(Me(":"),kt,Rt))}function ln(){return G(kt,Rt)}function Rt(f,m){if(m=="=")return c(Oe)}function xi(f){if(f==",")return c(Er)}function Or(f,m){if(f=="keyword b"&&m=="else")return c(le("form","else"),Fe,xe)}function Rn(f,m){if(m=="await")return c(Rn);if(f=="(")return c(le(")"),an,xe)}function an(f){return f=="var"?c(Er,sr):f=="variable"?c(sr):G(sr)}function sr(f,m){return f==")"?c():f==";"?c(sr):m=="in"||m=="of"?(F.marked="keyword",c(ve,sr)):G(ve,sr)}function zt(f,m){if(m=="*")return F.marked="keyword",c(zt);if(f=="variable")return C(m),c(zt);if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,lr,Fe,Te);if(Y&&m=="<")return c(le(">"),Ne(Bt,">"),xe,zt)}function ur(f,m){if(m=="*")return F.marked="keyword",c(ur);if(f=="variable")return C(m),c(ur);if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,lr,Te);if(Y&&m=="<")return c(le(">"),Ne(Bt,">"),xe,ur)}function Wn(f,m){if(f=="keyword"||f=="variable")return F.marked="type",c(Wn);if(m=="<")return c(le(">"),Ne(Bt,">"),xe)}function Wt(f,m){return m=="@"&&c(ve,Wt),f=="spread"?c(Wt):Y&&y(m)?(F.marked="keyword",c(Wt)):Y&&f=="this"?c(or,Rt):G(kt,or,Rt)}function yi(f,m){return f=="variable"?Pr(f,m):Ht(f,m)}function Pr(f,m){if(f=="variable")return C(m),c(Ht)}function Ht(f,m){if(m=="<")return c(le(">"),Ne(Bt,">"),xe,Ht);if(m=="extends"||m=="implements"||Y&&f==",")return m=="implements"&&(F.marked="keyword"),c(Y?Re:ve,Ht);if(f=="{")return c(le("}"),_t,xe)}function _t(f,m){if(f=="async"||f=="variable"&&(m=="static"||m=="get"||m=="set"||Y&&y(m))&&F.stream.match(/^\s+#?[\w$\xa1-\uffff]/,!1))return F.marked="keyword",c(_t);if(f=="variable"||F.style=="keyword")return F.marked="property",c(kr,_t);if(f=="number"||f=="string")return c(kr,_t);if(f=="[")return c(ve,or,Me("]"),kr,_t);if(m=="*")return F.marked="keyword",c(_t);if(Y&&f=="(")return G(ur,_t);if(f==";"||f==",")return c(_t);if(f=="}")return c();if(m=="@")return c(ve,_t)}function kr(f,m){if(m=="!"||m=="?")return c(kr);if(f==":")return c(Re,Rt);if(m=="=")return c(Oe);var U=F.state.lexical.prev,re=U&&U.info=="interface";return G(re?ur:zt)}function Ir(f,m){return m=="*"?(F.marked="keyword",c(Rr,Me(";"))):m=="default"?(F.marked="keyword",c(ve,Me(";"))):f=="{"?c(Ne(zr,"}"),Rr,Me(";")):G(Fe)}function zr(f,m){if(m=="as")return F.marked="keyword",c(Me("variable"));if(f=="variable")return G(Oe,zr)}function fr(f){return f=="string"?c():f=="("?G(ve):f=="."?G(Pe):G(Br,Gt,Rr)}function Br(f,m){return f=="{"?Mt(Br,"}"):(f=="variable"&&C(m),m=="*"&&(F.marked="keyword"),c(sn))}function Gt(f){if(f==",")return c(Br,Gt)}function sn(f,m){if(m=="as")return F.marked="keyword",c(Br)}function Rr(f,m){if(m=="from")return F.marked="keyword",c(ve)}function Je(f){return f=="]"?c():G(Ne(Oe,"]"))}function ye(){return G(le("form"),kt,Me("{"),le("}"),Ne($t,"}"),xe,xe)}function $t(){return G(kt,Rt)}function un(f,m){return f.lastType=="operator"||f.lastType==","||R.test(m.charAt(0))||/[,.]/.test(m.charAt(0))}function Et(f,m,U){return m.tokenize==M&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(m.lastType)||m.lastType=="quasi"&&/\{\s*$/.test(f.string.slice(0,f.pos-(U||0)))}return{startState:function(f){var m={tokenize:M,lastType:"sof",cc:[],lexical:new J((f||0)-te,0,"block",!1),localVars:_.localVars,context:_.localVars&&new j(null,null,!1),indented:f||0};return _.globalVars&&typeof _.globalVars=="object"&&(m.globalVars=_.globalVars),m},token:function(f,m){if(f.sol()&&(m.lexical.hasOwnProperty("align")||(m.lexical.align=!1),m.indented=f.indentation(),p(f,m)),m.tokenize!=z&&f.eatSpace())return null;var U=m.tokenize(f,m);return ue=="comment"?U:(m.lastType=ue=="operator"&&(O=="++"||O=="--")?"incdec":ue,V(m,U,ue,O,f))},indent:function(f,m){if(f.tokenize==z||f.tokenize==X)return b.Pass;if(f.tokenize!=M)return 0;var U=m&&m.charAt(0),re=f.lexical,B;if(!/^\s*else\b/.test(m))for(var ce=f.cc.length-1;ce>=0;--ce){var We=f.cc[ce];if(We==xe)re=re.prev;else if(We!=Or&&We!=Te)break}for(;(re.type=="stat"||re.type=="form")&&(U=="}"||(B=f.cc[f.cc.length-1])&&(B==Pe||B==_e)&&!/^[,\.=+\-*:?[\(]/.test(m));)re=re.prev;oe&&re.type==")"&&re.prev.type=="stat"&&(re=re.prev);var it=re.type,wt=U==it;return it=="vardef"?re.indented+(f.lastType=="operator"||f.lastType==","?re.info.length+1:0):it=="form"&&U=="{"?re.indented:it=="form"?re.indented+te:it=="stat"?re.indented+(un(f,m)?oe||te:0):re.info=="switch"&&!wt&&_.doubleIndentSwitch!=!1?re.indented+(/^(?:case|default)\b/.test(m)?te:2*te):re.align?re.column+(wt?0:1):re.indented+(wt?0:te)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:k?null:"/*",blockCommentEnd:k?null:"*/",blockCommentContinue:k?null:" * ",lineComment:k?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:k?"json":"javascript",jsonldMode:Q,jsonMode:k,expressionAllowed:Et,skipExpression:function(f){V(f,"atom","atom","true",new b.StringStream("",2,null))}}}),b.registerHelper("wordChars","javascript",/[\w$]/),b.defineMIME("text/javascript","javascript"),b.defineMIME("text/ecmascript","javascript"),b.defineMIME("application/javascript","javascript"),b.defineMIME("application/x-javascript","javascript"),b.defineMIME("application/ecmascript","javascript"),b.defineMIME("application/json",{name:"javascript",json:!0}),b.defineMIME("application/x-json",{name:"javascript",json:!0}),b.defineMIME("application/manifest+json",{name:"javascript",json:!0}),b.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),b.defineMIME("text/typescript",{name:"javascript",typescript:!0}),b.defineMIME("application/typescript",{name:"javascript",typescript:!0})})})()),ba.exports}var wa;function Vu(){return wa||(wa=1,(function(ct,xt){(function(b){b(mt(),Ya(),Qa(),Xa())})(function(b){var pe={script:[["lang",/(javascript|babel)/i,"javascript"],["type",/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i,"javascript"],["type",/./,"text/plain"],[null,null,"javascript"]],style:[["lang",/^css$/i,"css"],["type",/^(text\/)?(x-)?(stylesheet|css)$/i,"css"],["type",/./,"text/plain"],[null,null,"css"]]};function _(ne,S,R){var A=ne.current(),$=A.search(S);return $>-1?ne.backUp(A.length-$):A.match(/<\/?$/)&&(ne.backUp(A.length),ne.match(S,!1)||ne.match(A)),R}var te={};function oe(ne){var S=te[ne];return S||(te[ne]=new RegExp("\\s+"+ne+`\\s*=\\s*('|")?([^'"]+)('|")?\\s*`))}function Q(ne,S){var R=ne.match(oe(S));return R?/^\s*(.*?)\s*$/.exec(R[2])[1]:""}function k(ne,S){return new RegExp((S?"^":"")+"</\\s*"+ne+"\\s*>","i")}function I(ne,S){for(var R in ne)for(var A=S[R]||(S[R]=[]),$=ne[R],ue=$.length-1;ue>=0;ue--)A.unshift($[ue])}function Y(ne,S){for(var R=0;R<ne.length;R++){var A=ne[R];if(!A[0]||A[1].test(Q(S,A[0])))return A[2]}}b.defineMode("htmlmixed",function(ne,S){var R=b.getMode(ne,{name:"xml",htmlMode:!0,multilineTagIndentFactor:S.multilineTagIndentFactor,multilineTagIndentPastTag:S.multilineTagIndentPastTag,allowMissingTagName:S.allowMissingTagName}),A={},$=S&&S.tags,ue=S&&S.scriptTypes;if(I(pe,A),$&&I($,A),ue)for(var O=ue.length-1;O>=0;O--)A.script.unshift(["type",ue[O].matches,ue[O].mode]);function w(M,N){var z=R.token(M,N.htmlState),X=/\btag\b/.test(z),q;if(X&&!/[<>\s\/]/.test(M.current())&&(q=N.htmlState.tagName&&N.htmlState.tagName.toLowerCase())&&A.hasOwnProperty(q))N.inTag=q+" ";else if(N.inTag&&X&&/>$/.test(M.current())){var p=/^([\S]+) (.*)/.exec(N.inTag);N.inTag=null;var W=M.current()==">"&&Y(A[p[1]],p[2]),J=b.getMode(ne,W),P=k(p[1],!0),V=k(p[1],!1);N.token=function(F,G){return F.match(P,!1)?(G.token=w,G.localState=G.localMode=null,null):_(F,V,G.localMode.token(F,G.localState))},N.localMode=J,N.localState=b.startState(J,R.indent(N.htmlState,"",""))}else N.inTag&&(N.inTag+=M.current(),M.eol()&&(N.inTag+=" "));return z}return{startState:function(){var M=b.startState(R);return{token:w,inTag:null,localMode:null,localState:null,htmlState:M}},copyState:function(M){var N;return M.localState&&(N=b.copyState(M.localMode,M.localState)),{token:M.token,inTag:M.inTag,localMode:M.localMode,localState:N,htmlState:b.copyState(R,M.htmlState)}},token:function(M,N){return N.token(M,N)},indent:function(M,N,z){return!M.localMode||/^\s*<\//.test(N)?R.indent(M.htmlState,N,z):M.localMode.indent?M.localMode.indent(M.localState,N,z):b.Pass},innerMode:function(M){return{state:M.localState||M.htmlState,mode:M.localMode||R}}}},"xml","javascript","css"),b.defineMIME("text/html","htmlmixed")})})()),ma.exports}Vu();Qa();var Sa={exports:{}},La;function ef(){return La||(La=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(I){return new RegExp("^(("+I.join(")|(")+"))\\b")}var _=pe(["and","or","not","is"]),te=["as","assert","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","lambda","pass","raise","return","try","while","with","yield","in","False","True"],oe=["abs","all","any","bin","bool","bytearray","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip","__import__","NotImplemented","Ellipsis","__debug__"];b.registerHelper("hintWords","python",te.concat(oe).concat(["exec","print"]));function Q(I){return I.scopes[I.scopes.length-1]}b.defineMode("python",function(I,Y){for(var ne="error",S=Y.delimiters||Y.singleDelimiters||/^[\(\)\[\]\{\}@,:`=;\.\\]/,R=[Y.singleOperators,Y.doubleOperators,Y.doubleDelimiters,Y.tripleDelimiters,Y.operators||/^([-+*/%\/&|^]=?|[<>=]+|\/\/=?|\*\*=?|!=|[~!@]|\.\.\.)/],A=0;A<R.length;A++)R[A]||R.splice(A--,1);var $=Y.hangingIndent||I.indentUnit,ue=te,O=oe;Y.extra_keywords!=null&&(ue=ue.concat(Y.extra_keywords)),Y.extra_builtins!=null&&(O=O.concat(Y.extra_builtins));var w=!(Y.version&&Number(Y.version)<3);if(w){var M=Y.identifiers||/^[_A-Za-z\u00A1-\uFFFF][_A-Za-z0-9\u00A1-\uFFFF]*/;ue=ue.concat(["nonlocal","None","aiter","anext","async","await","breakpoint","match","case"]),O=O.concat(["ascii","bytes","exec","print"]);var N=new RegExp(`^(([rbuf]|(br)|(rb)|(fr)|(rf))?('{3}|"{3}|['"]))`,"i")}else{var M=Y.identifiers||/^[_A-Za-z][_A-Za-z0-9]*/;ue=ue.concat(["exec","print"]),O=O.concat(["apply","basestring","buffer","cmp","coerce","execfile","file","intern","long","raw_input","reduce","reload","unichr","unicode","xrange","None"]);var N=new RegExp(`^(([rubf]|(ur)|(br))?('{3}|"{3}|['"]))`,"i")}var z=pe(ue),X=pe(O);function q(T,C){var g=T.sol()&&C.lastToken!="\\";if(g&&(C.indent=T.indentation()),g&&Q(C).type=="py"){var y=Q(C).offset;if(T.eatSpace()){var j=T.indentation();return j>y?P(C):j<y&&F(T,C)&&T.peek()!="#"&&(C.errorToken=!0),null}else{var de=p(T,C);return y>0&&F(T,C)&&(de+=" "+ne),de}}return p(T,C)}function p(T,C,g){if(T.eatSpace())return null;if(!g&&T.match(/^#.*/))return"comment";if(T.match(/^[0-9\.]/,!1)){var y=!1;if(T.match(/^[\d_]*\.\d+(e[\+\-]?\d+)?/i)&&(y=!0),T.match(/^[\d_]+\.\d*/)&&(y=!0),T.match(/^\.\d+/)&&(y=!0),y)return T.eat(/J/i),"number";var j=!1;if(T.match(/^0x[0-9a-f_]+/i)&&(j=!0),T.match(/^0b[01_]+/i)&&(j=!0),T.match(/^0o[0-7_]+/i)&&(j=!0),T.match(/^[1-9][\d_]*(e[\+\-]?[\d_]+)?/)&&(T.eat(/J/i),j=!0),T.match(/^0(?![\dx])/i)&&(j=!0),j)return T.eat(/L/i),"number"}if(T.match(N)){var de=T.current().toLowerCase().indexOf("f")!==-1;return de?(C.tokenize=W(T.current(),C.tokenize),C.tokenize(T,C)):(C.tokenize=J(T.current(),C.tokenize),C.tokenize(T,C))}for(var v=0;v<R.length;v++)if(T.match(R[v]))return"operator";return T.match(S)?"punctuation":C.lastToken=="."&&T.match(M)?"property":T.match(z)||T.match(_)?"keyword":T.match(X)?"builtin":T.match(/^(self|cls)\b/)?"variable-2":T.match(M)?C.lastToken=="def"||C.lastToken=="class"?"def":"variable":(T.next(),g?null:ne)}function W(T,C){for(;"rubf".indexOf(T.charAt(0).toLowerCase())>=0;)T=T.substr(1);var g=T.length==1,y="string";function j(v){return function(d,fe){var Te=p(d,fe,!0);return Te=="punctuation"&&(d.current()=="{"?fe.tokenize=j(v+1):d.current()=="}"&&(v>1?fe.tokenize=j(v-1):fe.tokenize=de)),Te}}function de(v,d){for(;!v.eol();)if(v.eatWhile(/[^'"\{\}\\]/),v.eat("\\")){if(v.next(),g&&v.eol())return y}else{if(v.match(T))return d.tokenize=C,y;if(v.match("{{"))return y;if(v.match("{",!1))return d.tokenize=j(0),v.current()?y:d.tokenize(v,d);if(v.match("}}"))return y;if(v.match("}"))return ne;v.eat(/['"]/)}if(g){if(Y.singleLineStringErrors)return ne;d.tokenize=C}return y}return de.isString=!0,de}function J(T,C){for(;"rubf".indexOf(T.charAt(0).toLowerCase())>=0;)T=T.substr(1);var g=T.length==1,y="string";function j(de,v){for(;!de.eol();)if(de.eatWhile(/[^'"\\]/),de.eat("\\")){if(de.next(),g&&de.eol())return y}else{if(de.match(T))return v.tokenize=C,y;de.eat(/['"]/)}if(g){if(Y.singleLineStringErrors)return ne;v.tokenize=C}return y}return j.isString=!0,j}function P(T){for(;Q(T).type!="py";)T.scopes.pop();T.scopes.push({offset:Q(T).offset+I.indentUnit,type:"py",align:null})}function V(T,C,g){var y=T.match(/^[\s\[\{\(]*(?:#|$)/,!1)?null:T.column()+1;C.scopes.push({offset:C.indent+$,type:g,align:y})}function F(T,C){for(var g=T.indentation();C.scopes.length>1&&Q(C).offset>g;){if(Q(C).type!="py")return!0;C.scopes.pop()}return Q(C).offset!=g}function G(T,C){T.sol()&&(C.beginningOfLine=!0,C.dedent=!1);var g=C.tokenize(T,C),y=T.current();if(C.beginningOfLine&&y=="@")return T.match(M,!1)?"meta":w?"operator":ne;if(/\S/.test(y)&&(C.beginningOfLine=!1),(g=="variable"||g=="builtin")&&C.lastToken=="meta"&&(g="meta"),(y=="pass"||y=="return")&&(C.dedent=!0),y=="lambda"&&(C.lambda=!0),y==":"&&!C.lambda&&Q(C).type=="py"&&T.match(/^\s*(?:#|$)/,!1)&&P(C),y.length==1&&!/string|comment/.test(g)){var j="[({".indexOf(y);if(j!=-1&&V(T,C,"])}".slice(j,j+1)),j="])}".indexOf(y),j!=-1)if(Q(C).type==y)C.indent=C.scopes.pop().offset-$;else return ne}return C.dedent&&T.eol()&&Q(C).type=="py"&&C.scopes.length>1&&C.scopes.pop(),g}var c={startState:function(T){return{tokenize:q,scopes:[{offset:T||0,type:"py",align:null}],indent:T||0,lastToken:null,lambda:!1,dedent:0}},token:function(T,C){var g=C.errorToken;g&&(C.errorToken=!1);var y=G(T,C);return y&&y!="comment"&&(C.lastToken=y=="keyword"||y=="punctuation"?T.current():y),y=="punctuation"&&(y=null),T.eol()&&C.lambda&&(C.lambda=!1),g?y+" "+ne:y},indent:function(T,C){if(T.tokenize!=q)return T.tokenize.isString?b.Pass:0;var g=Q(T),y=g.type==C.charAt(0)||g.type=="py"&&!T.dedent&&/^(else:|elif |except |finally:)/.test(C);return g.align!=null?g.align-(y?1:0):g.offset-(y?$:0)},electricInput:/^\s*([\}\]\)]|else:|elif |except |finally:)$/,closeBrackets:{triples:`'"`},lineComment:"#",fold:"indent"};return c}),b.defineMIME("text/x-python","python");var k=function(I){return I.split(" ")};b.defineMIME("text/x-cython",{name:"python",extra_keywords:k("by cdef cimport cpdef ctypedef enum except extern gil include nogil property public readonly struct union DEF IF ELIF ELSE")})})})()),Sa.exports}ef();var Ta={exports:{}},Ca;function tf(){return Ca||(Ca=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(g,y,j,de,v,d){this.indented=g,this.column=y,this.type=j,this.info=de,this.align=v,this.prev=d}function _(g,y,j,de){var v=g.indented;return g.context&&g.context.type=="statement"&&j!="statement"&&(v=g.context.indented),g.context=new pe(v,y,j,de,null,g.context)}function te(g){var y=g.context.type;return(y==")"||y=="]"||y=="}")&&(g.indented=g.context.indented),g.context=g.context.prev}function oe(g,y,j){if(y.prevToken=="variable"||y.prevToken=="type"||/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(g.string.slice(0,j))||y.typeAtEndOfLine&&g.column()==g.indentation())return!0}function Q(g){for(;;){if(!g||g.type=="top")return!0;if(g.type=="}"&&g.prev.info!="namespace")return!1;g=g.prev}}b.defineMode("clike",function(g,y){var j=g.indentUnit,de=y.statementIndentUnit||j,v=y.dontAlignCalls,d=y.keywords||{},fe=y.types||{},Te=y.builtin||{},le=y.blockKeywords||{},xe=y.defKeywords||{},Me=y.atoms||{},Fe=y.hooks||{},Ce=y.multiLineStrings,ve=y.indentStatements!==!1,Oe=y.indentSwitch!==!1,qe=y.namespaceSeparator,$e=y.isPunctuationChar||/[\[\]{}\(\),;\:\.]/,dt=y.numberStart||/[\d\.]/,Pe=y.number||/^(?:0x[a-f\d]+|0b[01]+|(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?)(u|ll?|l|f)?/i,_e=y.isOperatorChar||/[+\-*&%=<>!?|\/]/,Ue=y.isIdentifierChar||/[\w\$_\xa1-\uffff]/,et=y.isReservedIdentifier||!1,we,Ie;function E(me,De){var be=me.next();if(Fe[be]){var Be=Fe[be](me,De);if(Be!==!1)return Be}if(be=='"'||be=="'")return De.tokenize=ee(be),De.tokenize(me,De);if(dt.test(be)){if(me.backUp(1),me.match(Pe))return"number";me.next()}if($e.test(be))return we=be,null;if(be=="/"){if(me.eat("*"))return De.tokenize=K,K(me,De);if(me.eat("/"))return me.skipToEnd(),"comment"}if(_e.test(be)){for(;!me.match(/^\/[\/*]/,!1)&&me.eat(_e););return"operator"}if(me.eatWhile(Ue),qe)for(;me.match(qe);)me.eatWhile(Ue);var Ne=me.current();return I(d,Ne)?(I(le,Ne)&&(we="newstatement"),I(xe,Ne)&&(Ie=!0),"keyword"):I(fe,Ne)?"type":I(Te,Ne)||et&&et(Ne)?(I(le,Ne)&&(we="newstatement"),"builtin"):I(Me,Ne)?"atom":"variable"}function ee(me){return function(De,be){for(var Be=!1,Ne,Mt=!1;(Ne=De.next())!=null;){if(Ne==me&&!Be){Mt=!0;break}Be=!Be&&Ne=="\\"}return(Mt||!(Be||Ce))&&(be.tokenize=null),"string"}}function K(me,De){for(var be=!1,Be;Be=me.next();){if(Be=="/"&&be){De.tokenize=null;break}be=Be=="*"}return"comment"}function ze(me,De){y.typeFirstDefinitions&&me.eol()&&Q(De.context)&&(De.typeAtEndOfLine=oe(me,De,me.pos))}return{startState:function(me){return{tokenize:null,context:new pe((me||0)-j,0,"top",null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(me,De){var be=De.context;if(me.sol()&&(be.align==null&&(be.align=!1),De.indented=me.indentation(),De.startOfLine=!0),me.eatSpace())return ze(me,De),null;we=Ie=null;var Be=(De.tokenize||E)(me,De);if(Be=="comment"||Be=="meta")return Be;if(be.align==null&&(be.align=!0),we==";"||we==":"||we==","&&me.match(/^\s*(?:\/\/.*)?$/,!1))for(;De.context.type=="statement";)te(De);else if(we=="{")_(De,me.column(),"}");else if(we=="[")_(De,me.column(),"]");else if(we=="(")_(De,me.column(),")");else if(we=="}"){for(;be.type=="statement";)be=te(De);for(be.type=="}"&&(be=te(De));be.type=="statement";)be=te(De)}else we==be.type?te(De):ve&&((be.type=="}"||be.type=="top")&&we!=";"||be.type=="statement"&&we=="newstatement")&&_(De,me.column(),"statement",me.current());if(Be=="variable"&&(De.prevToken=="def"||y.typeFirstDefinitions&&oe(me,De,me.start)&&Q(De.context)&&me.match(/^\s*\(/,!1))&&(Be="def"),Fe.token){var Ne=Fe.token(me,De,Be);Ne!==void 0&&(Be=Ne)}return Be=="def"&&y.styleDefs===!1&&(Be="variable"),De.startOfLine=!1,De.prevToken=Ie?"def":Be||we,ze(me,De),Be},indent:function(me,De){if(me.tokenize!=E&&me.tokenize!=null||me.typeAtEndOfLine&&Q(me.context))return b.Pass;var be=me.context,Be=De&&De.charAt(0),Ne=Be==be.type;if(be.type=="statement"&&Be=="}"&&(be=be.prev),y.dontIndentStatements)for(;be.type=="statement"&&y.dontIndentStatements.test(be.info);)be=be.prev;if(Fe.indent){var Mt=Fe.indent(me,be,De,j);if(typeof Mt=="number")return Mt}var Pt=be.prev&&be.prev.info=="switch";if(y.allmanIndentation&&/[{(]/.test(Be)){for(;be.type!="top"&&be.type!="}";)be=be.prev;return be.indented}return be.type=="statement"?be.indented+(Be=="{"?0:de):be.align&&(!v||be.type!=")")?be.column+(Ne?0:1):be.type==")"&&!Ne?be.indented+de:be.indented+(Ne?0:j)+(!Ne&&Pt&&!/^(?:case|default)\b/.test(De)?j:0)},electricInput:Oe?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:"//",fold:"brace"}});function k(g){for(var y={},j=g.split(" "),de=0;de<j.length;++de)y[j[de]]=!0;return y}function I(g,y){return typeof g=="function"?g(y):g.propertyIsEnumerable(y)}var Y="auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran",ne="alignas alignof and and_eq audit axiom bitand bitor catch class compl concept constexpr const_cast decltype delete dynamic_cast explicit export final friend import module mutable namespace new noexcept not not_eq operator or or_eq override private protected public reinterpret_cast requires static_assert static_cast template this thread_local throw try typeid typename using virtual xor xor_eq",S="bycopy byref in inout oneway out self super atomic nonatomic retain copy readwrite readonly strong weak assign typeof nullable nonnull null_resettable _cmd @interface @implementation @end @protocol @encode @property @synthesize @dynamic @class @public @package @private @protected @required @optional @try @catch @finally @import @selector @encode @defs @synchronized @autoreleasepool @compatibility_alias @available",R="FOUNDATION_EXPORT FOUNDATION_EXTERN NS_INLINE NS_FORMAT_FUNCTION  NS_RETURNS_RETAINEDNS_ERROR_ENUM NS_RETURNS_NOT_RETAINED NS_RETURNS_INNER_POINTER NS_DESIGNATED_INITIALIZER NS_ENUM NS_OPTIONS NS_REQUIRES_NIL_TERMINATION NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_SWIFT_NAME NS_REFINED_FOR_SWIFT",A=k("int long char short double float unsigned signed void bool"),$=k("SEL instancetype id Class Protocol BOOL");function ue(g){return I(A,g)||/.+_t$/.test(g)}function O(g){return ue(g)||I($,g)}var w="case do else for if switch while struct enum union",M="struct enum union";function N(g,y){if(!y.startOfLine)return!1;for(var j,de=null;j=g.peek();){if(j=="\\"&&g.match(/^.$/)){de=N;break}else if(j=="/"&&g.match(/^\/[\/\*]/,!1))break;g.next()}return y.tokenize=de,"meta"}function z(g,y){return y.prevToken=="type"?"type":!1}function X(g){return!g||g.length<2||g[0]!="_"?!1:g[1]=="_"||g[1]!==g[1].toLowerCase()}function q(g){return g.eatWhile(/[\w\.']/),"number"}function p(g,y){if(g.backUp(1),g.match(/^(?:R|u8R|uR|UR|LR)/)){var j=g.match(/^"([^\s\\()]{0,16})\(/);return j?(y.cpp11RawStringDelim=j[1],y.tokenize=P,P(g,y)):!1}return g.match(/^(?:u8|u|U|L)/)?g.match(/^["']/,!1)?"string":!1:(g.next(),!1)}function W(g){var y=/(\w+)::~?(\w+)$/.exec(g);return y&&y[1]==y[2]}function J(g,y){for(var j;(j=g.next())!=null;)if(j=='"'&&!g.eat('"')){y.tokenize=null;break}return"string"}function P(g,y){var j=y.cpp11RawStringDelim.replace(/[^\w\s]/g,"\\$&"),de=g.match(new RegExp(".*?\\)"+j+'"'));return de?y.tokenize=null:g.skipToEnd(),"string"}function V(g,y){typeof g=="string"&&(g=[g]);var j=[];function de(d){if(d)for(var fe in d)d.hasOwnProperty(fe)&&j.push(fe)}de(y.keywords),de(y.types),de(y.builtin),de(y.atoms),j.length&&(y.helperType=g[0],b.registerHelper("hintWords",g[0],j));for(var v=0;v<g.length;++v)b.defineMIME(g[v],y)}V(["text/x-csrc","text/x-c","text/x-chdr"],{name:"clike",keywords:k(Y),types:ue,blockKeywords:k(w),defKeywords:k(M),typeFirstDefinitions:!0,atoms:k("NULL true false"),isReservedIdentifier:X,hooks:{"#":N,"*":z},modeProps:{fold:["brace","include"]}}),V(["text/x-c++src","text/x-c++hdr"],{name:"clike",keywords:k(Y+" "+ne),types:ue,blockKeywords:k(w+" class try catch"),defKeywords:k(M+" class namespace"),typeFirstDefinitions:!0,atoms:k("true false NULL nullptr"),dontIndentStatements:/^template$/,isIdentifierChar:/[\w\$_~\xa1-\uffff]/,isReservedIdentifier:X,hooks:{"#":N,"*":z,u:p,U:p,L:p,R:p,0:q,1:q,2:q,3:q,4:q,5:q,6:q,7:q,8:q,9:q,token:function(g,y,j){if(j=="variable"&&g.peek()=="("&&(y.prevToken==";"||y.prevToken==null||y.prevToken=="}")&&W(g.current()))return"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),V("text/x-java",{name:"clike",keywords:k("abstract assert break case catch class const continue default do else enum extends final finally for goto if implements import instanceof interface native new package private protected public return static strictfp super switch synchronized this throw throws transient try volatile while @interface"),types:k("var byte short int long float double boolean char void Boolean Byte Character Double Float Integer Long Number Object Short String StringBuffer StringBuilder Void"),blockKeywords:k("catch class do else finally for if switch try while"),defKeywords:k("class interface enum @interface"),typeFirstDefinitions:!0,atoms:k("true false null"),number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+\.?\d*|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,hooks:{"@":function(g){return g.match("interface",!1)?!1:(g.eatWhile(/[\w\$_]/),"meta")},'"':function(g,y){return g.match(/""$/)?(y.tokenize=F,y.tokenize(g,y)):!1}},modeProps:{fold:["brace","import"]}}),V("text/x-csharp",{name:"clike",keywords:k("abstract as async await base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in init interface internal is lock namespace new operator out override params private protected public readonly record ref required return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"),types:k("Action Boolean Byte Char DateTime DateTimeOffset Decimal Double Func Guid Int16 Int32 Int64 Object SByte Single String Task TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),blockKeywords:k("catch class do else finally for foreach if struct switch try while"),defKeywords:k("class interface namespace record struct var"),typeFirstDefinitions:!0,atoms:k("true false null"),hooks:{"@":function(g,y){return g.eat('"')?(y.tokenize=J,J(g,y)):(g.eatWhile(/[\w\$_]/),"meta")}}});function F(g,y){for(var j=!1;!g.eol();){if(!j&&g.match('"""')){y.tokenize=null;break}j=g.next()=="\\"&&!j}return"string"}function G(g){return function(y,j){for(var de;de=y.next();)if(de=="*"&&y.eat("/"))if(g==1){j.tokenize=null;break}else return j.tokenize=G(g-1),j.tokenize(y,j);else if(de=="/"&&y.eat("*"))return j.tokenize=G(g+1),j.tokenize(y,j);return"comment"}}V("text/x-scala",{name:"clike",keywords:k("abstract case catch class def do else extends final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try type val var while with yield _ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble"),types:k("AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Int Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:!0,blockKeywords:k("catch class enum do else finally for forSome if match switch try while"),defKeywords:k("class enum def object package trait type val var"),atoms:k("true false null"),indentStatements:!1,indentSwitch:!1,isOperatorChar:/[+\-*&%=<>!?|\/#:@]/,hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},'"':function(g,y){return g.match('""')?(y.tokenize=F,y.tokenize(g,y)):!1},"'":function(g){return g.match(/^(\\[^'\s]+|[^\\'])'/)?"string-2":(g.eatWhile(/[\w\$_\xa1-\uffff]/),"atom")},"=":function(g,y){var j=y.context;return j.type=="}"&&j.align&&g.eat(">")?(y.context=new pe(j.indented,j.column,j.type,j.info,null,j.prev),"operator"):!1},"/":function(g,y){return g.eat("*")?(y.tokenize=G(1),y.tokenize(g,y)):!1}},modeProps:{closeBrackets:{pairs:'()[]{}""',triples:'"'}}});function c(g){return function(y,j){for(var de=!1,v,d=!1;!y.eol();){if(!g&&!de&&y.match('"')){d=!0;break}if(g&&y.match('"""')){d=!0;break}v=y.next(),!de&&v=="$"&&y.match("{")&&y.skipTo("}"),de=!de&&v=="\\"&&!g}return(d||!g)&&(j.tokenize=null),"string"}}V("text/x-kotlin",{name:"clike",keywords:k("package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam value"),types:k("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit"),intendSwitch:!1,indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,blockKeywords:k("catch class do else finally for if where try while enum"),defKeywords:k("class val var object interface fun"),atoms:k("true false null this"),hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},"*":function(g,y){return y.prevToken=="."?"variable":"operator"},'"':function(g,y){return y.tokenize=c(g.match('""')),y.tokenize(g,y)},"/":function(g,y){return g.eat("*")?(y.tokenize=G(1),y.tokenize(g,y)):!1},indent:function(g,y,j,de){var v=j&&j.charAt(0);if((g.prevToken=="}"||g.prevToken==")")&&j=="")return g.indented;if(g.prevToken=="operator"&&j!="}"&&g.context.type!="}"||g.prevToken=="variable"&&v=="."||(g.prevToken=="}"||g.prevToken==")")&&v==".")return de*2+y.indented;if(y.align&&y.type=="}")return y.indented+(g.context.type==(j||"").charAt(0)?0:de)}},modeProps:{closeBrackets:{triples:'"'}}}),V(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:k("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:k("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:k("for while do if else struct"),builtin:k("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:k("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TextureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":N},modeProps:{fold:["brace","include"]}}),V("text/x-nesc",{name:"clike",keywords:k(Y+" as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:ue,blockKeywords:k(w),atoms:k("null true false"),hooks:{"#":N},modeProps:{fold:["brace","include"]}}),V("text/x-objectivec",{name:"clike",keywords:k(Y+" "+S),types:O,builtin:k(R),blockKeywords:k(w+" @synthesize @try @catch @finally @autoreleasepool @synchronized"),defKeywords:k(M+" @interface @implementation @protocol @class"),dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:k("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:X,hooks:{"#":N,"*":z},modeProps:{fold:["brace","include"]}}),V("text/x-objectivec++",{name:"clike",keywords:k(Y+" "+S+" "+ne),types:O,builtin:k(R),blockKeywords:k(w+" @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch"),defKeywords:k(M+" @interface @implementation @protocol @class class namespace"),dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:k("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:X,hooks:{"#":N,"*":z,u:p,U:p,L:p,R:p,0:q,1:q,2:q,3:q,4:q,5:q,6:q,7:q,8:q,9:q,token:function(g,y,j){if(j=="variable"&&g.peek()=="("&&(y.prevToken==";"||y.prevToken==null||y.prevToken=="}")&&W(g.current()))return"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),V("text/x-squirrel",{name:"clike",keywords:k("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:ue,blockKeywords:k("case catch class else for foreach if switch try while"),defKeywords:k("function local class"),typeFirstDefinitions:!0,atoms:k("true false null"),hooks:{"#":N},modeProps:{fold:["brace","include"]}});var T=null;function C(g){return function(y,j){for(var de=!1,v,d=!1;!y.eol();){if(!de&&y.match('"')&&(g=="single"||y.match('""'))){d=!0;break}if(!de&&y.match("``")){T=C(g),d=!0;break}v=y.next(),de=g=="single"&&!de&&v=="\\"}return d&&(j.tokenize=null),"string"}}V("text/x-ceylon",{name:"clike",keywords:k("abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while"),types:function(g){var y=g.charAt(0);return y===y.toUpperCase()&&y!==y.toLowerCase()},blockKeywords:k("case catch class dynamic else finally for function if interface module new object switch try while"),defKeywords:k("class dynamic function interface module object package value"),builtin:k("abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable"),isPunctuationChar:/[\[\]{}\(\),;\:\.`]/,isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:k("true false null larger smaller equal empty finished"),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},'"':function(g,y){return y.tokenize=C(g.match('""')?"triple":"single"),y.tokenize(g,y)},"`":function(g,y){return!T||!g.match("`")?!1:(y.tokenize=T,T=null,y.tokenize(g,y))},"'":function(g){return g.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},token:function(g,y,j){if((j=="variable"||j=="type")&&y.prevToken==".")return"variable-2"}},modeProps:{fold:["brace","import"],closeBrackets:{triples:'"'}}})})})()),Ta.exports}tf();var Da={exports:{}},Ma={exports:{}},Fa;function rf(){return Fa||(Fa=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.modeInfo=[{name:"APL",mime:"text/apl",mode:"apl",ext:["dyalog","apl"]},{name:"PGP",mimes:["application/pgp","application/pgp-encrypted","application/pgp-keys","application/pgp-signature"],mode:"asciiarmor",ext:["asc","pgp","sig"]},{name:"ASN.1",mime:"text/x-ttcn-asn",mode:"asn.1",ext:["asn","asn1"]},{name:"Asterisk",mime:"text/x-asterisk",mode:"asterisk",file:/^extensions\.conf$/i},{name:"Brainfuck",mime:"text/x-brainfuck",mode:"brainfuck",ext:["b","bf"]},{name:"C",mime:"text/x-csrc",mode:"clike",ext:["c","h","ino"]},{name:"C++",mime:"text/x-c++src",mode:"clike",ext:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],alias:["cpp"]},{name:"Cobol",mime:"text/x-cobol",mode:"cobol",ext:["cob","cpy","cbl"]},{name:"C#",mime:"text/x-csharp",mode:"clike",ext:["cs"],alias:["csharp","cs"]},{name:"Clojure",mime:"text/x-clojure",mode:"clojure",ext:["clj","cljc","cljx"]},{name:"ClojureScript",mime:"text/x-clojurescript",mode:"clojure",ext:["cljs"]},{name:"Closure Stylesheets (GSS)",mime:"text/x-gss",mode:"css",ext:["gss"]},{name:"CMake",mime:"text/x-cmake",mode:"cmake",ext:["cmake","cmake.in"],file:/^CMakeLists\.txt$/},{name:"CoffeeScript",mimes:["application/vnd.coffeescript","text/coffeescript","text/x-coffeescript"],mode:"coffeescript",ext:["coffee"],alias:["coffee","coffee-script"]},{name:"Common Lisp",mime:"text/x-common-lisp",mode:"commonlisp",ext:["cl","lisp","el"],alias:["lisp"]},{name:"Cypher",mime:"application/x-cypher-query",mode:"cypher",ext:["cyp","cypher"]},{name:"Cython",mime:"text/x-cython",mode:"python",ext:["pyx","pxd","pxi"]},{name:"Crystal",mime:"text/x-crystal",mode:"crystal",ext:["cr"]},{name:"CSS",mime:"text/css",mode:"css",ext:["css"]},{name:"CQL",mime:"text/x-cassandra",mode:"sql",ext:["cql"]},{name:"D",mime:"text/x-d",mode:"d",ext:["d"]},{name:"Dart",mimes:["application/dart","text/x-dart"],mode:"dart",ext:["dart"]},{name:"diff",mime:"text/x-diff",mode:"diff",ext:["diff","patch"]},{name:"Django",mime:"text/x-django",mode:"django"},{name:"Dockerfile",mime:"text/x-dockerfile",mode:"dockerfile",file:/^Dockerfile$/},{name:"DTD",mime:"application/xml-dtd",mode:"dtd",ext:["dtd"]},{name:"Dylan",mime:"text/x-dylan",mode:"dylan",ext:["dylan","dyl","intr"]},{name:"EBNF",mime:"text/x-ebnf",mode:"ebnf"},{name:"ECL",mime:"text/x-ecl",mode:"ecl",ext:["ecl"]},{name:"edn",mime:"application/edn",mode:"clojure",ext:["edn"]},{name:"Eiffel",mime:"text/x-eiffel",mode:"eiffel",ext:["e"]},{name:"Elm",mime:"text/x-elm",mode:"elm",ext:["elm"]},{name:"Embedded JavaScript",mime:"application/x-ejs",mode:"htmlembedded",ext:["ejs"]},{name:"Embedded Ruby",mime:"application/x-erb",mode:"htmlembedded",ext:["erb"]},{name:"Erlang",mime:"text/x-erlang",mode:"erlang",ext:["erl"]},{name:"Esper",mime:"text/x-esper",mode:"sql"},{name:"Factor",mime:"text/x-factor",mode:"factor",ext:["factor"]},{name:"FCL",mime:"text/x-fcl",mode:"fcl"},{name:"Forth",mime:"text/x-forth",mode:"forth",ext:["forth","fth","4th"]},{name:"Fortran",mime:"text/x-fortran",mode:"fortran",ext:["f","for","f77","f90","f95"]},{name:"F#",mime:"text/x-fsharp",mode:"mllike",ext:["fs"],alias:["fsharp"]},{name:"Gas",mime:"text/x-gas",mode:"gas",ext:["s"]},{name:"Gherkin",mime:"text/x-feature",mode:"gherkin",ext:["feature"]},{name:"GitHub Flavored Markdown",mime:"text/x-gfm",mode:"gfm",file:/^(readme|contributing|history)\.md$/i},{name:"Go",mime:"text/x-go",mode:"go",ext:["go"]},{name:"Groovy",mime:"text/x-groovy",mode:"groovy",ext:["groovy","gradle"],file:/^Jenkinsfile$/},{name:"HAML",mime:"text/x-haml",mode:"haml",ext:["haml"]},{name:"Haskell",mime:"text/x-haskell",mode:"haskell",ext:["hs"]},{name:"Haskell (Literate)",mime:"text/x-literate-haskell",mode:"haskell-literate",ext:["lhs"]},{name:"Haxe",mime:"text/x-haxe",mode:"haxe",ext:["hx"]},{name:"HXML",mime:"text/x-hxml",mode:"haxe",ext:["hxml"]},{name:"ASP.NET",mime:"application/x-aspx",mode:"htmlembedded",ext:["aspx"],alias:["asp","aspx"]},{name:"HTML",mime:"text/html",mode:"htmlmixed",ext:["html","htm","handlebars","hbs"],alias:["xhtml"]},{name:"HTTP",mime:"message/http",mode:"http"},{name:"IDL",mime:"text/x-idl",mode:"idl",ext:["pro"]},{name:"Pug",mime:"text/x-pug",mode:"pug",ext:["jade","pug"],alias:["jade"]},{name:"Java",mime:"text/x-java",mode:"clike",ext:["java"]},{name:"Java Server Pages",mime:"application/x-jsp",mode:"htmlembedded",ext:["jsp"],alias:["jsp"]},{name:"JavaScript",mimes:["text/javascript","text/ecmascript","application/javascript","application/x-javascript","application/ecmascript"],mode:"javascript",ext:["js"],alias:["ecmascript","js","node"]},{name:"JSON",mimes:["application/json","application/x-json"],mode:"javascript",ext:["json","map"],alias:["json5"]},{name:"JSON-LD",mime:"application/ld+json",mode:"javascript",ext:["jsonld"],alias:["jsonld"]},{name:"JSX",mime:"text/jsx",mode:"jsx",ext:["jsx"]},{name:"Jinja2",mime:"text/jinja2",mode:"jinja2",ext:["j2","jinja","jinja2"]},{name:"Julia",mime:"text/x-julia",mode:"julia",ext:["jl"],alias:["jl"]},{name:"Kotlin",mime:"text/x-kotlin",mode:"clike",ext:["kt"]},{name:"LESS",mime:"text/x-less",mode:"css",ext:["less"]},{name:"LiveScript",mime:"text/x-livescript",mode:"livescript",ext:["ls"],alias:["ls"]},{name:"Lua",mime:"text/x-lua",mode:"lua",ext:["lua"]},{name:"Markdown",mime:"text/x-markdown",mode:"markdown",ext:["markdown","md","mkd"]},{name:"mIRC",mime:"text/mirc",mode:"mirc"},{name:"MariaDB SQL",mime:"text/x-mariadb",mode:"sql"},{name:"Mathematica",mime:"text/x-mathematica",mode:"mathematica",ext:["m","nb","wl","wls"]},{name:"Modelica",mime:"text/x-modelica",mode:"modelica",ext:["mo"]},{name:"MUMPS",mime:"text/x-mumps",mode:"mumps",ext:["mps"]},{name:"MS SQL",mime:"text/x-mssql",mode:"sql"},{name:"mbox",mime:"application/mbox",mode:"mbox",ext:["mbox"]},{name:"MySQL",mime:"text/x-mysql",mode:"sql"},{name:"Nginx",mime:"text/x-nginx-conf",mode:"nginx",file:/nginx.*\.conf$/i},{name:"NSIS",mime:"text/x-nsis",mode:"nsis",ext:["nsh","nsi"]},{name:"NTriples",mimes:["application/n-triples","application/n-quads","text/n-triples"],mode:"ntriples",ext:["nt","nq"]},{name:"Objective-C",mime:"text/x-objectivec",mode:"clike",ext:["m"],alias:["objective-c","objc"]},{name:"Objective-C++",mime:"text/x-objectivec++",mode:"clike",ext:["mm"],alias:["objective-c++","objc++"]},{name:"OCaml",mime:"text/x-ocaml",mode:"mllike",ext:["ml","mli","mll","mly"]},{name:"Octave",mime:"text/x-octave",mode:"octave",ext:["m"]},{name:"Oz",mime:"text/x-oz",mode:"oz",ext:["oz"]},{name:"Pascal",mime:"text/x-pascal",mode:"pascal",ext:["p","pas"]},{name:"PEG.js",mime:"null",mode:"pegjs",ext:["jsonld"]},{name:"Perl",mime:"text/x-perl",mode:"perl",ext:["pl","pm"]},{name:"PHP",mimes:["text/x-php","application/x-httpd-php","application/x-httpd-php-open"],mode:"php",ext:["php","php3","php4","php5","php7","phtml"]},{name:"Pig",mime:"text/x-pig",mode:"pig",ext:["pig"]},{name:"Plain Text",mime:"text/plain",mode:"null",ext:["txt","text","conf","def","list","log"]},{name:"PLSQL",mime:"text/x-plsql",mode:"sql",ext:["pls"]},{name:"PostgreSQL",mime:"text/x-pgsql",mode:"sql"},{name:"PowerShell",mime:"application/x-powershell",mode:"powershell",ext:["ps1","psd1","psm1"]},{name:"Properties files",mime:"text/x-properties",mode:"properties",ext:["properties","ini","in"],alias:["ini","properties"]},{name:"ProtoBuf",mime:"text/x-protobuf",mode:"protobuf",ext:["proto"]},{name:"Python",mime:"text/x-python",mode:"python",ext:["BUILD","bzl","py","pyw"],file:/^(BUCK|BUILD)$/},{name:"Puppet",mime:"text/x-puppet",mode:"puppet",ext:["pp"]},{name:"Q",mime:"text/x-q",mode:"q",ext:["q"]},{name:"R",mime:"text/x-rsrc",mode:"r",ext:["r","R"],alias:["rscript"]},{name:"reStructuredText",mime:"text/x-rst",mode:"rst",ext:["rst"],alias:["rst"]},{name:"RPM Changes",mime:"text/x-rpm-changes",mode:"rpm"},{name:"RPM Spec",mime:"text/x-rpm-spec",mode:"rpm",ext:["spec"]},{name:"Ruby",mime:"text/x-ruby",mode:"ruby",ext:["rb"],alias:["jruby","macruby","rake","rb","rbx"]},{name:"Rust",mime:"text/x-rustsrc",mode:"rust",ext:["rs"]},{name:"SAS",mime:"text/x-sas",mode:"sas",ext:["sas"]},{name:"Sass",mime:"text/x-sass",mode:"sass",ext:["sass"]},{name:"Scala",mime:"text/x-scala",mode:"clike",ext:["scala"]},{name:"Scheme",mime:"text/x-scheme",mode:"scheme",ext:["scm","ss"]},{name:"SCSS",mime:"text/x-scss",mode:"css",ext:["scss"]},{name:"Shell",mimes:["text/x-sh","application/x-sh"],mode:"shell",ext:["sh","ksh","bash"],alias:["bash","sh","zsh"],file:/^PKGBUILD$/},{name:"Sieve",mime:"application/sieve",mode:"sieve",ext:["siv","sieve"]},{name:"Slim",mimes:["text/x-slim","application/x-slim"],mode:"slim",ext:["slim"]},{name:"Smalltalk",mime:"text/x-stsrc",mode:"smalltalk",ext:["st"]},{name:"Smarty",mime:"text/x-smarty",mode:"smarty",ext:["tpl"]},{name:"Solr",mime:"text/x-solr",mode:"solr"},{name:"SML",mime:"text/x-sml",mode:"mllike",ext:["sml","sig","fun","smackspec"]},{name:"Soy",mime:"text/x-soy",mode:"soy",ext:["soy"],alias:["closure template"]},{name:"SPARQL",mime:"application/sparql-query",mode:"sparql",ext:["rq","sparql"],alias:["sparul"]},{name:"Spreadsheet",mime:"text/x-spreadsheet",mode:"spreadsheet",alias:["excel","formula"]},{name:"SQL",mime:"text/x-sql",mode:"sql",ext:["sql"]},{name:"SQLite",mime:"text/x-sqlite",mode:"sql"},{name:"Squirrel",mime:"text/x-squirrel",mode:"clike",ext:["nut"]},{name:"Stylus",mime:"text/x-styl",mode:"stylus",ext:["styl"]},{name:"Swift",mime:"text/x-swift",mode:"swift",ext:["swift"]},{name:"sTeX",mime:"text/x-stex",mode:"stex"},{name:"LaTeX",mime:"text/x-latex",mode:"stex",ext:["text","ltx","tex"],alias:["tex"]},{name:"SystemVerilog",mime:"text/x-systemverilog",mode:"verilog",ext:["v","sv","svh"]},{name:"Tcl",mime:"text/x-tcl",mode:"tcl",ext:["tcl"]},{name:"Textile",mime:"text/x-textile",mode:"textile",ext:["textile"]},{name:"TiddlyWiki",mime:"text/x-tiddlywiki",mode:"tiddlywiki"},{name:"Tiki wiki",mime:"text/tiki",mode:"tiki"},{name:"TOML",mime:"text/x-toml",mode:"toml",ext:["toml"]},{name:"Tornado",mime:"text/x-tornado",mode:"tornado"},{name:"troff",mime:"text/troff",mode:"troff",ext:["1","2","3","4","5","6","7","8","9"]},{name:"TTCN",mime:"text/x-ttcn",mode:"ttcn",ext:["ttcn","ttcn3","ttcnpp"]},{name:"TTCN_CFG",mime:"text/x-ttcn-cfg",mode:"ttcn-cfg",ext:["cfg"]},{name:"Turtle",mime:"text/turtle",mode:"turtle",ext:["ttl"]},{name:"TypeScript",mime:"application/typescript",mode:"javascript",ext:["ts"],alias:["ts"]},{name:"TypeScript-JSX",mime:"text/typescript-jsx",mode:"jsx",ext:["tsx"],alias:["tsx"]},{name:"Twig",mime:"text/x-twig",mode:"twig"},{name:"Web IDL",mime:"text/x-webidl",mode:"webidl",ext:["webidl"]},{name:"VB.NET",mime:"text/x-vb",mode:"vb",ext:["vb"]},{name:"VBScript",mime:"text/vbscript",mode:"vbscript",ext:["vbs"]},{name:"Velocity",mime:"text/velocity",mode:"velocity",ext:["vtl"]},{name:"Verilog",mime:"text/x-verilog",mode:"verilog",ext:["v"]},{name:"VHDL",mime:"text/x-vhdl",mode:"vhdl",ext:["vhd","vhdl"]},{name:"Vue.js Component",mimes:["script/x-vue","text/x-vue"],mode:"vue",ext:["vue"]},{name:"XML",mimes:["application/xml","text/xml"],mode:"xml",ext:["xml","xsl","xsd","svg"],alias:["rss","wsdl","xsd"]},{name:"XQuery",mime:"application/xquery",mode:"xquery",ext:["xy","xquery"]},{name:"Yacas",mime:"text/x-yacas",mode:"yacas",ext:["ys"]},{name:"YAML",mimes:["text/x-yaml","text/yaml"],mode:"yaml",ext:["yaml","yml"],alias:["yml"]},{name:"Z80",mime:"text/x-z80",mode:"z80",ext:["z80"]},{name:"mscgen",mime:"text/x-mscgen",mode:"mscgen",ext:["mscgen","mscin","msc"]},{name:"xu",mime:"text/x-xu",mode:"mscgen",ext:["xu"]},{name:"msgenny",mime:"text/x-msgenny",mode:"mscgen",ext:["msgenny"]},{name:"WebAssembly",mime:"text/webassembly",mode:"wast",ext:["wat","wast"]}];for(var pe=0;pe<b.modeInfo.length;pe++){var _=b.modeInfo[pe];_.mimes&&(_.mime=_.mimes[0])}b.findModeByMIME=function(te){te=te.toLowerCase();for(var oe=0;oe<b.modeInfo.length;oe++){var Q=b.modeInfo[oe];if(Q.mime==te)return Q;if(Q.mimes){for(var k=0;k<Q.mimes.length;k++)if(Q.mimes[k]==te)return Q}}if(/\+xml$/.test(te))return b.findModeByMIME("application/xml");if(/\+json$/.test(te))return b.findModeByMIME("application/json")},b.findModeByExtension=function(te){te=te.toLowerCase();for(var oe=0;oe<b.modeInfo.length;oe++){var Q=b.modeInfo[oe];if(Q.ext){for(var k=0;k<Q.ext.length;k++)if(Q.ext[k]==te)return Q}}},b.findModeByFileName=function(te){for(var oe=0;oe<b.modeInfo.length;oe++){var Q=b.modeInfo[oe];if(Q.file&&Q.file.test(te))return Q}var k=te.lastIndexOf("."),I=k>-1&&te.substring(k+1,te.length);if(I)return b.findModeByExtension(I)},b.findModeByName=function(te){te=te.toLowerCase();for(var oe=0;oe<b.modeInfo.length;oe++){var Q=b.modeInfo[oe];if(Q.name.toLowerCase()==te)return Q;if(Q.alias){for(var k=0;k<Q.alias.length;k++)if(Q.alias[k].toLowerCase()==te)return Q}}}})})()),Ma.exports}var Aa;function nf(){return Aa||(Aa=1,(function(ct,xt){(function(b){b(mt(),Ya(),rf())})(function(b){b.defineMode("markdown",function(pe,_){var te=b.getMode(pe,"text/html"),oe=te.name=="null";function Q(v){if(b.findModeByName){var d=b.findModeByName(v);d&&(v=d.mime||d.mimes[0])}var fe=b.getMode(pe,v);return fe.name=="null"?null:fe}_.highlightFormatting===void 0&&(_.highlightFormatting=!1),_.maxBlockquoteDepth===void 0&&(_.maxBlockquoteDepth=0),_.taskLists===void 0&&(_.taskLists=!1),_.strikethrough===void 0&&(_.strikethrough=!1),_.emoji===void 0&&(_.emoji=!1),_.fencedCodeBlockHighlighting===void 0&&(_.fencedCodeBlockHighlighting=!0),_.fencedCodeBlockDefaultMode===void 0&&(_.fencedCodeBlockDefaultMode="text/plain"),_.xml===void 0&&(_.xml=!0),_.tokenTypeOverrides===void 0&&(_.tokenTypeOverrides={});var k={header:"header",code:"comment",quote:"quote",list1:"variable-2",list2:"variable-3",list3:"keyword",hr:"hr",image:"image",imageAltText:"image-alt-text",imageMarker:"image-marker",formatting:"formatting",linkInline:"link",linkEmail:"link",linkText:"link",linkHref:"string",em:"em",strong:"strong",strikethrough:"strikethrough",emoji:"builtin"};for(var I in k)k.hasOwnProperty(I)&&_.tokenTypeOverrides[I]&&(k[I]=_.tokenTypeOverrides[I]);var Y=/^([*\-_])(?:\s*\1){2,}\s*$/,ne=/^(?:[*\-+]|^[0-9]+([.)]))\s+/,S=/^\[(x| )\](?=\s)/i,R=_.allowAtxHeaderWithoutSpace?/^(#+)/:/^(#+)(?: |$)/,A=/^ {0,3}(?:\={1,}|-{2,})\s*$/,$=/^[^#!\[\]*_\\<>` "'(~:]+/,ue=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,O=/^\s*\[[^\]]+?\]:.*$/,w=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/,M="    ";function N(v,d,fe){return d.f=d.inline=fe,fe(v,d)}function z(v,d,fe){return d.f=d.block=fe,fe(v,d)}function X(v){return!v||!/\S/.test(v.string)}function q(v){if(v.linkTitle=!1,v.linkHref=!1,v.linkText=!1,v.em=!1,v.strong=!1,v.strikethrough=!1,v.quote=0,v.indentedCode=!1,v.f==W){var d=oe;if(!d){var fe=b.innerMode(te,v.htmlState);d=fe.mode.name=="xml"&&fe.state.tagStart===null&&!fe.state.context&&fe.state.tokenize.isInText}d&&(v.f=F,v.block=p,v.htmlState=null)}return v.trailingSpace=0,v.trailingSpaceNewLine=!1,v.prevLine=v.thisLine,v.thisLine={stream:null},null}function p(v,d){var fe=v.column()===d.indentation,Te=X(d.prevLine.stream),le=d.indentedCode,xe=d.prevLine.hr,Me=d.list!==!1,Fe=(d.listStack[d.listStack.length-1]||0)+3;d.indentedCode=!1;var Ce=d.indentation;if(d.indentationDiff===null&&(d.indentationDiff=d.indentation,Me)){for(d.list=null;Ce<d.listStack[d.listStack.length-1];)d.listStack.pop(),d.listStack.length?d.indentation=d.listStack[d.listStack.length-1]:d.list=!1;d.list!==!1&&(d.indentationDiff=Ce-d.listStack[d.listStack.length-1])}var ve=!Te&&!xe&&!d.prevLine.header&&(!Me||!le)&&!d.prevLine.fencedCodeEnd,Oe=(d.list===!1||xe||Te)&&d.indentation<=Fe&&v.match(Y),qe=null;if(d.indentationDiff>=4&&(le||d.prevLine.fencedCodeEnd||d.prevLine.header||Te))return v.skipToEnd(),d.indentedCode=!0,k.code;if(v.eatSpace())return null;if(fe&&d.indentation<=Fe&&(qe=v.match(R))&&qe[1].length<=6)return d.quote=0,d.header=qe[1].length,d.thisLine.header=!0,_.highlightFormatting&&(d.formatting="header"),d.f=d.inline,P(d);if(d.indentation<=Fe&&v.eat(">"))return d.quote=fe?1:d.quote+1,_.highlightFormatting&&(d.formatting="quote"),v.eatSpace(),P(d);if(!Oe&&!d.setext&&fe&&d.indentation<=Fe&&(qe=v.match(ne))){var $e=qe[1]?"ol":"ul";return d.indentation=Ce+v.current().length,d.list=!0,d.quote=0,d.listStack.push(d.indentation),d.em=!1,d.strong=!1,d.code=!1,d.strikethrough=!1,_.taskLists&&v.match(S,!1)&&(d.taskList=!0),d.f=d.inline,_.highlightFormatting&&(d.formatting=["list","list-"+$e]),P(d)}else{if(fe&&d.indentation<=Fe&&(qe=v.match(ue,!0)))return d.quote=0,d.fencedEndRE=new RegExp(qe[1]+"+ *$"),d.localMode=_.fencedCodeBlockHighlighting&&Q(qe[2]||_.fencedCodeBlockDefaultMode),d.localMode&&(d.localState=b.startState(d.localMode)),d.f=d.block=J,_.highlightFormatting&&(d.formatting="code-block"),d.code=-1,P(d);if(d.setext||(!ve||!Me)&&!d.quote&&d.list===!1&&!d.code&&!Oe&&!O.test(v.string)&&(qe=v.lookAhead(1))&&(qe=qe.match(A)))return d.setext?(d.header=d.setext,d.setext=0,v.skipToEnd(),_.highlightFormatting&&(d.formatting="header")):(d.header=qe[0].charAt(0)=="="?1:2,d.setext=d.header),d.thisLine.header=!0,d.f=d.inline,P(d);if(Oe)return v.skipToEnd(),d.hr=!0,d.thisLine.hr=!0,k.hr;if(v.peek()==="[")return N(v,d,g)}return N(v,d,d.inline)}function W(v,d){var fe=te.token(v,d.htmlState);if(!oe){var Te=b.innerMode(te,d.htmlState);(Te.mode.name=="xml"&&Te.state.tagStart===null&&!Te.state.context&&Te.state.tokenize.isInText||d.md_inside&&v.current().indexOf(">")>-1)&&(d.f=F,d.block=p,d.htmlState=null)}return fe}function J(v,d){var fe=d.listStack[d.listStack.length-1]||0,Te=d.indentation<fe,le=fe+3;if(d.fencedEndRE&&d.indentation<=le&&(Te||v.match(d.fencedEndRE))){_.highlightFormatting&&(d.formatting="code-block");var xe;return Te||(xe=P(d)),d.localMode=d.localState=null,d.block=p,d.f=F,d.fencedEndRE=null,d.code=0,d.thisLine.fencedCodeEnd=!0,Te?z(v,d,d.block):xe}else return d.localMode?d.localMode.token(v,d.localState):(v.skipToEnd(),k.code)}function P(v){var d=[];if(v.formatting){d.push(k.formatting),typeof v.formatting=="string"&&(v.formatting=[v.formatting]);for(var fe=0;fe<v.formatting.length;fe++)d.push(k.formatting+"-"+v.formatting[fe]),v.formatting[fe]==="header"&&d.push(k.formatting+"-"+v.formatting[fe]+"-"+v.header),v.formatting[fe]==="quote"&&(!_.maxBlockquoteDepth||_.maxBlockquoteDepth>=v.quote?d.push(k.formatting+"-"+v.formatting[fe]+"-"+v.quote):d.push("error"))}if(v.taskOpen)return d.push("meta"),d.length?d.join(" "):null;if(v.taskClosed)return d.push("property"),d.length?d.join(" "):null;if(v.linkHref?d.push(k.linkHref,"url"):(v.strong&&d.push(k.strong),v.em&&d.push(k.em),v.strikethrough&&d.push(k.strikethrough),v.emoji&&d.push(k.emoji),v.linkText&&d.push(k.linkText),v.code&&d.push(k.code),v.image&&d.push(k.image),v.imageAltText&&d.push(k.imageAltText,"link"),v.imageMarker&&d.push(k.imageMarker)),v.header&&d.push(k.header,k.header+"-"+v.header),v.quote&&(d.push(k.quote),!_.maxBlockquoteDepth||_.maxBlockquoteDepth>=v.quote?d.push(k.quote+"-"+v.quote):d.push(k.quote+"-"+_.maxBlockquoteDepth)),v.list!==!1){var Te=(v.listStack.length-1)%3;Te?Te===1?d.push(k.list2):d.push(k.list3):d.push(k.list1)}return v.trailingSpaceNewLine?d.push("trailing-space-new-line"):v.trailingSpace&&d.push("trailing-space-"+(v.trailingSpace%2?"a":"b")),d.length?d.join(" "):null}function V(v,d){if(v.match($,!0))return P(d)}function F(v,d){var fe=d.text(v,d);if(typeof fe<"u")return fe;if(d.list)return d.list=null,P(d);if(d.taskList){var Te=v.match(S,!0)[1]===" ";return Te?d.taskOpen=!0:d.taskClosed=!0,_.highlightFormatting&&(d.formatting="task"),d.taskList=!1,P(d)}if(d.taskOpen=!1,d.taskClosed=!1,d.header&&v.match(/^#+$/,!0))return _.highlightFormatting&&(d.formatting="header"),P(d);var le=v.next();if(d.linkTitle){d.linkTitle=!1;var xe=le;le==="("&&(xe=")"),xe=(xe+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var Me="^\\s*(?:[^"+xe+"\\\\]+|\\\\\\\\|\\\\.)"+xe;if(v.match(new RegExp(Me),!0))return k.linkHref}if(le==="`"){var Fe=d.formatting;_.highlightFormatting&&(d.formatting="code"),v.eatWhile("`");var Ce=v.current().length;if(d.code==0&&(!d.quote||Ce==1))return d.code=Ce,P(d);if(Ce==d.code){var ve=P(d);return d.code=0,ve}else return d.formatting=Fe,P(d)}else if(d.code)return P(d);if(le==="\\"&&(v.next(),_.highlightFormatting)){var Oe=P(d),qe=k.formatting+"-escape";return Oe?Oe+" "+qe:qe}if(le==="!"&&v.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return d.imageMarker=!0,d.image=!0,_.highlightFormatting&&(d.formatting="image"),P(d);if(le==="["&&d.imageMarker&&v.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return d.imageMarker=!1,d.imageAltText=!0,_.highlightFormatting&&(d.formatting="image"),P(d);if(le==="]"&&d.imageAltText){_.highlightFormatting&&(d.formatting="image");var Oe=P(d);return d.imageAltText=!1,d.image=!1,d.inline=d.f=c,Oe}if(le==="["&&!d.image)return d.linkText&&v.match(/^.*?\]/)||(d.linkText=!0,_.highlightFormatting&&(d.formatting="link")),P(d);if(le==="]"&&d.linkText){_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return d.linkText=!1,d.inline=d.f=v.match(/\(.*?\)| ?\[.*?\]/,!1)?c:F,Oe}if(le==="<"&&v.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){d.f=d.inline=G,_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return Oe?Oe+=" ":Oe="",Oe+k.linkInline}if(le==="<"&&v.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){d.f=d.inline=G,_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return Oe?Oe+=" ":Oe="",Oe+k.linkEmail}if(_.xml&&le==="<"&&v.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var $e=v.string.indexOf(">",v.pos);if($e!=-1){var dt=v.string.substring(v.start,$e);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(dt)&&(d.md_inside=!0)}return v.backUp(1),d.htmlState=b.startState(te),z(v,d,W)}if(_.xml&&le==="<"&&v.match(/^\/\w*?>/))return d.md_inside=!1,"tag";if(le==="*"||le==="_"){for(var Pe=1,_e=v.pos==1?" ":v.string.charAt(v.pos-2);Pe<3&&v.eat(le);)Pe++;var Ue=v.peek()||" ",et=!/\s/.test(Ue)&&(!w.test(Ue)||/\s/.test(_e)||w.test(_e)),we=!/\s/.test(_e)&&(!w.test(_e)||/\s/.test(Ue)||w.test(Ue)),Ie=null,E=null;if(Pe%2&&(!d.em&&et&&(le==="*"||!we||w.test(_e))?Ie=!0:d.em==le&&we&&(le==="*"||!et||w.test(Ue))&&(Ie=!1)),Pe>1&&(!d.strong&&et&&(le==="*"||!we||w.test(_e))?E=!0:d.strong==le&&we&&(le==="*"||!et||w.test(Ue))&&(E=!1)),E!=null||Ie!=null){_.highlightFormatting&&(d.formatting=Ie==null?"strong":E==null?"em":"strong em"),Ie===!0&&(d.em=le),E===!0&&(d.strong=le);var ve=P(d);return Ie===!1&&(d.em=!1),E===!1&&(d.strong=!1),ve}}else if(le===" "&&(v.eat("*")||v.eat("_"))){if(v.peek()===" ")return P(d);v.backUp(1)}if(_.strikethrough){if(le==="~"&&v.eatWhile(le)){if(d.strikethrough){_.highlightFormatting&&(d.formatting="strikethrough");var ve=P(d);return d.strikethrough=!1,ve}else if(v.match(/^[^\s]/,!1))return d.strikethrough=!0,_.highlightFormatting&&(d.formatting="strikethrough"),P(d)}else if(le===" "&&v.match("~~",!0)){if(v.peek()===" ")return P(d);v.backUp(2)}}if(_.emoji&&le===":"&&v.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){d.emoji=!0,_.highlightFormatting&&(d.formatting="emoji");var ee=P(d);return d.emoji=!1,ee}return le===" "&&(v.match(/^ +$/,!1)?d.trailingSpace++:d.trailingSpace&&(d.trailingSpaceNewLine=!0)),P(d)}function G(v,d){var fe=v.next();if(fe===">"){d.f=d.inline=F,_.highlightFormatting&&(d.formatting="link");var Te=P(d);return Te?Te+=" ":Te="",Te+k.linkInline}return v.match(/^[^>]+/,!0),k.linkInline}function c(v,d){if(v.eatSpace())return null;var fe=v.next();return fe==="("||fe==="["?(d.f=d.inline=C(fe==="("?")":"]"),_.highlightFormatting&&(d.formatting="link-string"),d.linkHref=!0,P(d)):"error"}var T={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function C(v){return function(d,fe){var Te=d.next();if(Te===v){fe.f=fe.inline=F,_.highlightFormatting&&(fe.formatting="link-string");var le=P(fe);return fe.linkHref=!1,le}return d.match(T[v]),fe.linkHref=!0,P(fe)}}function g(v,d){return v.match(/^([^\]\\]|\\.)*\]:/,!1)?(d.f=y,v.next(),_.highlightFormatting&&(d.formatting="link"),d.linkText=!0,P(d)):N(v,d,F)}function y(v,d){if(v.match("]:",!0)){d.f=d.inline=j,_.highlightFormatting&&(d.formatting="link");var fe=P(d);return d.linkText=!1,fe}return v.match(/^([^\]\\]|\\.)+/,!0),k.linkText}function j(v,d){return v.eatSpace()?null:(v.match(/^[^\s]+/,!0),v.peek()===void 0?d.linkTitle=!0:v.match(/^(?:\s+(?:"(?:[^"\\]|\\.)+"|'(?:[^'\\]|\\.)+'|\((?:[^)\\]|\\.)+\)))?/,!0),d.f=d.inline=F,k.linkHref+" url")}var de={startState:function(){return{f:p,prevLine:{stream:null},thisLine:{stream:null},block:p,htmlState:null,indentation:0,inline:F,text:V,formatting:!1,linkText:!1,linkHref:!1,linkTitle:!1,code:0,em:!1,strong:!1,header:0,setext:0,hr:!1,taskList:!1,list:!1,listStack:[],quote:0,trailingSpace:0,trailingSpaceNewLine:!1,strikethrough:!1,emoji:!1,fencedEndRE:null}},copyState:function(v){return{f:v.f,prevLine:v.prevLine,thisLine:v.thisLine,block:v.block,htmlState:v.htmlState&&b.copyState(te,v.htmlState),indentation:v.indentation,localMode:v.localMode,localState:v.localMode?b.copyState(v.localMode,v.localState):null,inline:v.inline,text:v.text,formatting:!1,linkText:v.linkText,linkTitle:v.linkTitle,linkHref:v.linkHref,code:v.code,em:v.em,strong:v.strong,strikethrough:v.strikethrough,emoji:v.emoji,header:v.header,setext:v.setext,hr:v.hr,taskList:v.taskList,list:v.list,listStack:v.listStack.slice(0),quote:v.quote,indentedCode:v.indentedCode,trailingSpace:v.trailingSpace,trailingSpaceNewLine:v.trailingSpaceNewLine,md_inside:v.md_inside,fencedEndRE:v.fencedEndRE}},token:function(v,d){if(d.formatting=!1,v!=d.thisLine.stream){if(d.header=0,d.hr=!1,v.match(/^\s*$/,!0))return q(d),null;if(d.prevLine=d.thisLine,d.thisLine={stream:v},d.taskList=!1,d.trailingSpace=0,d.trailingSpaceNewLine=!1,!d.localState&&(d.f=d.block,d.f!=W)){var fe=v.match(/^\s*/,!0)[0].replace(/\t/g,M).length;if(d.indentation=fe,d.indentationDiff=null,fe>0)return null}}return d.f(v,d)},innerMode:function(v){return v.block==W?{state:v.htmlState,mode:te}:v.localState?{state:v.localState,mode:v.localMode}:{state:v,mode:de}},indent:function(v,d,fe){return v.block==W&&te.indent?te.indent(v.htmlState,d,fe):v.localState&&v.localMode.indent?v.localMode.indent(v.localState,d,fe):b.Pass},blankLine:q,getType:P,blockCommentStart:"<!--",blockCommentEnd:"-->",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return de},"xml"),b.defineMIME("text/markdown","markdown"),b.defineMIME("text/x-markdown","markdown")})})()),Da.exports}nf();var Na={exports:{}},Ea;function of(){return Ea||(Ea=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineOption("placeholder","",function(I,Y,ne){var S=ne&&ne!=b.Init;if(Y&&!S)I.on("blur",oe),I.on("change",Q),I.on("swapDoc",Q),b.on(I.getInputField(),"compositionupdate",I.state.placeholderCompose=function(){te(I)}),Q(I);else if(!Y&&S){I.off("blur",oe),I.off("change",Q),I.off("swapDoc",Q),b.off(I.getInputField(),"compositionupdate",I.state.placeholderCompose),pe(I);var R=I.getWrapperElement();R.className=R.className.replace(" CodeMirror-empty","")}Y&&!I.hasFocus()&&oe(I)});function pe(I){I.state.placeholder&&(I.state.placeholder.parentNode.removeChild(I.state.placeholder),I.state.placeholder=null)}function _(I){pe(I);var Y=I.state.placeholder=document.createElement("pre");Y.style.cssText="height: 0; overflow: visible",Y.style.direction=I.getOption("direction"),Y.className="CodeMirror-placeholder CodeMirror-line-like";var ne=I.getOption("placeholder");typeof ne=="string"&&(ne=document.createTextNode(ne)),Y.appendChild(ne),I.display.lineSpace.insertBefore(Y,I.display.lineSpace.firstChild)}function te(I){setTimeout(function(){var Y=!1;if(I.lineCount()==1){var ne=I.getInputField();Y=ne.nodeName=="TEXTAREA"?!I.getLine(0).length:!/[^\u200b]/.test(ne.querySelector(".CodeMirror-line").textContent)}Y?_(I):pe(I)},20)}function oe(I){k(I)&&_(I)}function Q(I){var Y=I.getWrapperElement(),ne=k(I);Y.className=Y.className.replace(" CodeMirror-empty","")+(ne?" CodeMirror-empty":""),ne?_(I):pe(I)}function k(I){return I.lineCount()===1&&I.getLine(0)===""}})})()),Na.exports}of();var Oa={exports:{}},Pa;function lf(){return Pa||(Pa=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineSimpleMode=function(S,R){b.defineMode(S,function(A){return b.simpleMode(A,R)})},b.simpleMode=function(S,R){pe(R,"start");var A={},$=R.meta||{},ue=!1;for(var O in R)if(O!=$&&R.hasOwnProperty(O))for(var w=A[O]=[],M=R[O],N=0;N<M.length;N++){var z=M[N];w.push(new oe(z,R)),(z.indent||z.dedent)&&(ue=!0)}var X={startState:function(){return{state:"start",pending:null,local:null,localState:null,indent:ue?[]:null}},copyState:function(p){var W={state:p.state,pending:p.pending,local:p.local,localState:null,indent:p.indent&&p.indent.slice(0)};p.localState&&(W.localState=b.copyState(p.local.mode,p.localState)),p.stack&&(W.stack=p.stack.slice(0));for(var J=p.persistentStates;J;J=J.next)W.persistentStates={mode:J.mode,spec:J.spec,state:J.state==p.localState?W.localState:b.copyState(J.mode,J.state),next:W.persistentStates};return W},token:Q(A,S),innerMode:function(p){return p.local&&{mode:p.local.mode,state:p.localState}},indent:ne(A,$)};if($)for(var q in $)$.hasOwnProperty(q)&&(X[q]=$[q]);return X};function pe(S,R){if(!S.hasOwnProperty(R))throw new Error("Undefined state "+R+" in simple mode")}function _(S,R){if(!S)return/(?:)/;var A="";return S instanceof RegExp?(S.ignoreCase&&(A="i"),S.unicode&&(A+="u"),S=S.source):S=String(S),new RegExp((R===!1?"":"^")+"(?:"+S+")",A)}function te(S){if(!S)return null;if(S.apply)return S;if(typeof S=="string")return S.replace(/\./g," ");for(var R=[],A=0;A<S.length;A++)R.push(S[A]&&S[A].replace(/\./g," "));return R}function oe(S,R){(S.next||S.push)&&pe(R,S.next||S.push),this.regex=_(S.regex),this.token=te(S.token),this.data=S}function Q(S,R){return function(A,$){if($.pending){var ue=$.pending.shift();return $.pending.length==0&&($.pending=null),A.pos+=ue.text.length,ue.token}if($.local)if($.local.end&&A.match($.local.end)){var O=$.local.endToken||null;return $.local=$.localState=null,O}else{var O=$.local.mode.token(A,$.localState),w;return $.local.endScan&&(w=$.local.endScan.exec(A.current()))&&(A.pos=A.start+w.index),O}for(var M=S[$.state],N=0;N<M.length;N++){var z=M[N],X=(!z.data.sol||A.sol())&&A.match(z.regex);if(X){z.data.next?$.state=z.data.next:z.data.push?(($.stack||($.stack=[])).push($.state),$.state=z.data.push):z.data.pop&&$.stack&&$.stack.length&&($.state=$.stack.pop()),z.data.mode&&I(R,$,z.data.mode,z.token),z.data.indent&&$.indent.push(A.indentation()+R.indentUnit),z.data.dedent&&$.indent.pop();var q=z.token;if(q&&q.apply&&(q=q(X)),X.length>2&&z.token&&typeof z.token!="string"){for(var p=2;p<X.length;p++)X[p]&&($.pending||($.pending=[])).push({text:X[p],token:z.token[p-1]});return A.backUp(X[0].length-(X[1]?X[1].length:0)),q[0]}else return q&&q.join?q[0]:q}}return A.next(),null}}function k(S,R){if(S===R)return!0;if(!S||typeof S!="object"||!R||typeof R!="object")return!1;var A=0;for(var $ in S)if(S.hasOwnProperty($)){if(!R.hasOwnProperty($)||!k(S[$],R[$]))return!1;A++}for(var $ in R)R.hasOwnProperty($)&&A--;return A==0}function I(S,R,A,$){var ue;if(A.persistent)for(var O=R.persistentStates;O&&!ue;O=O.next)(A.spec?k(A.spec,O.spec):A.mode==O.mode)&&(ue=O);var w=ue?ue.mode:A.mode||b.getMode(S,A.spec),M=ue?ue.state:b.startState(w);A.persistent&&!ue&&(R.persistentStates={mode:w,spec:A.spec,state:M,next:R.persistentStates}),R.localState=M,R.local={mode:w,end:A.end&&_(A.end),endScan:A.end&&A.forceEnd!==!1&&_(A.end,!1),endToken:$&&$.join?$[$.length-1]:$}}function Y(S,R){for(var A=0;A<R.length;A++)if(R[A]===S)return!0}function ne(S,R){return function(A,$,ue){if(A.local&&A.local.mode.indent)return A.local.mode.indent(A.localState,$,ue);if(A.indent==null||A.local||R.dontIndentStates&&Y(A.state,R.dontIndentStates)>-1)return b.Pass;var O=A.indent.length-1,w=S[A.state];e:for(;;){for(var M=0;M<w.length;M++){var N=w[M];if(N.data.dedent&&N.data.dedentIfLineStart!==!1){var z=N.regex.exec($);if(z&&z[0]){O--,(N.next||N.push)&&(w=S[N.next||N.push]),$=$.slice(z[0].length);continue e}}}break}return O<0?0:A.indent[O]}}})})()),Oa.exports}lf();var Ia={exports:{}},za;function af(){return za||(za=1,(function(ct,xt){(function(b){b(mt())})(function(b){var pe=/MSIE \d/.test(navigator.userAgent)&&(document.documentMode==null||document.documentMode<8),_=b.Pos,te={"(":")>",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<","<":">>",">":"<<"};function oe(S){return S&&S.bracketRegex||/[(){}[\]]/}function Q(S,R,A){var $=S.getLineHandle(R.line),ue=R.ch-1,O=A&&A.afterCursor;O==null&&(O=/(^| )cm-fat-cursor($| )/.test(S.getWrapperElement().className));var w=oe(A),M=!O&&ue>=0&&w.test($.text.charAt(ue))&&te[$.text.charAt(ue)]||w.test($.text.charAt(ue+1))&&te[$.text.charAt(++ue)];if(!M)return null;var N=M.charAt(1)==">"?1:-1;if(A&&A.strict&&N>0!=(ue==R.ch))return null;var z=S.getTokenTypeAt(_(R.line,ue+1)),X=k(S,_(R.line,ue+(N>0?1:0)),N,z,A);return X==null?null:{from:_(R.line,ue),to:X&&X.pos,match:X&&X.ch==M.charAt(0),forward:N>0}}function k(S,R,A,$,ue){for(var O=ue&&ue.maxScanLineLength||1e4,w=ue&&ue.maxScanLines||1e3,M=[],N=oe(ue),z=A>0?Math.min(R.line+w,S.lastLine()+1):Math.max(S.firstLine()-1,R.line-w),X=R.line;X!=z;X+=A){var q=S.getLine(X);if(q){var p=A>0?0:q.length-1,W=A>0?q.length:-1;if(!(q.length>O))for(X==R.line&&(p=R.ch-(A<0?1:0));p!=W;p+=A){var J=q.charAt(p);if(N.test(J)&&($===void 0||(S.getTokenTypeAt(_(X,p+1))||"")==($||""))){var P=te[J];if(P&&P.charAt(1)==">"==A>0)M.push(J);else if(M.length)M.pop();else return{pos:_(X,p),ch:J}}}}}return X-A==(A>0?S.lastLine():S.firstLine())?!1:null}function I(S,R,A){for(var $=S.state.matchBrackets.maxHighlightLineLength||1e3,ue=A&&A.highlightNonMatching,O=[],w=S.listSelections(),M=0;M<w.length;M++){var N=w[M].empty()&&Q(S,w[M].head,A);if(N&&(N.match||ue!==!1)&&S.getLine(N.from.line).length<=$){var z=N.match?"CodeMirror-matchingbracket":"CodeMirror-nonmatchingbracket";O.push(S.markText(N.from,_(N.from.line,N.from.ch+1),{className:z})),N.to&&S.getLine(N.to.line).length<=$&&O.push(S.markText(N.to,_(N.to.line,N.to.ch+1),{className:z}))}}if(O.length){pe&&S.state.focused&&S.focus();var X=function(){S.operation(function(){for(var q=0;q<O.length;q++)O[q].clear()})};if(R)setTimeout(X,800);else return X}}function Y(S){S.operation(function(){S.state.matchBrackets.currentlyHighlighted&&(S.state.matchBrackets.currentlyHighlighted(),S.state.matchBrackets.currentlyHighlighted=null),S.state.matchBrackets.currentlyHighlighted=I(S,!1,S.state.matchBrackets)})}function ne(S){S.state.matchBrackets&&S.state.matchBrackets.currentlyHighlighted&&(S.state.matchBrackets.currentlyHighlighted(),S.state.matchBrackets.currentlyHighlighted=null)}b.defineOption("matchBrackets",!1,function(S,R,A){A&&A!=b.Init&&(S.off("cursorActivity",Y),S.off("focus",Y),S.off("blur",ne),ne(S)),R&&(S.state.matchBrackets=typeof R=="object"?R:{},S.on("cursorActivity",Y),S.on("focus",Y),S.on("blur",ne))}),b.defineExtension("matchBrackets",function(){I(this,!0)}),b.defineExtension("findMatchingBracket",function(S,R,A){return(A||typeof R=="boolean")&&(A?(A.strict=R,R=A):R=R?{strict:!0}:null),Q(this,S,R)}),b.defineExtension("scanForBracket",function(S,R,A,$){return k(this,S,R,A,$)})})})()),Ia.exports}af();var Ba={exports:{}},Ra;function sf(){return Ra||(Ra=1,(function(ct,xt){(function(b){b(mt())})(function(b){var pe={pairs:`()[]{}''""`,closeBefore:`)]}'":;>`,triples:"",explode:"[]{}"},_=b.Pos;b.defineOption("autoCloseBrackets",!1,function(O,w,M){M&&M!=b.Init&&(O.removeKeyMap(oe),O.state.closeBrackets=null),w&&(Q(te(w,"pairs")),O.state.closeBrackets=w,O.addKeyMap(oe))});function te(O,w){return w=="pairs"&&typeof O=="string"?O:typeof O=="object"&&O[w]!=null?O[w]:pe[w]}var oe={Backspace:Y,Enter:ne};function Q(O){for(var w=0;w<O.length;w++){var M=O.charAt(w),N="'"+M+"'";oe[N]||(oe[N]=k(M))}}Q(pe.pairs+"`");function k(O){return function(w){return A(w,O)}}function I(O){var w=O.state.closeBrackets;if(!w||w.override)return w;var M=O.getModeAt(O.getCursor());return M.closeBrackets||w}function Y(O){var w=I(O);if(!w||O.getOption("disableInput"))return b.Pass;for(var M=te(w,"pairs"),N=O.listSelections(),z=0;z<N.length;z++){if(!N[z].empty())return b.Pass;var X=$(O,N[z].head);if(!X||M.indexOf(X)%2!=0)return b.Pass}for(var z=N.length-1;z>=0;z--){var q=N[z].head;O.replaceRange("",_(q.line,q.ch-1),_(q.line,q.ch+1),"+delete")}}function ne(O){var w=I(O),M=w&&te(w,"explode");if(!M||O.getOption("disableInput"))return b.Pass;for(var N=O.listSelections(),z=0;z<N.length;z++){if(!N[z].empty())return b.Pass;var X=$(O,N[z].head);if(!X||M.indexOf(X)%2!=0)return b.Pass}O.operation(function(){var q=O.lineSeparator()||`
`;O.replaceSelection(q+q,null),S(O,-1),N=O.listSelections();for(var p=0;p<N.length;p++){var W=N[p].head.line;O.indentLine(W,null,!0),O.indentLine(W+1,null,!0)}})}function S(O,w){for(var M=[],N=O.listSelections(),z=0,X=0;X<N.length;X++){var q=N[X];q.head==O.getCursor()&&(z=X);var p=q.head.ch||w>0?{line:q.head.line,ch:q.head.ch+w}:{line:q.head.line-1};M.push({anchor:p,head:p})}O.setSelections(M,z)}function R(O){var w=b.cmpPos(O.anchor,O.head)>0;return{anchor:new _(O.anchor.line,O.anchor.ch+(w?-1:1)),head:new _(O.head.line,O.head.ch+(w?1:-1))}}function A(O,w){var M=I(O);if(!M||O.getOption("disableInput"))return b.Pass;var N=te(M,"pairs"),z=N.indexOf(w);if(z==-1)return b.Pass;for(var X=te(M,"closeBefore"),q=te(M,"triples"),p=N.charAt(z+1)==w,W=O.listSelections(),J=z%2==0,P,V=0;V<W.length;V++){var F=W[V],G=F.head,c,T=O.getRange(G,_(G.line,G.ch+1));if(J&&!F.empty())c="surround";else if((p||!J)&&T==w)p&&ue(O,G)?c="both":q.indexOf(w)>=0&&O.getRange(G,_(G.line,G.ch+3))==w+w+w?c="skipThree":c="skip";else if(p&&G.ch>1&&q.indexOf(w)>=0&&O.getRange(_(G.line,G.ch-2),G)==w+w){if(G.ch>2&&/\bstring/.test(O.getTokenTypeAt(_(G.line,G.ch-2))))return b.Pass;c="addFour"}else if(p){var C=G.ch==0?" ":O.getRange(_(G.line,G.ch-1),G);if(!b.isWordChar(T)&&C!=w&&!b.isWordChar(C))c="both";else return b.Pass}else if(J&&(T.length===0||/\s/.test(T)||X.indexOf(T)>-1))c="both";else return b.Pass;if(!P)P=c;else if(P!=c)return b.Pass}var g=z%2?N.charAt(z-1):w,y=z%2?w:N.charAt(z+1);O.operation(function(){if(P=="skip")S(O,1);else if(P=="skipThree")S(O,3);else if(P=="surround"){for(var j=O.getSelections(),de=0;de<j.length;de++)j[de]=g+j[de]+y;O.replaceSelections(j,"around"),j=O.listSelections().slice();for(var de=0;de<j.length;de++)j[de]=R(j[de]);O.setSelections(j)}else P=="both"?(O.replaceSelection(g+y,null),O.triggerElectric(g+y),S(O,-1)):P=="addFour"&&(O.replaceSelection(g+g+g+g,"before"),S(O,1))})}function $(O,w){var M=O.getRange(_(w.line,w.ch-1),_(w.line,w.ch+1));return M.length==2?M:null}function ue(O,w){var M=O.getTokenAt(_(w.line,w.ch+1));return/\bstring/.test(M.type)&&M.start==w.ch&&(w.ch==0||!/\bstring/.test(O.getTokenTypeAt(w)))}})})()),Ba.exports}sf();var Wa={exports:{}},Ha={exports:{}},_a;function Ja(){return _a||(_a=1,(function(ct,xt){(function(b){b(mt())})(function(b){var pe=b.Pos;function _(w){var M=w.flags;return M??(w.ignoreCase?"i":"")+(w.global?"g":"")+(w.multiline?"m":"")}function te(w,M){for(var N=_(w),z=N,X=0;X<M.length;X++)z.indexOf(M.charAt(X))==-1&&(z+=M.charAt(X));return N==z?w:new RegExp(w.source,z)}function oe(w){return/\\s|\\n|\n|\\W|\\D|\[\^/.test(w.source)}function Q(w,M,N){M=te(M,"g");for(var z=N.line,X=N.ch,q=w.lastLine();z<=q;z++,X=0){M.lastIndex=X;var p=w.getLine(z),W=M.exec(p);if(W)return{from:pe(z,W.index),to:pe(z,W.index+W[0].length),match:W}}}function k(w,M,N){if(!oe(M))return Q(w,M,N);M=te(M,"gm");for(var z,X=1,q=N.line,p=w.lastLine();q<=p;){for(var W=0;W<X&&!(q>p);W++){var J=w.getLine(q++);z=z==null?J:z+`
`+J}X=X*2,M.lastIndex=N.ch;var P=M.exec(z);if(P){var V=z.slice(0,P.index).split(`
`),F=P[0].split(`
`),G=N.line+V.length-1,c=V[V.length-1].length;return{from:pe(G,c),to:pe(G+F.length-1,F.length==1?c+F[0].length:F[F.length-1].length),match:P}}}}function I(w,M,N){for(var z,X=0;X<=w.length;){M.lastIndex=X;var q=M.exec(w);if(!q)break;var p=q.index+q[0].length;if(p>w.length-N)break;(!z||p>z.index+z[0].length)&&(z=q),X=q.index+1}return z}function Y(w,M,N){M=te(M,"g");for(var z=N.line,X=N.ch,q=w.firstLine();z>=q;z--,X=-1){var p=w.getLine(z),W=I(p,M,X<0?0:p.length-X);if(W)return{from:pe(z,W.index),to:pe(z,W.index+W[0].length),match:W}}}function ne(w,M,N){if(!oe(M))return Y(w,M,N);M=te(M,"gm");for(var z,X=1,q=w.getLine(N.line).length-N.ch,p=N.line,W=w.firstLine();p>=W;){for(var J=0;J<X&&p>=W;J++){var P=w.getLine(p--);z=z==null?P:P+`
`+z}X*=2;var V=I(z,M,q);if(V){var F=z.slice(0,V.index).split(`
`),G=V[0].split(`
`),c=p+F.length,T=F[F.length-1].length;return{from:pe(c,T),to:pe(c+G.length-1,G.length==1?T+G[0].length:G[G.length-1].length),match:V}}}}var S,R;String.prototype.normalize?(S=function(w){return w.normalize("NFD").toLowerCase()},R=function(w){return w.normalize("NFD")}):(S=function(w){return w.toLowerCase()},R=function(w){return w});function A(w,M,N,z){if(w.length==M.length)return N;for(var X=0,q=N+Math.max(0,w.length-M.length);;){if(X==q)return X;var p=X+q>>1,W=z(w.slice(0,p)).length;if(W==N)return p;W>N?q=p:X=p+1}}function $(w,M,N,z){if(!M.length)return null;var X=z?S:R,q=X(M).split(/\r|\n\r?/);e:for(var p=N.line,W=N.ch,J=w.lastLine()+1-q.length;p<=J;p++,W=0){var P=w.getLine(p).slice(W),V=X(P);if(q.length==1){var F=V.indexOf(q[0]);if(F==-1)continue e;var N=A(P,V,F,X)+W;return{from:pe(p,A(P,V,F,X)+W),to:pe(p,A(P,V,F+q[0].length,X)+W)}}else{var G=V.length-q[0].length;if(V.slice(G)!=q[0])continue e;for(var c=1;c<q.length-1;c++)if(X(w.getLine(p+c))!=q[c])continue e;var T=w.getLine(p+q.length-1),C=X(T),g=q[q.length-1];if(C.slice(0,g.length)!=g)continue e;return{from:pe(p,A(P,V,G,X)+W),to:pe(p+q.length-1,A(T,C,g.length,X))}}}}function ue(w,M,N,z){if(!M.length)return null;var X=z?S:R,q=X(M).split(/\r|\n\r?/);e:for(var p=N.line,W=N.ch,J=w.firstLine()-1+q.length;p>=J;p--,W=-1){var P=w.getLine(p);W>-1&&(P=P.slice(0,W));var V=X(P);if(q.length==1){var F=V.lastIndexOf(q[0]);if(F==-1)continue e;return{from:pe(p,A(P,V,F,X)),to:pe(p,A(P,V,F+q[0].length,X))}}else{var G=q[q.length-1];if(V.slice(0,G.length)!=G)continue e;for(var c=1,N=p-q.length+1;c<q.length-1;c++)if(X(w.getLine(N+c))!=q[c])continue e;var T=w.getLine(p+1-q.length),C=X(T);if(C.slice(C.length-q[0].length)!=q[0])continue e;return{from:pe(p+1-q.length,A(T,C,T.length-q[0].length,X)),to:pe(p,A(P,V,G.length,X))}}}}function O(w,M,N,z){this.atOccurrence=!1,this.afterEmptyMatch=!1,this.doc=w,N=N?w.clipPos(N):pe(0,0),this.pos={from:N,to:N};var X;typeof z=="object"?X=z.caseFold:(X=z,z=null),typeof M=="string"?(X==null&&(X=!1),this.matches=function(q,p){return(q?ue:$)(w,M,p,X)}):(M=te(M,"gm"),!z||z.multiline!==!1?this.matches=function(q,p){return(q?ne:k)(w,M,p)}:this.matches=function(q,p){return(q?Y:Q)(w,M,p)})}O.prototype={findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(w){var M=this.doc.clipPos(w?this.pos.from:this.pos.to);if(this.afterEmptyMatch&&this.atOccurrence&&(M=pe(M.line,M.ch),w?(M.ch--,M.ch<0&&(M.line--,M.ch=(this.doc.getLine(M.line)||"").length)):(M.ch++,M.ch>(this.doc.getLine(M.line)||"").length&&(M.ch=0,M.line++)),b.cmpPos(M,this.doc.clipPos(M))!=0))return this.atOccurrence=!1;var N=this.matches(w,M);if(this.afterEmptyMatch=N&&b.cmpPos(N.from,N.to)==0,N)return this.pos=N,this.atOccurrence=!0,this.pos.match||!0;var z=pe(w?this.doc.firstLine():this.doc.lastLine()+1,0);return this.pos={from:z,to:z},this.atOccurrence=!1},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(w,M){if(this.atOccurrence){var N=b.splitLines(w);this.doc.replaceRange(N,this.pos.from,this.pos.to,M),this.pos.to=pe(this.pos.from.line+N.length-1,N[N.length-1].length+(N.length==1?this.pos.from.ch:0))}}},b.defineExtension("getSearchCursor",function(w,M,N){return new O(this.doc,w,M,N)}),b.defineDocExtension("getSearchCursor",function(w,M,N){return new O(this,w,M,N)}),b.defineExtension("selectMatches",function(w,M){for(var N=[],z=this.getSearchCursor(w,this.getCursor("from"),M);z.findNext()&&!(b.cmpPos(z.to(),this.getCursor("to"))>0);)N.push({anchor:z.from(),head:z.to()});N.length&&this.setSelections(N,0)})})})()),Ha.exports}var qa={exports:{}},ja;function po(){return ja||(ja=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(te,oe,Q){var k=te.getWrapperElement(),I;return I=k.appendChild(document.createElement("div")),Q?I.className="CodeMirror-dialog CodeMirror-dialog-bottom":I.className="CodeMirror-dialog CodeMirror-dialog-top",typeof oe=="string"?I.innerHTML=oe:I.appendChild(oe),b.addClass(k,"dialog-opened"),I}function _(te,oe){te.state.currentNotificationClose&&te.state.currentNotificationClose(),te.state.currentNotificationClose=oe}b.defineExtension("openDialog",function(te,oe,Q){Q||(Q={}),_(this,null);var k=pe(this,te,Q.bottom),I=!1,Y=this;function ne(A){if(typeof A=="string")S.value=A;else{if(I)return;I=!0,b.rmClass(k.parentNode,"dialog-opened"),k.parentNode.removeChild(k),Y.focus(),Q.onClose&&Q.onClose(k)}}var S=k.getElementsByTagName("input")[0],R;return S?(S.focus(),Q.value&&(S.value=Q.value,Q.selectValueOnOpen!==!1&&S.select()),Q.onInput&&b.on(S,"input",function(A){Q.onInput(A,S.value,ne)}),Q.onKeyUp&&b.on(S,"keyup",function(A){Q.onKeyUp(A,S.value,ne)}),b.on(S,"keydown",function(A){Q&&Q.onKeyDown&&Q.onKeyDown(A,S.value,ne)||((A.keyCode==27||Q.closeOnEnter!==!1&&A.keyCode==13)&&(S.blur(),b.e_stop(A),ne()),A.keyCode==13&&oe(S.value,A))}),Q.closeOnBlur!==!1&&b.on(k,"focusout",function(A){A.relatedTarget!==null&&ne()})):(R=k.getElementsByTagName("button")[0])&&(b.on(R,"click",function(){ne(),Y.focus()}),Q.closeOnBlur!==!1&&b.on(R,"blur",ne),R.focus()),ne}),b.defineExtension("openConfirm",function(te,oe,Q){_(this,null);var k=pe(this,te,Q&&Q.bottom),I=k.getElementsByTagName("button"),Y=!1,ne=this,S=1;function R(){Y||(Y=!0,b.rmClass(k.parentNode,"dialog-opened"),k.parentNode.removeChild(k),ne.focus())}I[0].focus();for(var A=0;A<I.length;++A){var $=I[A];(function(ue){b.on($,"click",function(O){b.e_preventDefault(O),R(),ue&&ue(ne)})})(oe[A]),b.on($,"blur",function(){--S,setTimeout(function(){S<=0&&R()},200)}),b.on($,"focus",function(){++S})}}),b.defineExtension("openNotification",function(te,oe){_(this,ne);var Q=pe(this,te,oe&&oe.bottom),k=!1,I,Y=oe&&typeof oe.duration<"u"?oe.duration:5e3;function ne(){k||(k=!0,clearTimeout(I),b.rmClass(Q.parentNode,"dialog-opened"),Q.parentNode.removeChild(Q))}return b.on(Q,"click",function(S){b.e_preventDefault(S),ne()}),Y&&(I=setTimeout(ne,Y)),ne})})})()),qa.exports}var Ka;function uf(){return Ka||(Ka=1,(function(ct,xt){(function(b){b(mt(),Ja(),po())})(function(b){b.defineOption("search",{bottom:!1});function pe(p,W){return typeof p=="string"?p=new RegExp(p.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),W?"gi":"g"):p.global||(p=new RegExp(p.source,p.ignoreCase?"gi":"g")),{token:function(J){p.lastIndex=J.pos;var P=p.exec(J.string);if(P&&P.index==J.pos)return J.pos+=P[0].length||1,"searching";P?J.pos=P.index:J.skipToEnd()}}}function _(){this.posFrom=this.posTo=this.lastQuery=this.query=null,this.overlay=null}function te(p){return p.state.search||(p.state.search=new _)}function oe(p){return typeof p=="string"&&p==p.toLowerCase()}function Q(p,W,J){return p.getSearchCursor(W,J,{caseFold:oe(W),multiline:!0})}function k(p,W,J,P,V){p.openDialog(W,P,{value:J,selectValueOnOpen:!0,closeOnEnter:!1,onClose:function(){ue(p)},onKeyDown:V,bottom:p.options.search.bottom})}function I(p,W,J,P,V){p.openDialog?p.openDialog(W,V,{value:P,selectValueOnOpen:!0,bottom:p.options.search.bottom}):V(prompt(J,P))}function Y(p,W,J,P){p.openConfirm?p.openConfirm(W,P):confirm(J)&&P[0]()}function ne(p){return p.replace(/\\([nrt\\])/g,function(W,J){return J=="n"?`
`:J=="r"?"\r":J=="t"?"    ":J=="\\"?"\\":W})}function S(p){var W=p.match(/^\/(.*)\/([a-z]*)$/);if(W)try{p=new RegExp(W[1],W[2].indexOf("i")==-1?"":"i")}catch{}else p=ne(p);return(typeof p=="string"?p=="":p.test(""))&&(p=/x^/),p}function R(p,W,J){W.queryText=J,W.query=S(J),p.removeOverlay(W.overlay,oe(W.query)),W.overlay=pe(W.query,oe(W.query)),p.addOverlay(W.overlay),p.showMatchesOnScrollbar&&(W.annotate&&(W.annotate.clear(),W.annotate=null),W.annotate=p.showMatchesOnScrollbar(W.query,oe(W.query)))}function A(p,W,J,P){var V=te(p);if(V.query)return $(p,W);var F=p.getSelection()||V.lastQuery;if(F instanceof RegExp&&F.source=="x^"&&(F=null),J&&p.openDialog){var G=null,c=function(T,C){b.e_stop(C),T&&(T!=V.queryText&&(R(p,V,T),V.posFrom=V.posTo=p.getCursor()),G&&(G.style.opacity=1),$(p,C.shiftKey,function(g,y){var j;y.line<3&&document.querySelector&&(j=p.display.wrapper.querySelector(".CodeMirror-dialog"))&&j.getBoundingClientRect().bottom-4>p.cursorCoords(y,"window").top&&((G=j).style.opacity=.4)}))};k(p,w(p),F,c,function(T,C){var g=b.keyName(T),y=p.getOption("extraKeys"),j=y&&y[g]||b.keyMap[p.getOption("keyMap")][g];j=="findNext"||j=="findPrev"||j=="findPersistentNext"||j=="findPersistentPrev"?(b.e_stop(T),R(p,te(p),C),p.execCommand(j)):(j=="find"||j=="findPersistent")&&(b.e_stop(T),c(C,T))}),P&&F&&(R(p,V,F),$(p,W))}else I(p,w(p),"Search for:",F,function(T){T&&!V.query&&p.operation(function(){R(p,V,T),V.posFrom=V.posTo=p.getCursor(),$(p,W)})})}function $(p,W,J){p.operation(function(){var P=te(p),V=Q(p,P.query,W?P.posFrom:P.posTo);!V.find(W)&&(V=Q(p,P.query,W?b.Pos(p.lastLine()):b.Pos(p.firstLine(),0)),!V.find(W))||(p.setSelection(V.from(),V.to()),p.scrollIntoView({from:V.from(),to:V.to()},20),P.posFrom=V.from(),P.posTo=V.to(),J&&J(V.from(),V.to()))})}function ue(p){p.operation(function(){var W=te(p);W.lastQuery=W.query,W.query&&(W.query=W.queryText=null,p.removeOverlay(W.overlay),W.annotate&&(W.annotate.clear(),W.annotate=null))})}function O(p,W){var J=p?document.createElement(p):document.createDocumentFragment();for(var P in W)J[P]=W[P];for(var V=2;V<arguments.length;V++){var F=arguments[V];J.appendChild(typeof F=="string"?document.createTextNode(F):F)}return J}function w(p){var W=O("label",{className:"CodeMirror-search-label"},p.phrase("Search:"),O("input",{type:"text",style:"width: 10em",className:"CodeMirror-search-field",id:"CodeMirror-search-field"}));return W.setAttribute("for","CodeMirror-search-field"),O("",null,W," ",O("span",{style:"color: #666",className:"CodeMirror-search-hint"},p.phrase("(Use /re/ syntax for regexp search)")))}function M(p){return O("",null," ",O("input",{type:"text",style:"width: 10em",className:"CodeMirror-search-field"})," ",O("span",{style:"color: #666",className:"CodeMirror-search-hint"},p.phrase("(Use /re/ syntax for regexp search)")))}function N(p){return O("",null,O("span",{className:"CodeMirror-search-label"},p.phrase("With:"))," ",O("input",{type:"text",style:"width: 10em",className:"CodeMirror-search-field"}))}function z(p){return O("",null,O("span",{className:"CodeMirror-search-label"},p.phrase("Replace?"))," ",O("button",{},p.phrase("Yes"))," ",O("button",{},p.phrase("No"))," ",O("button",{},p.phrase("All"))," ",O("button",{},p.phrase("Stop")))}function X(p,W,J){p.operation(function(){for(var P=Q(p,W);P.findNext();)if(typeof W!="string"){var V=p.getRange(P.from(),P.to()).match(W);P.replace(J.replace(/\$(\d)/g,function(F,G){return V[G]}))}else P.replace(J)})}function q(p,W){if(!p.getOption("readOnly")){var J=p.getSelection()||te(p).lastQuery,P=W?p.phrase("Replace all:"):p.phrase("Replace:"),V=O("",null,O("span",{className:"CodeMirror-search-label"},P),M(p));I(p,V,P,J,function(F){F&&(F=S(F),I(p,N(p),p.phrase("Replace with:"),"",function(G){if(G=ne(G),W)X(p,F,G);else{ue(p);var c=Q(p,F,p.getCursor("from")),T=function(){var g=c.from(),y;!(y=c.findNext())&&(c=Q(p,F),!(y=c.findNext())||g&&c.from().line==g.line&&c.from().ch==g.ch)||(p.setSelection(c.from(),c.to()),p.scrollIntoView({from:c.from(),to:c.to()}),Y(p,z(p),p.phrase("Replace?"),[function(){C(y)},T,function(){X(p,F,G)}]))},C=function(g){c.replace(typeof F=="string"?G:G.replace(/\$(\d)/g,function(y,j){return g[j]})),T()};T()}}))})}}b.commands.find=function(p){ue(p),A(p)},b.commands.findPersistent=function(p){ue(p),A(p,!1,!0)},b.commands.findPersistentNext=function(p){A(p,!1,!0,!0)},b.commands.findPersistentPrev=function(p){A(p,!0,!0,!0)},b.commands.findNext=A,b.commands.findPrev=function(p){A(p,!0)},b.commands.clearSearch=ue,b.commands.replace=q,b.commands.replaceAll=function(p){q(p,!0)}})})()),Wa.exports}uf();Ja();var Ua={exports:{}},Ga;function ff(){return Ga||(Ga=1,(function(ct,xt){(function(b){b(mt(),po())})(function(b){b.defineOption("search",{bottom:!1});function pe(oe,Q,k,I,Y){oe.openDialog?oe.openDialog(Q,Y,{value:I,selectValueOnOpen:!0,bottom:oe.options.search.bottom}):Y(prompt(k,I))}function _(oe){return oe.phrase("Jump to line:")+' <input type="text" style="width: 10em" class="CodeMirror-search-field"/> <span style="color: #888" class="CodeMirror-search-hint">'+oe.phrase("(Use line:column or scroll% syntax)")+"</span>"}function te(oe,Q){var k=Number(Q);return/^[-+]/.test(Q)?oe.getCursor().line+k:k-1}b.commands.jumpToLine=function(oe){var Q=oe.getCursor();pe(oe,_(oe),oe.phrase("Jump to line:"),Q.line+1+":"+Q.ch,function(k){if(k){var I;if(I=/^\s*([\+\-]?\d+)\s*\:\s*(\d+)\s*$/.exec(k))oe.setCursor(te(oe,I[1]),Number(I[2]));else if(I=/^\s*([\+\-]?\d+(\.\d+)?)\%\s*/.exec(k)){var Y=Math.round(oe.lineCount()*Number(I[1])/100);/^[-+]/.test(I[1])&&(Y=Q.line+Y+1),oe.setCursor(Y-1,Q.ch)}else(I=/^\s*\:?\s*([\+\-]?\d+)\s*/.exec(k))&&oe.setCursor(te(oe,I[1]),Q.ch)}})},b.keyMap.default["Alt-G"]="jumpToLine"})})()),Ua.exports}ff();po();export{hf as default};
scripts/node_modules/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-BNmKHKpQ.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,264 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./codeMirrorModule-LEHpjmcn.js","./urlMatch-BYQrIQwR.js","../codeMirrorModule.DYBRYzYX.css"])))=>i.map(i=>d[i]);
import{i as mx}from"./urlMatch-BYQrIQwR.js";function yx(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var rh={exports:{}},ja={};/**
 * @license React
 * react-jsx-runtime.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var Fy;function bx(){if(Fy)return ja;Fy=1;var n=Symbol.for("react.transitional.element"),e=Symbol.for("react.fragment");function i(r,a,o){var u=null;if(o!==void 0&&(u=""+o),a.key!==void 0&&(u=""+a.key),"key"in a){o={};for(var f in a)f!=="key"&&(o[f]=a[f])}else o=a;return a=o.ref,{$$typeof:n,type:r,key:u,ref:a!==void 0?a:null,props:o}}return ja.Fragment=e,ja.jsx=i,ja.jsxs=i,ja}var Qy;function vx(){return Qy||(Qy=1,rh.exports=bx()),rh.exports}var b=vx(),ah={exports:{}},he={};/**
 * @license React
 * react.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var Py;function Sx(){if(Py)return he;Py=1;var n=Symbol.for("react.transitional.element"),e=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),g=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),y=Symbol.for("react.activity"),S=Symbol.iterator;function w(M){return M===null||typeof M!="object"?null:(M=S&&M[S]||M["@@iterator"],typeof M=="function"?M:null)}var E={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},x=Object.assign,_={};function A(M,X,W){this.props=M,this.context=X,this.refs=_,this.updater=W||E}A.prototype.isReactComponent={},A.prototype.setState=function(M,X){if(typeof M!="object"&&typeof M!="function"&&M!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,M,X,"setState")},A.prototype.forceUpdate=function(M){this.updater.enqueueForceUpdate(this,M,"forceUpdate")};function C(){}C.prototype=A.prototype;function H(M,X,W){this.props=M,this.context=X,this.refs=_,this.updater=W||E}var V=H.prototype=new C;V.constructor=H,x(V,A.prototype),V.isPureReactComponent=!0;var K=Array.isArray;function Q(){}var j={H:null,A:null,T:null,S:null},I=Object.prototype.hasOwnProperty;function O(M,X,W){var te=W.ref;return{$$typeof:n,type:M,key:X,ref:te!==void 0?te:null,props:W}}function P(M,X){return O(M.type,X,M.props)}function J(M){return typeof M=="object"&&M!==null&&M.$$typeof===n}function $(M){var X={"=":"=0",":":"=2"};return"$"+M.replace(/[=:]/g,function(W){return X[W]})}var ee=/\/+/g;function ce(M,X){return typeof M=="object"&&M!==null&&M.key!=null?$(""+M.key):X.toString(36)}function Me(M){switch(M.status){case"fulfilled":return M.value;case"rejected":throw M.reason;default:switch(typeof M.status=="string"?M.then(Q,Q):(M.status="pending",M.then(function(X){M.status==="pending"&&(M.status="fulfilled",M.value=X)},function(X){M.status==="pending"&&(M.status="rejected",M.reason=X)})),M.status){case"fulfilled":return M.value;case"rejected":throw M.reason}}throw M}function q(M,X,W,te,ue){var se=typeof M;(se==="undefined"||se==="boolean")&&(M=null);var xe=!1;if(M===null)xe=!0;else switch(se){case"bigint":case"string":case"number":xe=!0;break;case"object":switch(M.$$typeof){case n:case e:xe=!0;break;case m:return xe=M._init,q(xe(M._payload),X,W,te,ue)}}if(xe)return ue=ue(M),xe=te===""?"."+ce(M,0):te,K(ue)?(W="",xe!=null&&(W=xe.replace(ee,"$&/")+"/"),q(ue,X,W,"",function(Rn){return Rn})):ue!=null&&(J(ue)&&(ue=P(ue,W+(ue.key==null||M&&M.key===ue.key?"":(""+ue.key).replace(ee,"$&/")+"/")+xe)),X.push(ue)),1;xe=0;var nt=te===""?".":te+":";if(K(M))for(var Re=0;Re<M.length;Re++)te=M[Re],se=nt+ce(te,Re),xe+=q(te,X,W,se,ue);else if(Re=w(M),typeof Re=="function")for(M=Re.call(M),Re=0;!(te=M.next()).done;)te=te.value,se=nt+ce(te,Re++),xe+=q(te,X,W,se,ue);else if(se==="object"){if(typeof M.then=="function")return q(Me(M),X,W,te,ue);throw X=String(M),Error("Objects are not valid as a React child (found: "+(X==="[object Object]"?"object with keys {"+Object.keys(M).join(", ")+"}":X)+"). If you meant to render a collection of children, use an array instead.")}return xe}function Z(M,X,W){if(M==null)return M;var te=[],ue=0;return q(M,te,"","",function(se){return X.call(W,se,ue++)}),te}function re(M){if(M._status===-1){var X=M._result;X=X(),X.then(function(W){(M._status===0||M._status===-1)&&(M._status=1,M._result=W)},function(W){(M._status===0||M._status===-1)&&(M._status=2,M._result=W)}),M._status===-1&&(M._status=0,M._result=X)}if(M._status===1)return M._result.default;throw M._result}var me=typeof reportError=="function"?reportError:function(M){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var X=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof M=="object"&&M!==null&&typeof M.message=="string"?String(M.message):String(M),error:M});if(!window.dispatchEvent(X))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",M);return}console.error(M)},Ee={map:Z,forEach:function(M,X,W){Z(M,function(){X.apply(this,arguments)},W)},count:function(M){var X=0;return Z(M,function(){X++}),X},toArray:function(M){return Z(M,function(X){return X})||[]},only:function(M){if(!J(M))throw Error("React.Children.only expected to receive a single React element child.");return M}};return he.Activity=y,he.Children=Ee,he.Component=A,he.Fragment=i,he.Profiler=a,he.PureComponent=H,he.StrictMode=r,he.Suspense=d,he.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=j,he.__COMPILER_RUNTIME={__proto__:null,c:function(M){return j.H.useMemoCache(M)}},he.cache=function(M){return function(){return M.apply(null,arguments)}},he.cacheSignal=function(){return null},he.cloneElement=function(M,X,W){if(M==null)throw Error("The argument must be a React element, but you passed "+M+".");var te=x({},M.props),ue=M.key;if(X!=null)for(se in X.key!==void 0&&(ue=""+X.key),X)!I.call(X,se)||se==="key"||se==="__self"||se==="__source"||se==="ref"&&X.ref===void 0||(te[se]=X[se]);var se=arguments.length-2;if(se===1)te.children=W;else if(1<se){for(var xe=Array(se),nt=0;nt<se;nt++)xe[nt]=arguments[nt+2];te.children=xe}return O(M.type,ue,te)},he.createContext=function(M){return M={$$typeof:u,_currentValue:M,_currentValue2:M,_threadCount:0,Provider:null,Consumer:null},M.Provider=M,M.Consumer={$$typeof:o,_context:M},M},he.createElement=function(M,X,W){var te,ue={},se=null;if(X!=null)for(te in X.key!==void 0&&(se=""+X.key),X)I.call(X,te)&&te!=="key"&&te!=="__self"&&te!=="__source"&&(ue[te]=X[te]);var xe=arguments.length-2;if(xe===1)ue.children=W;else if(1<xe){for(var nt=Array(xe),Re=0;Re<xe;Re++)nt[Re]=arguments[Re+2];ue.children=nt}if(M&&M.defaultProps)for(te in xe=M.defaultProps,xe)ue[te]===void 0&&(ue[te]=xe[te]);return O(M,se,ue)},he.createRef=function(){return{current:null}},he.forwardRef=function(M){return{$$typeof:f,render:M}},he.isValidElement=J,he.lazy=function(M){return{$$typeof:m,_payload:{_status:-1,_result:M},_init:re}},he.memo=function(M,X){return{$$typeof:g,type:M,compare:X===void 0?null:X}},he.startTransition=function(M){var X=j.T,W={};j.T=W;try{var te=M(),ue=j.S;ue!==null&&ue(W,te),typeof te=="object"&&te!==null&&typeof te.then=="function"&&te.then(Q,me)}catch(se){me(se)}finally{X!==null&&W.types!==null&&(X.types=W.types),j.T=X}},he.unstable_useCacheRefresh=function(){return j.H.useCacheRefresh()},he.use=function(M){return j.H.use(M)},he.useActionState=function(M,X,W){return j.H.useActionState(M,X,W)},he.useCallback=function(M,X){return j.H.useCallback(M,X)},he.useContext=function(M){return j.H.useContext(M)},he.useDebugValue=function(){},he.useDeferredValue=function(M,X){return j.H.useDeferredValue(M,X)},he.useEffect=function(M,X){return j.H.useEffect(M,X)},he.useEffectEvent=function(M){return j.H.useEffectEvent(M)},he.useId=function(){return j.H.useId()},he.useImperativeHandle=function(M,X,W){return j.H.useImperativeHandle(M,X,W)},he.useInsertionEffect=function(M,X){return j.H.useInsertionEffect(M,X)},he.useLayoutEffect=function(M,X){return j.H.useLayoutEffect(M,X)},he.useMemo=function(M,X){return j.H.useMemo(M,X)},he.useOptimistic=function(M,X){return j.H.useOptimistic(M,X)},he.useReducer=function(M,X,W){return j.H.useReducer(M,X,W)},he.useRef=function(M){return j.H.useRef(M)},he.useState=function(M){return j.H.useState(M)},he.useSyncExternalStore=function(M,X,W){return j.H.useSyncExternalStore(M,X,W)},he.useTransition=function(){return j.H.useTransition()},he.version="19.2.1",he}var Jy;function ed(){return Jy||(Jy=1,ah.exports=Sx()),ah.exports}var R=ed();const Et=yx(R);function yc(n,e,i,r){const[a,o]=Et.useState(i);return Et.useEffect(()=>{let u=!1;return n().then(f=>{u||o(f)}),()=>{u=!0}},e),a}function gs(){const n=Et.useRef(null),[e]=kh(n);return[e,n]}function kh(n){const[e,i]=Et.useState(new DOMRect(0,0,10,10)),r=Et.useCallback(()=>{const a=n==null?void 0:n.current;a&&i(a.getBoundingClientRect())},[n]);return Et.useLayoutEffect(()=>{const a=n==null?void 0:n.current;if(!a)return;r();const o=new ResizeObserver(r);return o.observe(a),window.addEventListener("resize",r),()=>{o.disconnect(),window.removeEventListener("resize",r)}},[r,n]),[e,r]}function u0(n,e,i,r,a){let o=0,u=n.length;for(;o<u;){const f=o+u>>1;i(e,n[f])>=0?o=f+1:u=f}return u}function Zy(n){const e=document.createElement("textarea");e.style.position="absolute",e.style.zIndex="-1000",e.value=n,document.body.appendChild(e),e.select(),document.execCommand("copy"),e.remove()}function jt(n,e){n&&(e=ls.getObject(n,e));const[i,r]=Et.useState(e),a=Et.useCallback(o=>{n?ls.setObject(n,o):r(o)},[n,r]);return Et.useEffect(()=>{if(n){const o=()=>r(ls.getObject(n,e));return ls.onChangeEmitter.addEventListener(n,o),()=>ls.onChangeEmitter.removeEventListener(n,o)}},[e,n]),[i,a]}const Mh=new Map,f0=new Map;let sc;function or(n,e){const[i,r]=Et.useState();f0.set(n,{setter:r,defaultValue:e});const a=Et.useCallback(o=>{const u=Mh.get(sc||"default")||{};u[n]=o,Mh.set(sc||"default",u),r(o)},[n]);return[i,a]}function wx(n){if(sc===n)return;sc=n;const e=Mh.get(n)||{};for(const[i,r]of f0.entries())r.setter(e[i]||r.defaultValue)}class xx{constructor(){this.onChangeEmitter=new EventTarget}getString(e,i){return localStorage[e]||i}setString(e,i){var r;localStorage[e]=i,this.onChangeEmitter.dispatchEvent(new Event(e)),(r=window.saveSettings)==null||r.call(window)}getObject(e,i){if(!localStorage[e])return i;try{return JSON.parse(localStorage[e])}catch{return i}}setObject(e,i){var r;localStorage[e]=JSON.stringify(i),this.onChangeEmitter.dispatchEvent(new Event(e)),(r=window.saveSettings)==null||r.call(window)}}const ls=new xx;function ut(...n){return n.filter(Boolean).join(" ")}function td(n){n&&(n!=null&&n.scrollIntoViewIfNeeded?n.scrollIntoViewIfNeeded(!1):n==null||n.scrollIntoView())}const Wy="\\u0000-\\u0020\\u007f-\\u009f",h0=new RegExp("(?:[a-zA-Z][a-zA-Z0-9+.-]{2,}:\\/\\/|www\\.)[^\\s"+Wy+'"]{2,}[^\\s'+Wy+`"')}\\],:;.!?]`,"ug");function _x(){const[n,e]=Et.useState(!1),i=Et.useCallback(()=>{const r=[];return e(a=>(r.push(setTimeout(()=>e(!1),1e3)),a?(r.push(setTimeout(()=>e(!0),50)),!1):!0)),()=>r.forEach(clearTimeout)},[e]);return[n,i]}const Ex="system",d0="theme",Tx=[{label:"Dark mode",value:"dark-mode"},{label:"Light mode",value:"light-mode"},{label:"System",value:"system"}],p0=window.matchMedia("(prefers-color-scheme: dark)");function B2(){document.playwrightThemeInitialized||(document.playwrightThemeInitialized=!0,document.defaultView.addEventListener("focus",n=>{n.target.document.nodeType===Node.DOCUMENT_NODE&&document.body.classList.remove("inactive")},!1),document.defaultView.addEventListener("blur",n=>{document.body.classList.add("inactive")},!1),Oh(jh()),p0.addEventListener("change",()=>{Oh(jh())}))}const nd=new Set;function Oh(n){const e=Ax(),i=n==="system"?p0.matches?"dark-mode":"light-mode":n;if(e!==i){e&&document.documentElement.classList.remove(e),document.documentElement.classList.add(i);for(const r of nd)r(i)}}function q2(n){nd.add(n)}function $2(n){nd.delete(n)}function jh(){return ls.getString(d0,Ex)}function Ax(){return document.documentElement.classList.contains("dark-mode")?"dark-mode":document.documentElement.classList.contains("light-mode")?"light-mode":null}function Cx(){const[n,e]=Et.useState(jh());return Et.useEffect(()=>{ls.setString(d0,n),Oh(n)},[n]),[n,e]}var lh={exports:{}},La={},oh={exports:{}},ch={};/**
 * @license React
 * scheduler.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var eb;function Nx(){return eb||(eb=1,(function(n){function e(q,Z){var re=q.length;q.push(Z);e:for(;0<re;){var me=re-1>>>1,Ee=q[me];if(0<a(Ee,Z))q[me]=Z,q[re]=Ee,re=me;else break e}}function i(q){return q.length===0?null:q[0]}function r(q){if(q.length===0)return null;var Z=q[0],re=q.pop();if(re!==Z){q[0]=re;e:for(var me=0,Ee=q.length,M=Ee>>>1;me<M;){var X=2*(me+1)-1,W=q[X],te=X+1,ue=q[te];if(0>a(W,re))te<Ee&&0>a(ue,W)?(q[me]=ue,q[te]=re,me=te):(q[me]=W,q[X]=re,me=X);else if(te<Ee&&0>a(ue,re))q[me]=ue,q[te]=re,me=te;else break e}}return Z}function a(q,Z){var re=q.sortIndex-Z.sortIndex;return re!==0?re:q.id-Z.id}if(n.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;n.unstable_now=function(){return o.now()}}else{var u=Date,f=u.now();n.unstable_now=function(){return u.now()-f}}var d=[],g=[],m=1,y=null,S=3,w=!1,E=!1,x=!1,_=!1,A=typeof setTimeout=="function"?setTimeout:null,C=typeof clearTimeout=="function"?clearTimeout:null,H=typeof setImmediate<"u"?setImmediate:null;function V(q){for(var Z=i(g);Z!==null;){if(Z.callback===null)r(g);else if(Z.startTime<=q)r(g),Z.sortIndex=Z.expirationTime,e(d,Z);else break;Z=i(g)}}function K(q){if(x=!1,V(q),!E)if(i(d)!==null)E=!0,Q||(Q=!0,$());else{var Z=i(g);Z!==null&&Me(K,Z.startTime-q)}}var Q=!1,j=-1,I=5,O=-1;function P(){return _?!0:!(n.unstable_now()-O<I)}function J(){if(_=!1,Q){var q=n.unstable_now();O=q;var Z=!0;try{e:{E=!1,x&&(x=!1,C(j),j=-1),w=!0;var re=S;try{t:{for(V(q),y=i(d);y!==null&&!(y.expirationTime>q&&P());){var me=y.callback;if(typeof me=="function"){y.callback=null,S=y.priorityLevel;var Ee=me(y.expirationTime<=q);if(q=n.unstable_now(),typeof Ee=="function"){y.callback=Ee,V(q),Z=!0;break t}y===i(d)&&r(d),V(q)}else r(d);y=i(d)}if(y!==null)Z=!0;else{var M=i(g);M!==null&&Me(K,M.startTime-q),Z=!1}}break e}finally{y=null,S=re,w=!1}Z=void 0}}finally{Z?$():Q=!1}}}var $;if(typeof H=="function")$=function(){H(J)};else if(typeof MessageChannel<"u"){var ee=new MessageChannel,ce=ee.port2;ee.port1.onmessage=J,$=function(){ce.postMessage(null)}}else $=function(){A(J,0)};function Me(q,Z){j=A(function(){q(n.unstable_now())},Z)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(q){q.callback=null},n.unstable_forceFrameRate=function(q){0>q||125<q?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):I=0<q?Math.floor(1e3/q):5},n.unstable_getCurrentPriorityLevel=function(){return S},n.unstable_next=function(q){switch(S){case 1:case 2:case 3:var Z=3;break;default:Z=S}var re=S;S=Z;try{return q()}finally{S=re}},n.unstable_requestPaint=function(){_=!0},n.unstable_runWithPriority=function(q,Z){switch(q){case 1:case 2:case 3:case 4:case 5:break;default:q=3}var re=S;S=q;try{return Z()}finally{S=re}},n.unstable_scheduleCallback=function(q,Z,re){var me=n.unstable_now();switch(typeof re=="object"&&re!==null?(re=re.delay,re=typeof re=="number"&&0<re?me+re:me):re=me,q){case 1:var Ee=-1;break;case 2:Ee=250;break;case 5:Ee=1073741823;break;case 4:Ee=1e4;break;default:Ee=5e3}return Ee=re+Ee,q={id:m++,callback:Z,priorityLevel:q,startTime:re,expirationTime:Ee,sortIndex:-1},re>me?(q.sortIndex=re,e(g,q),i(d)===null&&q===i(g)&&(x?(C(j),j=-1):x=!0,Me(K,re-me))):(q.sortIndex=Ee,e(d,q),E||w||(E=!0,Q||(Q=!0,$()))),q},n.unstable_shouldYield=P,n.unstable_wrapCallback=function(q){var Z=S;return function(){var re=S;S=Z;try{return q.apply(this,arguments)}finally{S=re}}}})(ch)),ch}var tb;function kx(){return tb||(tb=1,oh.exports=Nx()),oh.exports}var uh={exports:{}},At={};/**
 * @license React
 * react-dom.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var nb;function Mx(){if(nb)return At;nb=1;var n=ed();function e(d){var g="https://react.dev/errors/"+d;if(1<arguments.length){g+="?args[]="+encodeURIComponent(arguments[1]);for(var m=2;m<arguments.length;m++)g+="&args[]="+encodeURIComponent(arguments[m])}return"Minified React error #"+d+"; visit "+g+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function i(){}var r={d:{f:i,r:function(){throw Error(e(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},a=Symbol.for("react.portal");function o(d,g,m){var y=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:y==null?null:""+y,children:d,containerInfo:g,implementation:m}}var u=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function f(d,g){if(d==="font")return"";if(typeof g=="string")return g==="use-credentials"?g:""}return At.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=r,At.createPortal=function(d,g){var m=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!g||g.nodeType!==1&&g.nodeType!==9&&g.nodeType!==11)throw Error(e(299));return o(d,g,null,m)},At.flushSync=function(d){var g=u.T,m=r.p;try{if(u.T=null,r.p=2,d)return d()}finally{u.T=g,r.p=m,r.d.f()}},At.preconnect=function(d,g){typeof d=="string"&&(g?(g=g.crossOrigin,g=typeof g=="string"?g==="use-credentials"?g:"":void 0):g=null,r.d.C(d,g))},At.prefetchDNS=function(d){typeof d=="string"&&r.d.D(d)},At.preinit=function(d,g){if(typeof d=="string"&&g&&typeof g.as=="string"){var m=g.as,y=f(m,g.crossOrigin),S=typeof g.integrity=="string"?g.integrity:void 0,w=typeof g.fetchPriority=="string"?g.fetchPriority:void 0;m==="style"?r.d.S(d,typeof g.precedence=="string"?g.precedence:void 0,{crossOrigin:y,integrity:S,fetchPriority:w}):m==="script"&&r.d.X(d,{crossOrigin:y,integrity:S,fetchPriority:w,nonce:typeof g.nonce=="string"?g.nonce:void 0})}},At.preinitModule=function(d,g){if(typeof d=="string")if(typeof g=="object"&&g!==null){if(g.as==null||g.as==="script"){var m=f(g.as,g.crossOrigin);r.d.M(d,{crossOrigin:m,integrity:typeof g.integrity=="string"?g.integrity:void 0,nonce:typeof g.nonce=="string"?g.nonce:void 0})}}else g==null&&r.d.M(d)},At.preload=function(d,g){if(typeof d=="string"&&typeof g=="object"&&g!==null&&typeof g.as=="string"){var m=g.as,y=f(m,g.crossOrigin);r.d.L(d,m,{crossOrigin:y,integrity:typeof g.integrity=="string"?g.integrity:void 0,nonce:typeof g.nonce=="string"?g.nonce:void 0,type:typeof g.type=="string"?g.type:void 0,fetchPriority:typeof g.fetchPriority=="string"?g.fetchPriority:void 0,referrerPolicy:typeof g.referrerPolicy=="string"?g.referrerPolicy:void 0,imageSrcSet:typeof g.imageSrcSet=="string"?g.imageSrcSet:void 0,imageSizes:typeof g.imageSizes=="string"?g.imageSizes:void 0,media:typeof g.media=="string"?g.media:void 0})}},At.preloadModule=function(d,g){if(typeof d=="string")if(g){var m=f(g.as,g.crossOrigin);r.d.m(d,{as:typeof g.as=="string"&&g.as!=="script"?g.as:void 0,crossOrigin:m,integrity:typeof g.integrity=="string"?g.integrity:void 0})}else r.d.m(d)},At.requestFormReset=function(d){r.d.r(d)},At.unstable_batchedUpdates=function(d,g){return d(g)},At.useFormState=function(d,g,m){return u.H.useFormState(d,g,m)},At.useFormStatus=function(){return u.H.useHostTransitionStatus()},At.version="19.2.1",At}var ib;function Ox(){if(ib)return uh.exports;ib=1;function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}return n(),uh.exports=Mx(),uh.exports}/**
 * @license React
 * react-dom-client.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var sb;function jx(){if(sb)return La;sb=1;var n=kx(),e=ed(),i=Ox();function r(t){var s="https://react.dev/errors/"+t;if(1<arguments.length){s+="?args[]="+encodeURIComponent(arguments[1]);for(var l=2;l<arguments.length;l++)s+="&args[]="+encodeURIComponent(arguments[l])}return"Minified React error #"+t+"; visit "+s+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function a(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function o(t){var s=t,l=t;if(t.alternate)for(;s.return;)s=s.return;else{t=s;do s=t,(s.flags&4098)!==0&&(l=s.return),t=s.return;while(t)}return s.tag===3?l:null}function u(t){if(t.tag===13){var s=t.memoizedState;if(s===null&&(t=t.alternate,t!==null&&(s=t.memoizedState)),s!==null)return s.dehydrated}return null}function f(t){if(t.tag===31){var s=t.memoizedState;if(s===null&&(t=t.alternate,t!==null&&(s=t.memoizedState)),s!==null)return s.dehydrated}return null}function d(t){if(o(t)!==t)throw Error(r(188))}function g(t){var s=t.alternate;if(!s){if(s=o(t),s===null)throw Error(r(188));return s!==t?null:t}for(var l=t,c=s;;){var h=l.return;if(h===null)break;var p=h.alternate;if(p===null){if(c=h.return,c!==null){l=c;continue}break}if(h.child===p.child){for(p=h.child;p;){if(p===l)return d(h),t;if(p===c)return d(h),s;p=p.sibling}throw Error(r(188))}if(l.return!==c.return)l=h,c=p;else{for(var v=!1,T=h.child;T;){if(T===l){v=!0,l=h,c=p;break}if(T===c){v=!0,c=h,l=p;break}T=T.sibling}if(!v){for(T=p.child;T;){if(T===l){v=!0,l=p,c=h;break}if(T===c){v=!0,c=p,l=h;break}T=T.sibling}if(!v)throw Error(r(189))}}if(l.alternate!==c)throw Error(r(190))}if(l.tag!==3)throw Error(r(188));return l.stateNode.current===l?t:s}function m(t){var s=t.tag;if(s===5||s===26||s===27||s===6)return t;for(t=t.child;t!==null;){if(s=m(t),s!==null)return s;t=t.sibling}return null}var y=Object.assign,S=Symbol.for("react.element"),w=Symbol.for("react.transitional.element"),E=Symbol.for("react.portal"),x=Symbol.for("react.fragment"),_=Symbol.for("react.strict_mode"),A=Symbol.for("react.profiler"),C=Symbol.for("react.consumer"),H=Symbol.for("react.context"),V=Symbol.for("react.forward_ref"),K=Symbol.for("react.suspense"),Q=Symbol.for("react.suspense_list"),j=Symbol.for("react.memo"),I=Symbol.for("react.lazy"),O=Symbol.for("react.activity"),P=Symbol.for("react.memo_cache_sentinel"),J=Symbol.iterator;function $(t){return t===null||typeof t!="object"?null:(t=J&&t[J]||t["@@iterator"],typeof t=="function"?t:null)}var ee=Symbol.for("react.client.reference");function ce(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===ee?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case x:return"Fragment";case A:return"Profiler";case _:return"StrictMode";case K:return"Suspense";case Q:return"SuspenseList";case O:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case E:return"Portal";case H:return t.displayName||"Context";case C:return(t._context.displayName||"Context")+".Consumer";case V:var s=t.render;return t=t.displayName,t||(t=s.displayName||s.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case j:return s=t.displayName||null,s!==null?s:ce(t.type)||"Memo";case I:s=t._payload,t=t._init;try{return ce(t(s))}catch{}}return null}var Me=Array.isArray,q=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Z=i.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,re={pending:!1,data:null,method:null,action:null},me=[],Ee=-1;function M(t){return{current:t}}function X(t){0>Ee||(t.current=me[Ee],me[Ee]=null,Ee--)}function W(t,s){Ee++,me[Ee]=t.current,t.current=s}var te=M(null),ue=M(null),se=M(null),xe=M(null);function nt(t,s){switch(W(se,s),W(ue,t),W(te,null),s.nodeType){case 9:case 11:t=(t=s.documentElement)&&(t=t.namespaceURI)?yy(t):0;break;default:if(t=s.tagName,s=s.namespaceURI)s=yy(s),t=by(s,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}X(te),W(te,t)}function Re(){X(te),X(ue),X(se)}function Rn(t){t.memoizedState!==null&&W(xe,t);var s=te.current,l=by(s,t.type);s!==l&&(W(ue,t),W(te,l))}function fe(t){ue.current===t&&(X(te),X(ue)),xe.current===t&&(X(xe),Na._currentValue=re)}var _e,Ue;function He(t){if(_e===void 0)try{throw Error()}catch(l){var s=l.stack.trim().match(/\n( *(at )?)/);_e=s&&s[1]||"",Ue=-1<l.stack.indexOf(`
    at`)?" (<anonymous>)":-1<l.stack.indexOf("@")?"@unknown:0:0":""}return`
`+_e+t+Ue}var Xt=!1;function Ye(t,s){if(!t||Xt)return"";Xt=!0;var l=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var c={DetermineComponentFrameRoot:function(){try{if(s){var F=function(){throw Error()};if(Object.defineProperty(F.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(F,[])}catch(B){var U=B}Reflect.construct(t,[],F)}else{try{F.call()}catch(B){U=B}t.call(F.prototype)}}else{try{throw Error()}catch(B){U=B}(F=t())&&typeof F.catch=="function"&&F.catch(function(){})}}catch(B){if(B&&U&&typeof B.stack=="string")return[B.stack,U.stack]}return[null,null]}};c.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var h=Object.getOwnPropertyDescriptor(c.DetermineComponentFrameRoot,"name");h&&h.configurable&&Object.defineProperty(c.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var p=c.DetermineComponentFrameRoot(),v=p[0],T=p[1];if(v&&T){var N=v.split(`
`),z=T.split(`
`);for(h=c=0;c<N.length&&!N[c].includes("DetermineComponentFrameRoot");)c++;for(;h<z.length&&!z[h].includes("DetermineComponentFrameRoot");)h++;if(c===N.length||h===z.length)for(c=N.length-1,h=z.length-1;1<=c&&0<=h&&N[c]!==z[h];)h--;for(;1<=c&&0<=h;c--,h--)if(N[c]!==z[h]){if(c!==1||h!==1)do if(c--,h--,0>h||N[c]!==z[h]){var G=`
`+N[c].replace(" at new "," at ");return t.displayName&&G.includes("<anonymous>")&&(G=G.replace("<anonymous>",t.displayName)),G}while(1<=c&&0<=h);break}}}finally{Xt=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?He(l):""}function Yt(t,s){switch(t.tag){case 26:case 27:case 5:return He(t.type);case 16:return He("Lazy");case 13:return t.child!==s&&s!==null?He("Suspense Fallback"):He("Suspense");case 19:return He("SuspenseList");case 0:case 15:return Ye(t.type,!1);case 11:return Ye(t.type.render,!1);case 1:return Ye(t.type,!0);case 31:return He("Activity");default:return""}}function bs(t){try{var s="",l=null;do s+=Yt(t,l),l=t,t=t.return;while(t);return s}catch(c){return`
Error generating stack: `+c.message+`
`+c.stack}}var qr=Object.prototype.hasOwnProperty,vs=n.unstable_scheduleCallback,Ss=n.unstable_cancelCallback,ws=n.unstable_shouldYield,qc=n.unstable_requestPaint,it=n.unstable_now,$c=n.unstable_getCurrentPriorityLevel,yl=n.unstable_ImmediatePriority,bl=n.unstable_UserBlockingPriority,xs=n.unstable_NormalPriority,vl=n.unstable_LowPriority,_s=n.unstable_IdlePriority,Ic=n.log,Vc=n.unstable_setDisableYieldValue,Bi=null,ft=null;function Ft(t){if(typeof Ic=="function"&&Vc(t),ft&&typeof ft.setStrictMode=="function")try{ft.setStrictMode(Bi,t)}catch{}}var kt=Math.clz32?Math.clz32:Sl,Gc=Math.log,Kc=Math.LN2;function Sl(t){return t>>>=0,t===0?32:31-(Gc(t)/Kc|0)|0}var le=256,Tn=262144,sn=4194304;function qi(t){var s=t&42;if(s!==0)return s;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function wl(t,s,l){var c=t.pendingLanes;if(c===0)return 0;var h=0,p=t.suspendedLanes,v=t.pingedLanes;t=t.warmLanes;var T=c&134217727;return T!==0?(c=T&~p,c!==0?h=qi(c):(v&=T,v!==0?h=qi(v):l||(l=T&~t,l!==0&&(h=qi(l))))):(T=c&~p,T!==0?h=qi(T):v!==0?h=qi(v):l||(l=c&~t,l!==0&&(h=qi(l)))),h===0?0:s!==0&&s!==h&&(s&p)===0&&(p=h&-h,l=s&-s,p>=l||p===32&&(l&4194048)!==0)?s:h}function $r(t,s){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&s)===0}function iw(t,s){switch(t){case 1:case 2:case 4:case 8:case 64:return s+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return s+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zd(){var t=sn;return sn<<=1,(sn&62914560)===0&&(sn=4194304),t}function Xc(t){for(var s=[],l=0;31>l;l++)s.push(t);return s}function Ir(t,s){t.pendingLanes|=s,s!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function sw(t,s,l,c,h,p){var v=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var T=t.entanglements,N=t.expirationTimes,z=t.hiddenUpdates;for(l=v&~l;0<l;){var G=31-kt(l),F=1<<G;T[G]=0,N[G]=-1;var U=z[G];if(U!==null)for(z[G]=null,G=0;G<U.length;G++){var B=U[G];B!==null&&(B.lane&=-536870913)}l&=~F}c!==0&&Wd(t,c,0),p!==0&&h===0&&t.tag!==0&&(t.suspendedLanes|=p&~(v&~s))}function Wd(t,s,l){t.pendingLanes|=s,t.suspendedLanes&=~s;var c=31-kt(s);t.entangledLanes|=s,t.entanglements[c]=t.entanglements[c]|1073741824|l&261930}function ep(t,s){var l=t.entangledLanes|=s;for(t=t.entanglements;l;){var c=31-kt(l),h=1<<c;h&s|t[c]&s&&(t[c]|=s),l&=~h}}function tp(t,s){var l=s&-s;return l=(l&42)!==0?1:Yc(l),(l&(t.suspendedLanes|s))!==0?0:l}function Yc(t){switch(t){case 2:t=1;break;case 8:t=4;break;case 32:t=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:t=128;break;case 268435456:t=134217728;break;default:t=0}return t}function Fc(t){return t&=-t,2<t?8<t?(t&134217727)!==0?32:268435456:8:2}function np(){var t=Z.p;return t!==0?t:(t=window.event,t===void 0?32:$y(t.type))}function ip(t,s){var l=Z.p;try{return Z.p=t,s()}finally{Z.p=l}}var li=Math.random().toString(36).slice(2),bt="__reactFiber$"+li,Lt="__reactProps$"+li,Es="__reactContainer$"+li,Qc="__reactEvents$"+li,rw="__reactListeners$"+li,aw="__reactHandles$"+li,sp="__reactResources$"+li,Vr="__reactMarker$"+li;function Pc(t){delete t[bt],delete t[Lt],delete t[Qc],delete t[rw],delete t[aw]}function Ts(t){var s=t[bt];if(s)return s;for(var l=t.parentNode;l;){if(s=l[Es]||l[bt]){if(l=s.alternate,s.child!==null||l!==null&&l.child!==null)for(t=Ty(t);t!==null;){if(l=t[bt])return l;t=Ty(t)}return s}t=l,l=t.parentNode}return null}function As(t){if(t=t[bt]||t[Es]){var s=t.tag;if(s===5||s===6||s===13||s===31||s===26||s===27||s===3)return t}return null}function Gr(t){var s=t.tag;if(s===5||s===26||s===27||s===6)return t.stateNode;throw Error(r(33))}function Cs(t){var s=t[sp];return s||(s=t[sp]={hoistableStyles:new Map,hoistableScripts:new Map}),s}function gt(t){t[Vr]=!0}var rp=new Set,ap={};function $i(t,s){Ns(t,s),Ns(t+"Capture",s)}function Ns(t,s){for(ap[t]=s,t=0;t<s.length;t++)rp.add(s[t])}var lw=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),lp={},op={};function ow(t){return qr.call(op,t)?!0:qr.call(lp,t)?!1:lw.test(t)?op[t]=!0:(lp[t]=!0,!1)}function xl(t,s,l){if(ow(s))if(l===null)t.removeAttribute(s);else{switch(typeof l){case"undefined":case"function":case"symbol":t.removeAttribute(s);return;case"boolean":var c=s.toLowerCase().slice(0,5);if(c!=="data-"&&c!=="aria-"){t.removeAttribute(s);return}}t.setAttribute(s,""+l)}}function _l(t,s,l){if(l===null)t.removeAttribute(s);else{switch(typeof l){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(s);return}t.setAttribute(s,""+l)}}function Dn(t,s,l,c){if(c===null)t.removeAttribute(l);else{switch(typeof c){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(l);return}t.setAttributeNS(s,l,""+c)}}function rn(t){switch(typeof t){case"bigint":case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function cp(t){var s=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(s==="checkbox"||s==="radio")}function cw(t,s,l){var c=Object.getOwnPropertyDescriptor(t.constructor.prototype,s);if(!t.hasOwnProperty(s)&&typeof c<"u"&&typeof c.get=="function"&&typeof c.set=="function"){var h=c.get,p=c.set;return Object.defineProperty(t,s,{configurable:!0,get:function(){return h.call(this)},set:function(v){l=""+v,p.call(this,v)}}),Object.defineProperty(t,s,{enumerable:c.enumerable}),{getValue:function(){return l},setValue:function(v){l=""+v},stopTracking:function(){t._valueTracker=null,delete t[s]}}}}function Jc(t){if(!t._valueTracker){var s=cp(t)?"checked":"value";t._valueTracker=cw(t,s,""+t[s])}}function up(t){if(!t)return!1;var s=t._valueTracker;if(!s)return!0;var l=s.getValue(),c="";return t&&(c=cp(t)?t.checked?"true":"false":t.value),t=c,t!==l?(s.setValue(t),!0):!1}function El(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var uw=/[\n"\\]/g;function an(t){return t.replace(uw,function(s){return"\\"+s.charCodeAt(0).toString(16)+" "})}function Zc(t,s,l,c,h,p,v,T){t.name="",v!=null&&typeof v!="function"&&typeof v!="symbol"&&typeof v!="boolean"?t.type=v:t.removeAttribute("type"),s!=null?v==="number"?(s===0&&t.value===""||t.value!=s)&&(t.value=""+rn(s)):t.value!==""+rn(s)&&(t.value=""+rn(s)):v!=="submit"&&v!=="reset"||t.removeAttribute("value"),s!=null?Wc(t,v,rn(s)):l!=null?Wc(t,v,rn(l)):c!=null&&t.removeAttribute("value"),h==null&&p!=null&&(t.defaultChecked=!!p),h!=null&&(t.checked=h&&typeof h!="function"&&typeof h!="symbol"),T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"?t.name=""+rn(T):t.removeAttribute("name")}function fp(t,s,l,c,h,p,v,T){if(p!=null&&typeof p!="function"&&typeof p!="symbol"&&typeof p!="boolean"&&(t.type=p),s!=null||l!=null){if(!(p!=="submit"&&p!=="reset"||s!=null)){Jc(t);return}l=l!=null?""+rn(l):"",s=s!=null?""+rn(s):l,T||s===t.value||(t.value=s),t.defaultValue=s}c=c??h,c=typeof c!="function"&&typeof c!="symbol"&&!!c,t.checked=T?t.checked:!!c,t.defaultChecked=!!c,v!=null&&typeof v!="function"&&typeof v!="symbol"&&typeof v!="boolean"&&(t.name=v),Jc(t)}function Wc(t,s,l){s==="number"&&El(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function ks(t,s,l,c){if(t=t.options,s){s={};for(var h=0;h<l.length;h++)s["$"+l[h]]=!0;for(l=0;l<t.length;l++)h=s.hasOwnProperty("$"+t[l].value),t[l].selected!==h&&(t[l].selected=h),h&&c&&(t[l].defaultSelected=!0)}else{for(l=""+rn(l),s=null,h=0;h<t.length;h++){if(t[h].value===l){t[h].selected=!0,c&&(t[h].defaultSelected=!0);return}s!==null||t[h].disabled||(s=t[h])}s!==null&&(s.selected=!0)}}function hp(t,s,l){if(s!=null&&(s=""+rn(s),s!==t.value&&(t.value=s),l==null)){t.defaultValue!==s&&(t.defaultValue=s);return}t.defaultValue=l!=null?""+rn(l):""}function dp(t,s,l,c){if(s==null){if(c!=null){if(l!=null)throw Error(r(92));if(Me(c)){if(1<c.length)throw Error(r(93));c=c[0]}l=c}l==null&&(l=""),s=l}l=rn(s),t.defaultValue=l,c=t.textContent,c===l&&c!==""&&c!==null&&(t.value=c),Jc(t)}function Ms(t,s){if(s){var l=t.firstChild;if(l&&l===t.lastChild&&l.nodeType===3){l.nodeValue=s;return}}t.textContent=s}var fw=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function pp(t,s,l){var c=s.indexOf("--")===0;l==null||typeof l=="boolean"||l===""?c?t.setProperty(s,""):s==="float"?t.cssFloat="":t[s]="":c?t.setProperty(s,l):typeof l!="number"||l===0||fw.has(s)?s==="float"?t.cssFloat=l:t[s]=(""+l).trim():t[s]=l+"px"}function gp(t,s,l){if(s!=null&&typeof s!="object")throw Error(r(62));if(t=t.style,l!=null){for(var c in l)!l.hasOwnProperty(c)||s!=null&&s.hasOwnProperty(c)||(c.indexOf("--")===0?t.setProperty(c,""):c==="float"?t.cssFloat="":t[c]="");for(var h in s)c=s[h],s.hasOwnProperty(h)&&l[h]!==c&&pp(t,h,c)}else for(var p in s)s.hasOwnProperty(p)&&pp(t,p,s[p])}function eu(t){if(t.indexOf("-")===-1)return!1;switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var hw=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),dw=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Tl(t){return dw.test(""+t)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":t}function zn(){}var tu=null;function nu(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var Os=null,js=null;function mp(t){var s=As(t);if(s&&(t=s.stateNode)){var l=t[Lt]||null;e:switch(t=s.stateNode,s.type){case"input":if(Zc(t,l.value,l.defaultValue,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name),s=l.name,l.type==="radio"&&s!=null){for(l=t;l.parentNode;)l=l.parentNode;for(l=l.querySelectorAll('input[name="'+an(""+s)+'"][type="radio"]'),s=0;s<l.length;s++){var c=l[s];if(c!==t&&c.form===t.form){var h=c[Lt]||null;if(!h)throw Error(r(90));Zc(c,h.value,h.defaultValue,h.defaultValue,h.checked,h.defaultChecked,h.type,h.name)}}for(s=0;s<l.length;s++)c=l[s],c.form===t.form&&up(c)}break e;case"textarea":hp(t,l.value,l.defaultValue);break e;case"select":s=l.value,s!=null&&ks(t,!!l.multiple,s,!1)}}}var iu=!1;function yp(t,s,l){if(iu)return t(s,l);iu=!0;try{var c=t(s);return c}finally{if(iu=!1,(Os!==null||js!==null)&&(ho(),Os&&(s=Os,t=js,js=Os=null,mp(s),t)))for(s=0;s<t.length;s++)mp(t[s])}}function Kr(t,s){var l=t.stateNode;if(l===null)return null;var c=l[Lt]||null;if(c===null)return null;l=c[s];e:switch(s){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(c=!c.disabled)||(t=t.type,c=!(t==="button"||t==="input"||t==="select"||t==="textarea")),t=!c;break e;default:t=!1}if(t)return null;if(l&&typeof l!="function")throw Error(r(231,s,typeof l));return l}var Un=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),su=!1;if(Un)try{var Xr={};Object.defineProperty(Xr,"passive",{get:function(){su=!0}}),window.addEventListener("test",Xr,Xr),window.removeEventListener("test",Xr,Xr)}catch{su=!1}var oi=null,ru=null,Al=null;function bp(){if(Al)return Al;var t,s=ru,l=s.length,c,h="value"in oi?oi.value:oi.textContent,p=h.length;for(t=0;t<l&&s[t]===h[t];t++);var v=l-t;for(c=1;c<=v&&s[l-c]===h[p-c];c++);return Al=h.slice(t,1<c?1-c:void 0)}function Cl(t){var s=t.keyCode;return"charCode"in t?(t=t.charCode,t===0&&s===13&&(t=13)):t=s,t===10&&(t=13),32<=t||t===13?t:0}function Nl(){return!0}function vp(){return!1}function Rt(t){function s(l,c,h,p,v){this._reactName=l,this._targetInst=h,this.type=c,this.nativeEvent=p,this.target=v,this.currentTarget=null;for(var T in t)t.hasOwnProperty(T)&&(l=t[T],this[T]=l?l(p):p[T]);return this.isDefaultPrevented=(p.defaultPrevented!=null?p.defaultPrevented:p.returnValue===!1)?Nl:vp,this.isPropagationStopped=vp,this}return y(s.prototype,{preventDefault:function(){this.defaultPrevented=!0;var l=this.nativeEvent;l&&(l.preventDefault?l.preventDefault():typeof l.returnValue!="unknown"&&(l.returnValue=!1),this.isDefaultPrevented=Nl)},stopPropagation:function(){var l=this.nativeEvent;l&&(l.stopPropagation?l.stopPropagation():typeof l.cancelBubble!="unknown"&&(l.cancelBubble=!0),this.isPropagationStopped=Nl)},persist:function(){},isPersistent:Nl}),s}var Ii={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},kl=Rt(Ii),Yr=y({},Ii,{view:0,detail:0}),pw=Rt(Yr),au,lu,Fr,Ml=y({},Yr,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:cu,button:0,buttons:0,relatedTarget:function(t){return t.relatedTarget===void 0?t.fromElement===t.srcElement?t.toElement:t.fromElement:t.relatedTarget},movementX:function(t){return"movementX"in t?t.movementX:(t!==Fr&&(Fr&&t.type==="mousemove"?(au=t.screenX-Fr.screenX,lu=t.screenY-Fr.screenY):lu=au=0,Fr=t),au)},movementY:function(t){return"movementY"in t?t.movementY:lu}}),Sp=Rt(Ml),gw=y({},Ml,{dataTransfer:0}),mw=Rt(gw),yw=y({},Yr,{relatedTarget:0}),ou=Rt(yw),bw=y({},Ii,{animationName:0,elapsedTime:0,pseudoElement:0}),vw=Rt(bw),Sw=y({},Ii,{clipboardData:function(t){return"clipboardData"in t?t.clipboardData:window.clipboardData}}),ww=Rt(Sw),xw=y({},Ii,{data:0}),wp=Rt(xw),_w={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Ew={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Tw={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Aw(t){var s=this.nativeEvent;return s.getModifierState?s.getModifierState(t):(t=Tw[t])?!!s[t]:!1}function cu(){return Aw}var Cw=y({},Yr,{key:function(t){if(t.key){var s=_w[t.key]||t.key;if(s!=="Unidentified")return s}return t.type==="keypress"?(t=Cl(t),t===13?"Enter":String.fromCharCode(t)):t.type==="keydown"||t.type==="keyup"?Ew[t.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:cu,charCode:function(t){return t.type==="keypress"?Cl(t):0},keyCode:function(t){return t.type==="keydown"||t.type==="keyup"?t.keyCode:0},which:function(t){return t.type==="keypress"?Cl(t):t.type==="keydown"||t.type==="keyup"?t.keyCode:0}}),Nw=Rt(Cw),kw=y({},Ml,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),xp=Rt(kw),Mw=y({},Yr,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:cu}),Ow=Rt(Mw),jw=y({},Ii,{propertyName:0,elapsedTime:0,pseudoElement:0}),Lw=Rt(jw),Rw=y({},Ml,{deltaX:function(t){return"deltaX"in t?t.deltaX:"wheelDeltaX"in t?-t.wheelDeltaX:0},deltaY:function(t){return"deltaY"in t?t.deltaY:"wheelDeltaY"in t?-t.wheelDeltaY:"wheelDelta"in t?-t.wheelDelta:0},deltaZ:0,deltaMode:0}),Dw=Rt(Rw),zw=y({},Ii,{newState:0,oldState:0}),Uw=Rt(zw),Hw=[9,13,27,32],uu=Un&&"CompositionEvent"in window,Qr=null;Un&&"documentMode"in document&&(Qr=document.documentMode);var Bw=Un&&"TextEvent"in window&&!Qr,_p=Un&&(!uu||Qr&&8<Qr&&11>=Qr),Ep=" ",Tp=!1;function Ap(t,s){switch(t){case"keyup":return Hw.indexOf(s.keyCode)!==-1;case"keydown":return s.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Cp(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var Ls=!1;function qw(t,s){switch(t){case"compositionend":return Cp(s);case"keypress":return s.which!==32?null:(Tp=!0,Ep);case"textInput":return t=s.data,t===Ep&&Tp?null:t;default:return null}}function $w(t,s){if(Ls)return t==="compositionend"||!uu&&Ap(t,s)?(t=bp(),Al=ru=oi=null,Ls=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(s.ctrlKey||s.altKey||s.metaKey)||s.ctrlKey&&s.altKey){if(s.char&&1<s.char.length)return s.char;if(s.which)return String.fromCharCode(s.which)}return null;case"compositionend":return _p&&s.locale!=="ko"?null:s.data;default:return null}}var Iw={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Np(t){var s=t&&t.nodeName&&t.nodeName.toLowerCase();return s==="input"?!!Iw[t.type]:s==="textarea"}function kp(t,s,l,c){Os?js?js.push(c):js=[c]:Os=c,s=So(s,"onChange"),0<s.length&&(l=new kl("onChange","change",null,l,c),t.push({event:l,listeners:s}))}var Pr=null,Jr=null;function Vw(t){fy(t,0)}function Ol(t){var s=Gr(t);if(up(s))return t}function Mp(t,s){if(t==="change")return s}var Op=!1;if(Un){var fu;if(Un){var hu="oninput"in document;if(!hu){var jp=document.createElement("div");jp.setAttribute("oninput","return;"),hu=typeof jp.oninput=="function"}fu=hu}else fu=!1;Op=fu&&(!document.documentMode||9<document.documentMode)}function Lp(){Pr&&(Pr.detachEvent("onpropertychange",Rp),Jr=Pr=null)}function Rp(t){if(t.propertyName==="value"&&Ol(Jr)){var s=[];kp(s,Jr,t,nu(t)),yp(Vw,s)}}function Gw(t,s,l){t==="focusin"?(Lp(),Pr=s,Jr=l,Pr.attachEvent("onpropertychange",Rp)):t==="focusout"&&Lp()}function Kw(t){if(t==="selectionchange"||t==="keyup"||t==="keydown")return Ol(Jr)}function Xw(t,s){if(t==="click")return Ol(s)}function Yw(t,s){if(t==="input"||t==="change")return Ol(s)}function Fw(t,s){return t===s&&(t!==0||1/t===1/s)||t!==t&&s!==s}var Qt=typeof Object.is=="function"?Object.is:Fw;function Zr(t,s){if(Qt(t,s))return!0;if(typeof t!="object"||t===null||typeof s!="object"||s===null)return!1;var l=Object.keys(t),c=Object.keys(s);if(l.length!==c.length)return!1;for(c=0;c<l.length;c++){var h=l[c];if(!qr.call(s,h)||!Qt(t[h],s[h]))return!1}return!0}function Dp(t){for(;t&&t.firstChild;)t=t.firstChild;return t}function zp(t,s){var l=Dp(t);t=0;for(var c;l;){if(l.nodeType===3){if(c=t+l.textContent.length,t<=s&&c>=s)return{node:l,offset:s-t};t=c}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=Dp(l)}}function Up(t,s){return t&&s?t===s?!0:t&&t.nodeType===3?!1:s&&s.nodeType===3?Up(t,s.parentNode):"contains"in t?t.contains(s):t.compareDocumentPosition?!!(t.compareDocumentPosition(s)&16):!1:!1}function Hp(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var s=El(t.document);s instanceof t.HTMLIFrameElement;){try{var l=typeof s.contentWindow.location.href=="string"}catch{l=!1}if(l)t=s.contentWindow;else break;s=El(t.document)}return s}function du(t){var s=t&&t.nodeName&&t.nodeName.toLowerCase();return s&&(s==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||s==="textarea"||t.contentEditable==="true")}var Qw=Un&&"documentMode"in document&&11>=document.documentMode,Rs=null,pu=null,Wr=null,gu=!1;function Bp(t,s,l){var c=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;gu||Rs==null||Rs!==El(c)||(c=Rs,"selectionStart"in c&&du(c)?c={start:c.selectionStart,end:c.selectionEnd}:(c=(c.ownerDocument&&c.ownerDocument.defaultView||window).getSelection(),c={anchorNode:c.anchorNode,anchorOffset:c.anchorOffset,focusNode:c.focusNode,focusOffset:c.focusOffset}),Wr&&Zr(Wr,c)||(Wr=c,c=So(pu,"onSelect"),0<c.length&&(s=new kl("onSelect","select",null,s,l),t.push({event:s,listeners:c}),s.target=Rs)))}function Vi(t,s){var l={};return l[t.toLowerCase()]=s.toLowerCase(),l["Webkit"+t]="webkit"+s,l["Moz"+t]="moz"+s,l}var Ds={animationend:Vi("Animation","AnimationEnd"),animationiteration:Vi("Animation","AnimationIteration"),animationstart:Vi("Animation","AnimationStart"),transitionrun:Vi("Transition","TransitionRun"),transitionstart:Vi("Transition","TransitionStart"),transitioncancel:Vi("Transition","TransitionCancel"),transitionend:Vi("Transition","TransitionEnd")},mu={},qp={};Un&&(qp=document.createElement("div").style,"AnimationEvent"in window||(delete Ds.animationend.animation,delete Ds.animationiteration.animation,delete Ds.animationstart.animation),"TransitionEvent"in window||delete Ds.transitionend.transition);function Gi(t){if(mu[t])return mu[t];if(!Ds[t])return t;var s=Ds[t],l;for(l in s)if(s.hasOwnProperty(l)&&l in qp)return mu[t]=s[l];return t}var $p=Gi("animationend"),Ip=Gi("animationiteration"),Vp=Gi("animationstart"),Pw=Gi("transitionrun"),Jw=Gi("transitionstart"),Zw=Gi("transitioncancel"),Gp=Gi("transitionend"),Kp=new Map,yu="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");yu.push("scrollEnd");function vn(t,s){Kp.set(t,s),$i(s,[t])}var jl=typeof reportError=="function"?reportError:function(t){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var s=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof t=="object"&&t!==null&&typeof t.message=="string"?String(t.message):String(t),error:t});if(!window.dispatchEvent(s))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",t);return}console.error(t)},ln=[],zs=0,bu=0;function Ll(){for(var t=zs,s=bu=zs=0;s<t;){var l=ln[s];ln[s++]=null;var c=ln[s];ln[s++]=null;var h=ln[s];ln[s++]=null;var p=ln[s];if(ln[s++]=null,c!==null&&h!==null){var v=c.pending;v===null?h.next=h:(h.next=v.next,v.next=h),c.pending=h}p!==0&&Xp(l,h,p)}}function Rl(t,s,l,c){ln[zs++]=t,ln[zs++]=s,ln[zs++]=l,ln[zs++]=c,bu|=c,t.lanes|=c,t=t.alternate,t!==null&&(t.lanes|=c)}function vu(t,s,l,c){return Rl(t,s,l,c),Dl(t)}function Ki(t,s){return Rl(t,null,null,s),Dl(t)}function Xp(t,s,l){t.lanes|=l;var c=t.alternate;c!==null&&(c.lanes|=l);for(var h=!1,p=t.return;p!==null;)p.childLanes|=l,c=p.alternate,c!==null&&(c.childLanes|=l),p.tag===22&&(t=p.stateNode,t===null||t._visibility&1||(h=!0)),t=p,p=p.return;return t.tag===3?(p=t.stateNode,h&&s!==null&&(h=31-kt(l),t=p.hiddenUpdates,c=t[h],c===null?t[h]=[s]:c.push(s),s.lane=l|536870912),p):null}function Dl(t){if(50<wa)throw wa=0,kf=null,Error(r(185));for(var s=t.return;s!==null;)t=s,s=t.return;return t.tag===3?t.stateNode:null}var Us={};function Ww(t,s,l,c){this.tag=t,this.key=l,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=s,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=c,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pt(t,s,l,c){return new Ww(t,s,l,c)}function Su(t){return t=t.prototype,!(!t||!t.isReactComponent)}function Hn(t,s){var l=t.alternate;return l===null?(l=Pt(t.tag,s,t.key,t.mode),l.elementType=t.elementType,l.type=t.type,l.stateNode=t.stateNode,l.alternate=t,t.alternate=l):(l.pendingProps=s,l.type=t.type,l.flags=0,l.subtreeFlags=0,l.deletions=null),l.flags=t.flags&65011712,l.childLanes=t.childLanes,l.lanes=t.lanes,l.child=t.child,l.memoizedProps=t.memoizedProps,l.memoizedState=t.memoizedState,l.updateQueue=t.updateQueue,s=t.dependencies,l.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},l.sibling=t.sibling,l.index=t.index,l.ref=t.ref,l.refCleanup=t.refCleanup,l}function Yp(t,s){t.flags&=65011714;var l=t.alternate;return l===null?(t.childLanes=0,t.lanes=s,t.child=null,t.subtreeFlags=0,t.memoizedProps=null,t.memoizedState=null,t.updateQueue=null,t.dependencies=null,t.stateNode=null):(t.childLanes=l.childLanes,t.lanes=l.lanes,t.child=l.child,t.subtreeFlags=0,t.deletions=null,t.memoizedProps=l.memoizedProps,t.memoizedState=l.memoizedState,t.updateQueue=l.updateQueue,t.type=l.type,s=l.dependencies,t.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext}),t}function zl(t,s,l,c,h,p){var v=0;if(c=t,typeof t=="function")Su(t)&&(v=1);else if(typeof t=="string")v=sx(t,l,te.current)?26:t==="html"||t==="head"||t==="body"?27:5;else e:switch(t){case O:return t=Pt(31,l,s,h),t.elementType=O,t.lanes=p,t;case x:return Xi(l.children,h,p,s);case _:v=8,h|=24;break;case A:return t=Pt(12,l,s,h|2),t.elementType=A,t.lanes=p,t;case K:return t=Pt(13,l,s,h),t.elementType=K,t.lanes=p,t;case Q:return t=Pt(19,l,s,h),t.elementType=Q,t.lanes=p,t;default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case H:v=10;break e;case C:v=9;break e;case V:v=11;break e;case j:v=14;break e;case I:v=16,c=null;break e}v=29,l=Error(r(130,t===null?"null":typeof t,"")),c=null}return s=Pt(v,l,s,h),s.elementType=t,s.type=c,s.lanes=p,s}function Xi(t,s,l,c){return t=Pt(7,t,c,s),t.lanes=l,t}function wu(t,s,l){return t=Pt(6,t,null,s),t.lanes=l,t}function Fp(t){var s=Pt(18,null,null,0);return s.stateNode=t,s}function xu(t,s,l){return s=Pt(4,t.children!==null?t.children:[],t.key,s),s.lanes=l,s.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},s}var Qp=new WeakMap;function on(t,s){if(typeof t=="object"&&t!==null){var l=Qp.get(t);return l!==void 0?l:(s={value:t,source:s,stack:bs(s)},Qp.set(t,s),s)}return{value:t,source:s,stack:bs(s)}}var Hs=[],Bs=0,Ul=null,ea=0,cn=[],un=0,ci=null,An=1,Cn="";function Bn(t,s){Hs[Bs++]=ea,Hs[Bs++]=Ul,Ul=t,ea=s}function Pp(t,s,l){cn[un++]=An,cn[un++]=Cn,cn[un++]=ci,ci=t;var c=An;t=Cn;var h=32-kt(c)-1;c&=~(1<<h),l+=1;var p=32-kt(s)+h;if(30<p){var v=h-h%5;p=(c&(1<<v)-1).toString(32),c>>=v,h-=v,An=1<<32-kt(s)+h|l<<h|c,Cn=p+t}else An=1<<p|l<<h|c,Cn=t}function _u(t){t.return!==null&&(Bn(t,1),Pp(t,1,0))}function Eu(t){for(;t===Ul;)Ul=Hs[--Bs],Hs[Bs]=null,ea=Hs[--Bs],Hs[Bs]=null;for(;t===ci;)ci=cn[--un],cn[un]=null,Cn=cn[--un],cn[un]=null,An=cn[--un],cn[un]=null}function Jp(t,s){cn[un++]=An,cn[un++]=Cn,cn[un++]=ci,An=s.id,Cn=s.overflow,ci=t}var vt=null,Be=null,we=!1,ui=null,fn=!1,Tu=Error(r(519));function fi(t){var s=Error(r(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw ta(on(s,t)),Tu}function Zp(t){var s=t.stateNode,l=t.type,c=t.memoizedProps;switch(s[bt]=t,s[Lt]=c,l){case"dialog":be("cancel",s),be("close",s);break;case"iframe":case"object":case"embed":be("load",s);break;case"video":case"audio":for(l=0;l<_a.length;l++)be(_a[l],s);break;case"source":be("error",s);break;case"img":case"image":case"link":be("error",s),be("load",s);break;case"details":be("toggle",s);break;case"input":be("invalid",s),fp(s,c.value,c.defaultValue,c.checked,c.defaultChecked,c.type,c.name,!0);break;case"select":be("invalid",s);break;case"textarea":be("invalid",s),dp(s,c.value,c.defaultValue,c.children)}l=c.children,typeof l!="string"&&typeof l!="number"&&typeof l!="bigint"||s.textContent===""+l||c.suppressHydrationWarning===!0||gy(s.textContent,l)?(c.popover!=null&&(be("beforetoggle",s),be("toggle",s)),c.onScroll!=null&&be("scroll",s),c.onScrollEnd!=null&&be("scrollend",s),c.onClick!=null&&(s.onclick=zn),s=!0):s=!1,s||fi(t,!0)}function Wp(t){for(vt=t.return;vt;)switch(vt.tag){case 5:case 31:case 13:fn=!1;return;case 27:case 3:fn=!0;return;default:vt=vt.return}}function qs(t){if(t!==vt)return!1;if(!we)return Wp(t),we=!0,!1;var s=t.tag,l;if((l=s!==3&&s!==27)&&((l=s===5)&&(l=t.type,l=!(l!=="form"&&l!=="button")||Gf(t.type,t.memoizedProps)),l=!l),l&&Be&&fi(t),Wp(t),s===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(317));Be=Ey(t)}else if(s===31){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(317));Be=Ey(t)}else s===27?(s=Be,Ti(t.type)?(t=Qf,Qf=null,Be=t):Be=s):Be=vt?dn(t.stateNode.nextSibling):null;return!0}function Yi(){Be=vt=null,we=!1}function Au(){var t=ui;return t!==null&&(Ht===null?Ht=t:Ht.push.apply(Ht,t),ui=null),t}function ta(t){ui===null?ui=[t]:ui.push(t)}var Cu=M(null),Fi=null,qn=null;function hi(t,s,l){W(Cu,s._currentValue),s._currentValue=l}function $n(t){t._currentValue=Cu.current,X(Cu)}function Nu(t,s,l){for(;t!==null;){var c=t.alternate;if((t.childLanes&s)!==s?(t.childLanes|=s,c!==null&&(c.childLanes|=s)):c!==null&&(c.childLanes&s)!==s&&(c.childLanes|=s),t===l)break;t=t.return}}function ku(t,s,l,c){var h=t.child;for(h!==null&&(h.return=t);h!==null;){var p=h.dependencies;if(p!==null){var v=h.child;p=p.firstContext;e:for(;p!==null;){var T=p;p=h;for(var N=0;N<s.length;N++)if(T.context===s[N]){p.lanes|=l,T=p.alternate,T!==null&&(T.lanes|=l),Nu(p.return,l,t),c||(v=null);break e}p=T.next}}else if(h.tag===18){if(v=h.return,v===null)throw Error(r(341));v.lanes|=l,p=v.alternate,p!==null&&(p.lanes|=l),Nu(v,l,t),v=null}else v=h.child;if(v!==null)v.return=h;else for(v=h;v!==null;){if(v===t){v=null;break}if(h=v.sibling,h!==null){h.return=v.return,v=h;break}v=v.return}h=v}}function $s(t,s,l,c){t=null;for(var h=s,p=!1;h!==null;){if(!p){if((h.flags&524288)!==0)p=!0;else if((h.flags&262144)!==0)break}if(h.tag===10){var v=h.alternate;if(v===null)throw Error(r(387));if(v=v.memoizedProps,v!==null){var T=h.type;Qt(h.pendingProps.value,v.value)||(t!==null?t.push(T):t=[T])}}else if(h===xe.current){if(v=h.alternate,v===null)throw Error(r(387));v.memoizedState.memoizedState!==h.memoizedState.memoizedState&&(t!==null?t.push(Na):t=[Na])}h=h.return}t!==null&&ku(s,t,l,c),s.flags|=262144}function Hl(t){for(t=t.firstContext;t!==null;){if(!Qt(t.context._currentValue,t.memoizedValue))return!0;t=t.next}return!1}function Qi(t){Fi=t,qn=null,t=t.dependencies,t!==null&&(t.firstContext=null)}function St(t){return eg(Fi,t)}function Bl(t,s){return Fi===null&&Qi(t),eg(t,s)}function eg(t,s){var l=s._currentValue;if(s={context:s,memoizedValue:l,next:null},qn===null){if(t===null)throw Error(r(308));qn=s,t.dependencies={lanes:0,firstContext:s},t.flags|=524288}else qn=qn.next=s;return l}var e1=typeof AbortController<"u"?AbortController:function(){var t=[],s=this.signal={aborted:!1,addEventListener:function(l,c){t.push(c)}};this.abort=function(){s.aborted=!0,t.forEach(function(l){return l()})}},t1=n.unstable_scheduleCallback,n1=n.unstable_NormalPriority,st={$$typeof:H,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Mu(){return{controller:new e1,data:new Map,refCount:0}}function na(t){t.refCount--,t.refCount===0&&t1(n1,function(){t.controller.abort()})}var ia=null,Ou=0,Is=0,Vs=null;function i1(t,s){if(ia===null){var l=ia=[];Ou=0,Is=Df(),Vs={status:"pending",value:void 0,then:function(c){l.push(c)}}}return Ou++,s.then(tg,tg),s}function tg(){if(--Ou===0&&ia!==null){Vs!==null&&(Vs.status="fulfilled");var t=ia;ia=null,Is=0,Vs=null;for(var s=0;s<t.length;s++)(0,t[s])()}}function s1(t,s){var l=[],c={status:"pending",value:null,reason:null,then:function(h){l.push(h)}};return t.then(function(){c.status="fulfilled",c.value=s;for(var h=0;h<l.length;h++)(0,l[h])(s)},function(h){for(c.status="rejected",c.reason=h,h=0;h<l.length;h++)(0,l[h])(void 0)}),c}var ng=q.S;q.S=function(t,s){Bm=it(),typeof s=="object"&&s!==null&&typeof s.then=="function"&&i1(t,s),ng!==null&&ng(t,s)};var Pi=M(null);function ju(){var t=Pi.current;return t!==null?t:De.pooledCache}function ql(t,s){s===null?W(Pi,Pi.current):W(Pi,s.pool)}function ig(){var t=ju();return t===null?null:{parent:st._currentValue,pool:t}}var Gs=Error(r(460)),Lu=Error(r(474)),$l=Error(r(542)),Il={then:function(){}};function sg(t){return t=t.status,t==="fulfilled"||t==="rejected"}function rg(t,s,l){switch(l=t[l],l===void 0?t.push(s):l!==s&&(s.then(zn,zn),s=l),s.status){case"fulfilled":return s.value;case"rejected":throw t=s.reason,lg(t),t;default:if(typeof s.status=="string")s.then(zn,zn);else{if(t=De,t!==null&&100<t.shellSuspendCounter)throw Error(r(482));t=s,t.status="pending",t.then(function(c){if(s.status==="pending"){var h=s;h.status="fulfilled",h.value=c}},function(c){if(s.status==="pending"){var h=s;h.status="rejected",h.reason=c}})}switch(s.status){case"fulfilled":return s.value;case"rejected":throw t=s.reason,lg(t),t}throw Zi=s,Gs}}function Ji(t){try{var s=t._init;return s(t._payload)}catch(l){throw l!==null&&typeof l=="object"&&typeof l.then=="function"?(Zi=l,Gs):l}}var Zi=null;function ag(){if(Zi===null)throw Error(r(459));var t=Zi;return Zi=null,t}function lg(t){if(t===Gs||t===$l)throw Error(r(483))}var Ks=null,sa=0;function Vl(t){var s=sa;return sa+=1,Ks===null&&(Ks=[]),rg(Ks,t,s)}function ra(t,s){s=s.props.ref,t.ref=s!==void 0?s:null}function Gl(t,s){throw s.$$typeof===S?Error(r(525)):(t=Object.prototype.toString.call(s),Error(r(31,t==="[object Object]"?"object with keys {"+Object.keys(s).join(", ")+"}":t)))}function og(t){function s(L,k){if(t){var D=L.deletions;D===null?(L.deletions=[k],L.flags|=16):D.push(k)}}function l(L,k){if(!t)return null;for(;k!==null;)s(L,k),k=k.sibling;return null}function c(L){for(var k=new Map;L!==null;)L.key!==null?k.set(L.key,L):k.set(L.index,L),L=L.sibling;return k}function h(L,k){return L=Hn(L,k),L.index=0,L.sibling=null,L}function p(L,k,D){return L.index=D,t?(D=L.alternate,D!==null?(D=D.index,D<k?(L.flags|=67108866,k):D):(L.flags|=67108866,k)):(L.flags|=1048576,k)}function v(L){return t&&L.alternate===null&&(L.flags|=67108866),L}function T(L,k,D,Y){return k===null||k.tag!==6?(k=wu(D,L.mode,Y),k.return=L,k):(k=h(k,D),k.return=L,k)}function N(L,k,D,Y){var ae=D.type;return ae===x?G(L,k,D.props.children,Y,D.key):k!==null&&(k.elementType===ae||typeof ae=="object"&&ae!==null&&ae.$$typeof===I&&Ji(ae)===k.type)?(k=h(k,D.props),ra(k,D),k.return=L,k):(k=zl(D.type,D.key,D.props,null,L.mode,Y),ra(k,D),k.return=L,k)}function z(L,k,D,Y){return k===null||k.tag!==4||k.stateNode.containerInfo!==D.containerInfo||k.stateNode.implementation!==D.implementation?(k=xu(D,L.mode,Y),k.return=L,k):(k=h(k,D.children||[]),k.return=L,k)}function G(L,k,D,Y,ae){return k===null||k.tag!==7?(k=Xi(D,L.mode,Y,ae),k.return=L,k):(k=h(k,D),k.return=L,k)}function F(L,k,D){if(typeof k=="string"&&k!==""||typeof k=="number"||typeof k=="bigint")return k=wu(""+k,L.mode,D),k.return=L,k;if(typeof k=="object"&&k!==null){switch(k.$$typeof){case w:return D=zl(k.type,k.key,k.props,null,L.mode,D),ra(D,k),D.return=L,D;case E:return k=xu(k,L.mode,D),k.return=L,k;case I:return k=Ji(k),F(L,k,D)}if(Me(k)||$(k))return k=Xi(k,L.mode,D,null),k.return=L,k;if(typeof k.then=="function")return F(L,Vl(k),D);if(k.$$typeof===H)return F(L,Bl(L,k),D);Gl(L,k)}return null}function U(L,k,D,Y){var ae=k!==null?k.key:null;if(typeof D=="string"&&D!==""||typeof D=="number"||typeof D=="bigint")return ae!==null?null:T(L,k,""+D,Y);if(typeof D=="object"&&D!==null){switch(D.$$typeof){case w:return D.key===ae?N(L,k,D,Y):null;case E:return D.key===ae?z(L,k,D,Y):null;case I:return D=Ji(D),U(L,k,D,Y)}if(Me(D)||$(D))return ae!==null?null:G(L,k,D,Y,null);if(typeof D.then=="function")return U(L,k,Vl(D),Y);if(D.$$typeof===H)return U(L,k,Bl(L,D),Y);Gl(L,D)}return null}function B(L,k,D,Y,ae){if(typeof Y=="string"&&Y!==""||typeof Y=="number"||typeof Y=="bigint")return L=L.get(D)||null,T(k,L,""+Y,ae);if(typeof Y=="object"&&Y!==null){switch(Y.$$typeof){case w:return L=L.get(Y.key===null?D:Y.key)||null,N(k,L,Y,ae);case E:return L=L.get(Y.key===null?D:Y.key)||null,z(k,L,Y,ae);case I:return Y=Ji(Y),B(L,k,D,Y,ae)}if(Me(Y)||$(Y))return L=L.get(D)||null,G(k,L,Y,ae,null);if(typeof Y.then=="function")return B(L,k,D,Vl(Y),ae);if(Y.$$typeof===H)return B(L,k,D,Bl(k,Y),ae);Gl(k,Y)}return null}function ne(L,k,D,Y){for(var ae=null,Te=null,ie=k,ge=k=0,Se=null;ie!==null&&ge<D.length;ge++){ie.index>ge?(Se=ie,ie=null):Se=ie.sibling;var Ae=U(L,ie,D[ge],Y);if(Ae===null){ie===null&&(ie=Se);break}t&&ie&&Ae.alternate===null&&s(L,ie),k=p(Ae,k,ge),Te===null?ae=Ae:Te.sibling=Ae,Te=Ae,ie=Se}if(ge===D.length)return l(L,ie),we&&Bn(L,ge),ae;if(ie===null){for(;ge<D.length;ge++)ie=F(L,D[ge],Y),ie!==null&&(k=p(ie,k,ge),Te===null?ae=ie:Te.sibling=ie,Te=ie);return we&&Bn(L,ge),ae}for(ie=c(ie);ge<D.length;ge++)Se=B(ie,L,ge,D[ge],Y),Se!==null&&(t&&Se.alternate!==null&&ie.delete(Se.key===null?ge:Se.key),k=p(Se,k,ge),Te===null?ae=Se:Te.sibling=Se,Te=Se);return t&&ie.forEach(function(Mi){return s(L,Mi)}),we&&Bn(L,ge),ae}function oe(L,k,D,Y){if(D==null)throw Error(r(151));for(var ae=null,Te=null,ie=k,ge=k=0,Se=null,Ae=D.next();ie!==null&&!Ae.done;ge++,Ae=D.next()){ie.index>ge?(Se=ie,ie=null):Se=ie.sibling;var Mi=U(L,ie,Ae.value,Y);if(Mi===null){ie===null&&(ie=Se);break}t&&ie&&Mi.alternate===null&&s(L,ie),k=p(Mi,k,ge),Te===null?ae=Mi:Te.sibling=Mi,Te=Mi,ie=Se}if(Ae.done)return l(L,ie),we&&Bn(L,ge),ae;if(ie===null){for(;!Ae.done;ge++,Ae=D.next())Ae=F(L,Ae.value,Y),Ae!==null&&(k=p(Ae,k,ge),Te===null?ae=Ae:Te.sibling=Ae,Te=Ae);return we&&Bn(L,ge),ae}for(ie=c(ie);!Ae.done;ge++,Ae=D.next())Ae=B(ie,L,ge,Ae.value,Y),Ae!==null&&(t&&Ae.alternate!==null&&ie.delete(Ae.key===null?ge:Ae.key),k=p(Ae,k,ge),Te===null?ae=Ae:Te.sibling=Ae,Te=Ae);return t&&ie.forEach(function(gx){return s(L,gx)}),we&&Bn(L,ge),ae}function Le(L,k,D,Y){if(typeof D=="object"&&D!==null&&D.type===x&&D.key===null&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case w:e:{for(var ae=D.key;k!==null;){if(k.key===ae){if(ae=D.type,ae===x){if(k.tag===7){l(L,k.sibling),Y=h(k,D.props.children),Y.return=L,L=Y;break e}}else if(k.elementType===ae||typeof ae=="object"&&ae!==null&&ae.$$typeof===I&&Ji(ae)===k.type){l(L,k.sibling),Y=h(k,D.props),ra(Y,D),Y.return=L,L=Y;break e}l(L,k);break}else s(L,k);k=k.sibling}D.type===x?(Y=Xi(D.props.children,L.mode,Y,D.key),Y.return=L,L=Y):(Y=zl(D.type,D.key,D.props,null,L.mode,Y),ra(Y,D),Y.return=L,L=Y)}return v(L);case E:e:{for(ae=D.key;k!==null;){if(k.key===ae)if(k.tag===4&&k.stateNode.containerInfo===D.containerInfo&&k.stateNode.implementation===D.implementation){l(L,k.sibling),Y=h(k,D.children||[]),Y.return=L,L=Y;break e}else{l(L,k);break}else s(L,k);k=k.sibling}Y=xu(D,L.mode,Y),Y.return=L,L=Y}return v(L);case I:return D=Ji(D),Le(L,k,D,Y)}if(Me(D))return ne(L,k,D,Y);if($(D)){if(ae=$(D),typeof ae!="function")throw Error(r(150));return D=ae.call(D),oe(L,k,D,Y)}if(typeof D.then=="function")return Le(L,k,Vl(D),Y);if(D.$$typeof===H)return Le(L,k,Bl(L,D),Y);Gl(L,D)}return typeof D=="string"&&D!==""||typeof D=="number"||typeof D=="bigint"?(D=""+D,k!==null&&k.tag===6?(l(L,k.sibling),Y=h(k,D),Y.return=L,L=Y):(l(L,k),Y=wu(D,L.mode,Y),Y.return=L,L=Y),v(L)):l(L,k)}return function(L,k,D,Y){try{sa=0;var ae=Le(L,k,D,Y);return Ks=null,ae}catch(ie){if(ie===Gs||ie===$l)throw ie;var Te=Pt(29,ie,null,L.mode);return Te.lanes=Y,Te.return=L,Te}finally{}}}var Wi=og(!0),cg=og(!1),di=!1;function Ru(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Du(t,s){t=t.updateQueue,s.updateQueue===t&&(s.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function pi(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function gi(t,s,l){var c=t.updateQueue;if(c===null)return null;if(c=c.shared,(Ce&2)!==0){var h=c.pending;return h===null?s.next=s:(s.next=h.next,h.next=s),c.pending=s,s=Dl(t),Xp(t,null,l),s}return Rl(t,c,s,l),Dl(t)}function aa(t,s,l){if(s=s.updateQueue,s!==null&&(s=s.shared,(l&4194048)!==0)){var c=s.lanes;c&=t.pendingLanes,l|=c,s.lanes=l,ep(t,l)}}function zu(t,s){var l=t.updateQueue,c=t.alternate;if(c!==null&&(c=c.updateQueue,l===c)){var h=null,p=null;if(l=l.firstBaseUpdate,l!==null){do{var v={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};p===null?h=p=v:p=p.next=v,l=l.next}while(l!==null);p===null?h=p=s:p=p.next=s}else h=p=s;l={baseState:c.baseState,firstBaseUpdate:h,lastBaseUpdate:p,shared:c.shared,callbacks:c.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=s:t.next=s,l.lastBaseUpdate=s}var Uu=!1;function la(){if(Uu){var t=Vs;if(t!==null)throw t}}function oa(t,s,l,c){Uu=!1;var h=t.updateQueue;di=!1;var p=h.firstBaseUpdate,v=h.lastBaseUpdate,T=h.shared.pending;if(T!==null){h.shared.pending=null;var N=T,z=N.next;N.next=null,v===null?p=z:v.next=z,v=N;var G=t.alternate;G!==null&&(G=G.updateQueue,T=G.lastBaseUpdate,T!==v&&(T===null?G.firstBaseUpdate=z:T.next=z,G.lastBaseUpdate=N))}if(p!==null){var F=h.baseState;v=0,G=z=N=null,T=p;do{var U=T.lane&-536870913,B=U!==T.lane;if(B?(ve&U)===U:(c&U)===U){U!==0&&U===Is&&(Uu=!0),G!==null&&(G=G.next={lane:0,tag:T.tag,payload:T.payload,callback:null,next:null});e:{var ne=t,oe=T;U=s;var Le=l;switch(oe.tag){case 1:if(ne=oe.payload,typeof ne=="function"){F=ne.call(Le,F,U);break e}F=ne;break e;case 3:ne.flags=ne.flags&-65537|128;case 0:if(ne=oe.payload,U=typeof ne=="function"?ne.call(Le,F,U):ne,U==null)break e;F=y({},F,U);break e;case 2:di=!0}}U=T.callback,U!==null&&(t.flags|=64,B&&(t.flags|=8192),B=h.callbacks,B===null?h.callbacks=[U]:B.push(U))}else B={lane:U,tag:T.tag,payload:T.payload,callback:T.callback,next:null},G===null?(z=G=B,N=F):G=G.next=B,v|=U;if(T=T.next,T===null){if(T=h.shared.pending,T===null)break;B=T,T=B.next,B.next=null,h.lastBaseUpdate=B,h.shared.pending=null}}while(!0);G===null&&(N=F),h.baseState=N,h.firstBaseUpdate=z,h.lastBaseUpdate=G,p===null&&(h.shared.lanes=0),Si|=v,t.lanes=v,t.memoizedState=F}}function ug(t,s){if(typeof t!="function")throw Error(r(191,t));t.call(s)}function fg(t,s){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;t<l.length;t++)ug(l[t],s)}var Xs=M(null),Kl=M(0);function hg(t,s){t=Pn,W(Kl,t),W(Xs,s),Pn=t|s.baseLanes}function Hu(){W(Kl,Pn),W(Xs,Xs.current)}function Bu(){Pn=Kl.current,X(Xs),X(Kl)}var Jt=M(null),hn=null;function mi(t){var s=t.alternate;W(Pe,Pe.current&1),W(Jt,t),hn===null&&(s===null||Xs.current!==null||s.memoizedState!==null)&&(hn=t)}function qu(t){W(Pe,Pe.current),W(Jt,t),hn===null&&(hn=t)}function dg(t){t.tag===22?(W(Pe,Pe.current),W(Jt,t),hn===null&&(hn=t)):yi()}function yi(){W(Pe,Pe.current),W(Jt,Jt.current)}function Zt(t){X(Jt),hn===t&&(hn=null),X(Pe)}var Pe=M(0);function Xl(t){for(var s=t;s!==null;){if(s.tag===13){var l=s.memoizedState;if(l!==null&&(l=l.dehydrated,l===null||Yf(l)||Ff(l)))return s}else if(s.tag===19&&(s.memoizedProps.revealOrder==="forwards"||s.memoizedProps.revealOrder==="backwards"||s.memoizedProps.revealOrder==="unstable_legacy-backwards"||s.memoizedProps.revealOrder==="together")){if((s.flags&128)!==0)return s}else if(s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break;for(;s.sibling===null;){if(s.return===null||s.return===t)return null;s=s.return}s.sibling.return=s.return,s=s.sibling}return null}var In=0,pe=null,Oe=null,rt=null,Yl=!1,Ys=!1,es=!1,Fl=0,ca=0,Fs=null,r1=0;function Fe(){throw Error(r(321))}function $u(t,s){if(s===null)return!1;for(var l=0;l<s.length&&l<t.length;l++)if(!Qt(t[l],s[l]))return!1;return!0}function Iu(t,s,l,c,h,p){return In=p,pe=s,s.memoizedState=null,s.updateQueue=null,s.lanes=0,q.H=t===null||t.memoizedState===null?Pg:sf,es=!1,p=l(c,h),es=!1,Ys&&(p=gg(s,l,c,h)),pg(t),p}function pg(t){q.H=ha;var s=Oe!==null&&Oe.next!==null;if(In=0,rt=Oe=pe=null,Yl=!1,ca=0,Fs=null,s)throw Error(r(300));t===null||at||(t=t.dependencies,t!==null&&Hl(t)&&(at=!0))}function gg(t,s,l,c){pe=t;var h=0;do{if(Ys&&(Fs=null),ca=0,Ys=!1,25<=h)throw Error(r(301));if(h+=1,rt=Oe=null,t.updateQueue!=null){var p=t.updateQueue;p.lastEffect=null,p.events=null,p.stores=null,p.memoCache!=null&&(p.memoCache.index=0)}q.H=Jg,p=s(l,c)}while(Ys);return p}function a1(){var t=q.H,s=t.useState()[0];return s=typeof s.then=="function"?ua(s):s,t=t.useState()[0],(Oe!==null?Oe.memoizedState:null)!==t&&(pe.flags|=1024),s}function Vu(){var t=Fl!==0;return Fl=0,t}function Gu(t,s,l){s.updateQueue=t.updateQueue,s.flags&=-2053,t.lanes&=~l}function Ku(t){if(Yl){for(t=t.memoizedState;t!==null;){var s=t.queue;s!==null&&(s.pending=null),t=t.next}Yl=!1}In=0,rt=Oe=pe=null,Ys=!1,ca=Fl=0,Fs=null}function Mt(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return rt===null?pe.memoizedState=rt=t:rt=rt.next=t,rt}function Je(){if(Oe===null){var t=pe.alternate;t=t!==null?t.memoizedState:null}else t=Oe.next;var s=rt===null?pe.memoizedState:rt.next;if(s!==null)rt=s,Oe=t;else{if(t===null)throw pe.alternate===null?Error(r(467)):Error(r(310));Oe=t,t={memoizedState:Oe.memoizedState,baseState:Oe.baseState,baseQueue:Oe.baseQueue,queue:Oe.queue,next:null},rt===null?pe.memoizedState=rt=t:rt=rt.next=t}return rt}function Ql(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function ua(t){var s=ca;return ca+=1,Fs===null&&(Fs=[]),t=rg(Fs,t,s),s=pe,(rt===null?s.memoizedState:rt.next)===null&&(s=s.alternate,q.H=s===null||s.memoizedState===null?Pg:sf),t}function Pl(t){if(t!==null&&typeof t=="object"){if(typeof t.then=="function")return ua(t);if(t.$$typeof===H)return St(t)}throw Error(r(438,String(t)))}function Xu(t){var s=null,l=pe.updateQueue;if(l!==null&&(s=l.memoCache),s==null){var c=pe.alternate;c!==null&&(c=c.updateQueue,c!==null&&(c=c.memoCache,c!=null&&(s={data:c.data.map(function(h){return h.slice()}),index:0})))}if(s==null&&(s={data:[],index:0}),l===null&&(l=Ql(),pe.updateQueue=l),l.memoCache=s,l=s.data[s.index],l===void 0)for(l=s.data[s.index]=Array(t),c=0;c<t;c++)l[c]=P;return s.index++,l}function Vn(t,s){return typeof s=="function"?s(t):s}function Jl(t){var s=Je();return Yu(s,Oe,t)}function Yu(t,s,l){var c=t.queue;if(c===null)throw Error(r(311));c.lastRenderedReducer=l;var h=t.baseQueue,p=c.pending;if(p!==null){if(h!==null){var v=h.next;h.next=p.next,p.next=v}s.baseQueue=h=p,c.pending=null}if(p=t.baseState,h===null)t.memoizedState=p;else{s=h.next;var T=v=null,N=null,z=s,G=!1;do{var F=z.lane&-536870913;if(F!==z.lane?(ve&F)===F:(In&F)===F){var U=z.revertLane;if(U===0)N!==null&&(N=N.next={lane:0,revertLane:0,gesture:null,action:z.action,hasEagerState:z.hasEagerState,eagerState:z.eagerState,next:null}),F===Is&&(G=!0);else if((In&U)===U){z=z.next,U===Is&&(G=!0);continue}else F={lane:0,revertLane:z.revertLane,gesture:null,action:z.action,hasEagerState:z.hasEagerState,eagerState:z.eagerState,next:null},N===null?(T=N=F,v=p):N=N.next=F,pe.lanes|=U,Si|=U;F=z.action,es&&l(p,F),p=z.hasEagerState?z.eagerState:l(p,F)}else U={lane:F,revertLane:z.revertLane,gesture:z.gesture,action:z.action,hasEagerState:z.hasEagerState,eagerState:z.eagerState,next:null},N===null?(T=N=U,v=p):N=N.next=U,pe.lanes|=F,Si|=F;z=z.next}while(z!==null&&z!==s);if(N===null?v=p:N.next=T,!Qt(p,t.memoizedState)&&(at=!0,G&&(l=Vs,l!==null)))throw l;t.memoizedState=p,t.baseState=v,t.baseQueue=N,c.lastRenderedState=p}return h===null&&(c.lanes=0),[t.memoizedState,c.dispatch]}function Fu(t){var s=Je(),l=s.queue;if(l===null)throw Error(r(311));l.lastRenderedReducer=t;var c=l.dispatch,h=l.pending,p=s.memoizedState;if(h!==null){l.pending=null;var v=h=h.next;do p=t(p,v.action),v=v.next;while(v!==h);Qt(p,s.memoizedState)||(at=!0),s.memoizedState=p,s.baseQueue===null&&(s.baseState=p),l.lastRenderedState=p}return[p,c]}function mg(t,s,l){var c=pe,h=Je(),p=we;if(p){if(l===void 0)throw Error(r(407));l=l()}else l=s();var v=!Qt((Oe||h).memoizedState,l);if(v&&(h.memoizedState=l,at=!0),h=h.queue,Ju(vg.bind(null,c,h,t),[t]),h.getSnapshot!==s||v||rt!==null&&rt.memoizedState.tag&1){if(c.flags|=2048,Qs(9,{destroy:void 0},bg.bind(null,c,h,l,s),null),De===null)throw Error(r(349));p||(In&127)!==0||yg(c,s,l)}return l}function yg(t,s,l){t.flags|=16384,t={getSnapshot:s,value:l},s=pe.updateQueue,s===null?(s=Ql(),pe.updateQueue=s,s.stores=[t]):(l=s.stores,l===null?s.stores=[t]:l.push(t))}function bg(t,s,l,c){s.value=l,s.getSnapshot=c,Sg(s)&&wg(t)}function vg(t,s,l){return l(function(){Sg(s)&&wg(t)})}function Sg(t){var s=t.getSnapshot;t=t.value;try{var l=s();return!Qt(t,l)}catch{return!0}}function wg(t){var s=Ki(t,2);s!==null&&Bt(s,t,2)}function Qu(t){var s=Mt();if(typeof t=="function"){var l=t;if(t=l(),es){Ft(!0);try{l()}finally{Ft(!1)}}}return s.memoizedState=s.baseState=t,s.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Vn,lastRenderedState:t},s}function xg(t,s,l,c){return t.baseState=l,Yu(t,Oe,typeof c=="function"?c:Vn)}function l1(t,s,l,c,h){if(eo(t))throw Error(r(485));if(t=s.action,t!==null){var p={payload:h,action:t,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(v){p.listeners.push(v)}};q.T!==null?l(!0):p.isTransition=!1,c(p),l=s.pending,l===null?(p.next=s.pending=p,_g(s,p)):(p.next=l.next,s.pending=l.next=p)}}function _g(t,s){var l=s.action,c=s.payload,h=t.state;if(s.isTransition){var p=q.T,v={};q.T=v;try{var T=l(h,c),N=q.S;N!==null&&N(v,T),Eg(t,s,T)}catch(z){Pu(t,s,z)}finally{p!==null&&v.types!==null&&(p.types=v.types),q.T=p}}else try{p=l(h,c),Eg(t,s,p)}catch(z){Pu(t,s,z)}}function Eg(t,s,l){l!==null&&typeof l=="object"&&typeof l.then=="function"?l.then(function(c){Tg(t,s,c)},function(c){return Pu(t,s,c)}):Tg(t,s,l)}function Tg(t,s,l){s.status="fulfilled",s.value=l,Ag(s),t.state=l,s=t.pending,s!==null&&(l=s.next,l===s?t.pending=null:(l=l.next,s.next=l,_g(t,l)))}function Pu(t,s,l){var c=t.pending;if(t.pending=null,c!==null){c=c.next;do s.status="rejected",s.reason=l,Ag(s),s=s.next;while(s!==c)}t.action=null}function Ag(t){t=t.listeners;for(var s=0;s<t.length;s++)(0,t[s])()}function Cg(t,s){return s}function Ng(t,s){if(we){var l=De.formState;if(l!==null){e:{var c=pe;if(we){if(Be){t:{for(var h=Be,p=fn;h.nodeType!==8;){if(!p){h=null;break t}if(h=dn(h.nextSibling),h===null){h=null;break t}}p=h.data,h=p==="F!"||p==="F"?h:null}if(h){Be=dn(h.nextSibling),c=h.data==="F!";break e}}fi(c)}c=!1}c&&(s=l[0])}}return l=Mt(),l.memoizedState=l.baseState=s,c={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Cg,lastRenderedState:s},l.queue=c,l=Yg.bind(null,pe,c),c.dispatch=l,c=Qu(!1),p=nf.bind(null,pe,!1,c.queue),c=Mt(),h={state:s,dispatch:null,action:t,pending:null},c.queue=h,l=l1.bind(null,pe,h,p,l),h.dispatch=l,c.memoizedState=t,[s,l,!1]}function kg(t){var s=Je();return Mg(s,Oe,t)}function Mg(t,s,l){if(s=Yu(t,s,Cg)[0],t=Jl(Vn)[0],typeof s=="object"&&s!==null&&typeof s.then=="function")try{var c=ua(s)}catch(v){throw v===Gs?$l:v}else c=s;s=Je();var h=s.queue,p=h.dispatch;return l!==s.memoizedState&&(pe.flags|=2048,Qs(9,{destroy:void 0},o1.bind(null,h,l),null)),[c,p,t]}function o1(t,s){t.action=s}function Og(t){var s=Je(),l=Oe;if(l!==null)return Mg(s,l,t);Je(),s=s.memoizedState,l=Je();var c=l.queue.dispatch;return l.memoizedState=t,[s,c,!1]}function Qs(t,s,l,c){return t={tag:t,create:l,deps:c,inst:s,next:null},s=pe.updateQueue,s===null&&(s=Ql(),pe.updateQueue=s),l=s.lastEffect,l===null?s.lastEffect=t.next=t:(c=l.next,l.next=t,t.next=c,s.lastEffect=t),t}function jg(){return Je().memoizedState}function Zl(t,s,l,c){var h=Mt();pe.flags|=t,h.memoizedState=Qs(1|s,{destroy:void 0},l,c===void 0?null:c)}function Wl(t,s,l,c){var h=Je();c=c===void 0?null:c;var p=h.memoizedState.inst;Oe!==null&&c!==null&&$u(c,Oe.memoizedState.deps)?h.memoizedState=Qs(s,p,l,c):(pe.flags|=t,h.memoizedState=Qs(1|s,p,l,c))}function Lg(t,s){Zl(8390656,8,t,s)}function Ju(t,s){Wl(2048,8,t,s)}function c1(t){pe.flags|=4;var s=pe.updateQueue;if(s===null)s=Ql(),pe.updateQueue=s,s.events=[t];else{var l=s.events;l===null?s.events=[t]:l.push(t)}}function Rg(t){var s=Je().memoizedState;return c1({ref:s,nextImpl:t}),function(){if((Ce&2)!==0)throw Error(r(440));return s.impl.apply(void 0,arguments)}}function Dg(t,s){return Wl(4,2,t,s)}function zg(t,s){return Wl(4,4,t,s)}function Ug(t,s){if(typeof s=="function"){t=t();var l=s(t);return function(){typeof l=="function"?l():s(null)}}if(s!=null)return t=t(),s.current=t,function(){s.current=null}}function Hg(t,s,l){l=l!=null?l.concat([t]):null,Wl(4,4,Ug.bind(null,s,t),l)}function Zu(){}function Bg(t,s){var l=Je();s=s===void 0?null:s;var c=l.memoizedState;return s!==null&&$u(s,c[1])?c[0]:(l.memoizedState=[t,s],t)}function qg(t,s){var l=Je();s=s===void 0?null:s;var c=l.memoizedState;if(s!==null&&$u(s,c[1]))return c[0];if(c=t(),es){Ft(!0);try{t()}finally{Ft(!1)}}return l.memoizedState=[c,s],c}function Wu(t,s,l){return l===void 0||(In&1073741824)!==0&&(ve&261930)===0?t.memoizedState=s:(t.memoizedState=l,t=$m(),pe.lanes|=t,Si|=t,l)}function $g(t,s,l,c){return Qt(l,s)?l:Xs.current!==null?(t=Wu(t,l,c),Qt(t,s)||(at=!0),t):(In&42)===0||(In&1073741824)!==0&&(ve&261930)===0?(at=!0,t.memoizedState=l):(t=$m(),pe.lanes|=t,Si|=t,s)}function Ig(t,s,l,c,h){var p=Z.p;Z.p=p!==0&&8>p?p:8;var v=q.T,T={};q.T=T,nf(t,!1,s,l);try{var N=h(),z=q.S;if(z!==null&&z(T,N),N!==null&&typeof N=="object"&&typeof N.then=="function"){var G=s1(N,c);fa(t,s,G,tn(t))}else fa(t,s,c,tn(t))}catch(F){fa(t,s,{then:function(){},status:"rejected",reason:F},tn())}finally{Z.p=p,v!==null&&T.types!==null&&(v.types=T.types),q.T=v}}function u1(){}function ef(t,s,l,c){if(t.tag!==5)throw Error(r(476));var h=Vg(t).queue;Ig(t,h,s,re,l===null?u1:function(){return Gg(t),l(c)})}function Vg(t){var s=t.memoizedState;if(s!==null)return s;s={memoizedState:re,baseState:re,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Vn,lastRenderedState:re},next:null};var l={};return s.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Vn,lastRenderedState:l},next:null},t.memoizedState=s,t=t.alternate,t!==null&&(t.memoizedState=s),s}function Gg(t){var s=Vg(t);s.next===null&&(s=t.alternate.memoizedState),fa(t,s.next.queue,{},tn())}function tf(){return St(Na)}function Kg(){return Je().memoizedState}function Xg(){return Je().memoizedState}function f1(t){for(var s=t.return;s!==null;){switch(s.tag){case 24:case 3:var l=tn();t=pi(l);var c=gi(s,t,l);c!==null&&(Bt(c,s,l),aa(c,s,l)),s={cache:Mu()},t.payload=s;return}s=s.return}}function h1(t,s,l){var c=tn();l={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},eo(t)?Fg(s,l):(l=vu(t,s,l,c),l!==null&&(Bt(l,t,c),Qg(l,s,c)))}function Yg(t,s,l){var c=tn();fa(t,s,l,c)}function fa(t,s,l,c){var h={lane:c,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(eo(t))Fg(s,h);else{var p=t.alternate;if(t.lanes===0&&(p===null||p.lanes===0)&&(p=s.lastRenderedReducer,p!==null))try{var v=s.lastRenderedState,T=p(v,l);if(h.hasEagerState=!0,h.eagerState=T,Qt(T,v))return Rl(t,s,h,0),De===null&&Ll(),!1}catch{}finally{}if(l=vu(t,s,h,c),l!==null)return Bt(l,t,c),Qg(l,s,c),!0}return!1}function nf(t,s,l,c){if(c={lane:2,revertLane:Df(),gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null},eo(t)){if(s)throw Error(r(479))}else s=vu(t,l,c,2),s!==null&&Bt(s,t,2)}function eo(t){var s=t.alternate;return t===pe||s!==null&&s===pe}function Fg(t,s){Ys=Yl=!0;var l=t.pending;l===null?s.next=s:(s.next=l.next,l.next=s),t.pending=s}function Qg(t,s,l){if((l&4194048)!==0){var c=s.lanes;c&=t.pendingLanes,l|=c,s.lanes=l,ep(t,l)}}var ha={readContext:St,use:Pl,useCallback:Fe,useContext:Fe,useEffect:Fe,useImperativeHandle:Fe,useLayoutEffect:Fe,useInsertionEffect:Fe,useMemo:Fe,useReducer:Fe,useRef:Fe,useState:Fe,useDebugValue:Fe,useDeferredValue:Fe,useTransition:Fe,useSyncExternalStore:Fe,useId:Fe,useHostTransitionStatus:Fe,useFormState:Fe,useActionState:Fe,useOptimistic:Fe,useMemoCache:Fe,useCacheRefresh:Fe};ha.useEffectEvent=Fe;var Pg={readContext:St,use:Pl,useCallback:function(t,s){return Mt().memoizedState=[t,s===void 0?null:s],t},useContext:St,useEffect:Lg,useImperativeHandle:function(t,s,l){l=l!=null?l.concat([t]):null,Zl(4194308,4,Ug.bind(null,s,t),l)},useLayoutEffect:function(t,s){return Zl(4194308,4,t,s)},useInsertionEffect:function(t,s){Zl(4,2,t,s)},useMemo:function(t,s){var l=Mt();s=s===void 0?null:s;var c=t();if(es){Ft(!0);try{t()}finally{Ft(!1)}}return l.memoizedState=[c,s],c},useReducer:function(t,s,l){var c=Mt();if(l!==void 0){var h=l(s);if(es){Ft(!0);try{l(s)}finally{Ft(!1)}}}else h=s;return c.memoizedState=c.baseState=h,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:h},c.queue=t,t=t.dispatch=h1.bind(null,pe,t),[c.memoizedState,t]},useRef:function(t){var s=Mt();return t={current:t},s.memoizedState=t},useState:function(t){t=Qu(t);var s=t.queue,l=Yg.bind(null,pe,s);return s.dispatch=l,[t.memoizedState,l]},useDebugValue:Zu,useDeferredValue:function(t,s){var l=Mt();return Wu(l,t,s)},useTransition:function(){var t=Qu(!1);return t=Ig.bind(null,pe,t.queue,!0,!1),Mt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,s,l){var c=pe,h=Mt();if(we){if(l===void 0)throw Error(r(407));l=l()}else{if(l=s(),De===null)throw Error(r(349));(ve&127)!==0||yg(c,s,l)}h.memoizedState=l;var p={value:l,getSnapshot:s};return h.queue=p,Lg(vg.bind(null,c,p,t),[t]),c.flags|=2048,Qs(9,{destroy:void 0},bg.bind(null,c,p,l,s),null),l},useId:function(){var t=Mt(),s=De.identifierPrefix;if(we){var l=Cn,c=An;l=(c&~(1<<32-kt(c)-1)).toString(32)+l,s="_"+s+"R_"+l,l=Fl++,0<l&&(s+="H"+l.toString(32)),s+="_"}else l=r1++,s="_"+s+"r_"+l.toString(32)+"_";return t.memoizedState=s},useHostTransitionStatus:tf,useFormState:Ng,useActionState:Ng,useOptimistic:function(t){var s=Mt();s.memoizedState=s.baseState=t;var l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return s.queue=l,s=nf.bind(null,pe,!0,l),l.dispatch=s,[t,s]},useMemoCache:Xu,useCacheRefresh:function(){return Mt().memoizedState=f1.bind(null,pe)},useEffectEvent:function(t){var s=Mt(),l={impl:t};return s.memoizedState=l,function(){if((Ce&2)!==0)throw Error(r(440));return l.impl.apply(void 0,arguments)}}},sf={readContext:St,use:Pl,useCallback:Bg,useContext:St,useEffect:Ju,useImperativeHandle:Hg,useInsertionEffect:Dg,useLayoutEffect:zg,useMemo:qg,useReducer:Jl,useRef:jg,useState:function(){return Jl(Vn)},useDebugValue:Zu,useDeferredValue:function(t,s){var l=Je();return $g(l,Oe.memoizedState,t,s)},useTransition:function(){var t=Jl(Vn)[0],s=Je().memoizedState;return[typeof t=="boolean"?t:ua(t),s]},useSyncExternalStore:mg,useId:Kg,useHostTransitionStatus:tf,useFormState:kg,useActionState:kg,useOptimistic:function(t,s){var l=Je();return xg(l,Oe,t,s)},useMemoCache:Xu,useCacheRefresh:Xg};sf.useEffectEvent=Rg;var Jg={readContext:St,use:Pl,useCallback:Bg,useContext:St,useEffect:Ju,useImperativeHandle:Hg,useInsertionEffect:Dg,useLayoutEffect:zg,useMemo:qg,useReducer:Fu,useRef:jg,useState:function(){return Fu(Vn)},useDebugValue:Zu,useDeferredValue:function(t,s){var l=Je();return Oe===null?Wu(l,t,s):$g(l,Oe.memoizedState,t,s)},useTransition:function(){var t=Fu(Vn)[0],s=Je().memoizedState;return[typeof t=="boolean"?t:ua(t),s]},useSyncExternalStore:mg,useId:Kg,useHostTransitionStatus:tf,useFormState:Og,useActionState:Og,useOptimistic:function(t,s){var l=Je();return Oe!==null?xg(l,Oe,t,s):(l.baseState=t,[t,l.queue.dispatch])},useMemoCache:Xu,useCacheRefresh:Xg};Jg.useEffectEvent=Rg;function rf(t,s,l,c){s=t.memoizedState,l=l(c,s),l=l==null?s:y({},s,l),t.memoizedState=l,t.lanes===0&&(t.updateQueue.baseState=l)}var af={enqueueSetState:function(t,s,l){t=t._reactInternals;var c=tn(),h=pi(c);h.payload=s,l!=null&&(h.callback=l),s=gi(t,h,c),s!==null&&(Bt(s,t,c),aa(s,t,c))},enqueueReplaceState:function(t,s,l){t=t._reactInternals;var c=tn(),h=pi(c);h.tag=1,h.payload=s,l!=null&&(h.callback=l),s=gi(t,h,c),s!==null&&(Bt(s,t,c),aa(s,t,c))},enqueueForceUpdate:function(t,s){t=t._reactInternals;var l=tn(),c=pi(l);c.tag=2,s!=null&&(c.callback=s),s=gi(t,c,l),s!==null&&(Bt(s,t,l),aa(s,t,l))}};function Zg(t,s,l,c,h,p,v){return t=t.stateNode,typeof t.shouldComponentUpdate=="function"?t.shouldComponentUpdate(c,p,v):s.prototype&&s.prototype.isPureReactComponent?!Zr(l,c)||!Zr(h,p):!0}function Wg(t,s,l,c){t=s.state,typeof s.componentWillReceiveProps=="function"&&s.componentWillReceiveProps(l,c),typeof s.UNSAFE_componentWillReceiveProps=="function"&&s.UNSAFE_componentWillReceiveProps(l,c),s.state!==t&&af.enqueueReplaceState(s,s.state,null)}function ts(t,s){var l=s;if("ref"in s){l={};for(var c in s)c!=="ref"&&(l[c]=s[c])}if(t=t.defaultProps){l===s&&(l=y({},l));for(var h in t)l[h]===void 0&&(l[h]=t[h])}return l}function em(t){jl(t)}function tm(t){console.error(t)}function nm(t){jl(t)}function to(t,s){try{var l=t.onUncaughtError;l(s.value,{componentStack:s.stack})}catch(c){setTimeout(function(){throw c})}}function im(t,s,l){try{var c=t.onCaughtError;c(l.value,{componentStack:l.stack,errorBoundary:s.tag===1?s.stateNode:null})}catch(h){setTimeout(function(){throw h})}}function lf(t,s,l){return l=pi(l),l.tag=3,l.payload={element:null},l.callback=function(){to(t,s)},l}function sm(t){return t=pi(t),t.tag=3,t}function rm(t,s,l,c){var h=l.type.getDerivedStateFromError;if(typeof h=="function"){var p=c.value;t.payload=function(){return h(p)},t.callback=function(){im(s,l,c)}}var v=l.stateNode;v!==null&&typeof v.componentDidCatch=="function"&&(t.callback=function(){im(s,l,c),typeof h!="function"&&(wi===null?wi=new Set([this]):wi.add(this));var T=c.stack;this.componentDidCatch(c.value,{componentStack:T!==null?T:""})})}function d1(t,s,l,c,h){if(l.flags|=32768,c!==null&&typeof c=="object"&&typeof c.then=="function"){if(s=l.alternate,s!==null&&$s(s,l,h,!0),l=Jt.current,l!==null){switch(l.tag){case 31:case 13:return hn===null?po():l.alternate===null&&Qe===0&&(Qe=3),l.flags&=-257,l.flags|=65536,l.lanes=h,c===Il?l.flags|=16384:(s=l.updateQueue,s===null?l.updateQueue=new Set([c]):s.add(c),jf(t,c,h)),!1;case 22:return l.flags|=65536,c===Il?l.flags|=16384:(s=l.updateQueue,s===null?(s={transitions:null,markerInstances:null,retryQueue:new Set([c])},l.updateQueue=s):(l=s.retryQueue,l===null?s.retryQueue=new Set([c]):l.add(c)),jf(t,c,h)),!1}throw Error(r(435,l.tag))}return jf(t,c,h),po(),!1}if(we)return s=Jt.current,s!==null?((s.flags&65536)===0&&(s.flags|=256),s.flags|=65536,s.lanes=h,c!==Tu&&(t=Error(r(422),{cause:c}),ta(on(t,l)))):(c!==Tu&&(s=Error(r(423),{cause:c}),ta(on(s,l))),t=t.current.alternate,t.flags|=65536,h&=-h,t.lanes|=h,c=on(c,l),h=lf(t.stateNode,c,h),zu(t,h),Qe!==4&&(Qe=2)),!1;var p=Error(r(520),{cause:c});if(p=on(p,l),Sa===null?Sa=[p]:Sa.push(p),Qe!==4&&(Qe=2),s===null)return!0;c=on(c,l),l=s;do{switch(l.tag){case 3:return l.flags|=65536,t=h&-h,l.lanes|=t,t=lf(l.stateNode,c,t),zu(l,t),!1;case 1:if(s=l.type,p=l.stateNode,(l.flags&128)===0&&(typeof s.getDerivedStateFromError=="function"||p!==null&&typeof p.componentDidCatch=="function"&&(wi===null||!wi.has(p))))return l.flags|=65536,h&=-h,l.lanes|=h,h=sm(h),rm(h,t,l,c),zu(l,h),!1}l=l.return}while(l!==null);return!1}var of=Error(r(461)),at=!1;function wt(t,s,l,c){s.child=t===null?cg(s,null,l,c):Wi(s,t.child,l,c)}function am(t,s,l,c,h){l=l.render;var p=s.ref;if("ref"in c){var v={};for(var T in c)T!=="ref"&&(v[T]=c[T])}else v=c;return Qi(s),c=Iu(t,s,l,v,p,h),T=Vu(),t!==null&&!at?(Gu(t,s,h),Gn(t,s,h)):(we&&T&&_u(s),s.flags|=1,wt(t,s,c,h),s.child)}function lm(t,s,l,c,h){if(t===null){var p=l.type;return typeof p=="function"&&!Su(p)&&p.defaultProps===void 0&&l.compare===null?(s.tag=15,s.type=p,om(t,s,p,c,h)):(t=zl(l.type,null,c,s,s.mode,h),t.ref=s.ref,t.return=s,s.child=t)}if(p=t.child,!mf(t,h)){var v=p.memoizedProps;if(l=l.compare,l=l!==null?l:Zr,l(v,c)&&t.ref===s.ref)return Gn(t,s,h)}return s.flags|=1,t=Hn(p,c),t.ref=s.ref,t.return=s,s.child=t}function om(t,s,l,c,h){if(t!==null){var p=t.memoizedProps;if(Zr(p,c)&&t.ref===s.ref)if(at=!1,s.pendingProps=c=p,mf(t,h))(t.flags&131072)!==0&&(at=!0);else return s.lanes=t.lanes,Gn(t,s,h)}return cf(t,s,l,c,h)}function cm(t,s,l,c){var h=c.children,p=t!==null?t.memoizedState:null;if(t===null&&s.stateNode===null&&(s.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),c.mode==="hidden"){if((s.flags&128)!==0){if(p=p!==null?p.baseLanes|l:l,t!==null){for(c=s.child=t.child,h=0;c!==null;)h=h|c.lanes|c.childLanes,c=c.sibling;c=h&~p}else c=0,s.child=null;return um(t,s,p,l,c)}if((l&536870912)!==0)s.memoizedState={baseLanes:0,cachePool:null},t!==null&&ql(s,p!==null?p.cachePool:null),p!==null?hg(s,p):Hu(),dg(s);else return c=s.lanes=536870912,um(t,s,p!==null?p.baseLanes|l:l,l,c)}else p!==null?(ql(s,p.cachePool),hg(s,p),yi(),s.memoizedState=null):(t!==null&&ql(s,null),Hu(),yi());return wt(t,s,h,l),s.child}function da(t,s){return t!==null&&t.tag===22||s.stateNode!==null||(s.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),s.sibling}function um(t,s,l,c,h){var p=ju();return p=p===null?null:{parent:st._currentValue,pool:p},s.memoizedState={baseLanes:l,cachePool:p},t!==null&&ql(s,null),Hu(),dg(s),t!==null&&$s(t,s,c,!0),s.childLanes=h,null}function no(t,s){return s=so({mode:s.mode,children:s.children},t.mode),s.ref=t.ref,t.child=s,s.return=t,s}function fm(t,s,l){return Wi(s,t.child,null,l),t=no(s,s.pendingProps),t.flags|=2,Zt(s),s.memoizedState=null,t}function p1(t,s,l){var c=s.pendingProps,h=(s.flags&128)!==0;if(s.flags&=-129,t===null){if(we){if(c.mode==="hidden")return t=no(s,c),s.lanes=536870912,da(null,t);if(qu(s),(t=Be)?(t=_y(t,fn),t=t!==null&&t.data==="&"?t:null,t!==null&&(s.memoizedState={dehydrated:t,treeContext:ci!==null?{id:An,overflow:Cn}:null,retryLane:536870912,hydrationErrors:null},l=Fp(t),l.return=s,s.child=l,vt=s,Be=null)):t=null,t===null)throw fi(s);return s.lanes=536870912,null}return no(s,c)}var p=t.memoizedState;if(p!==null){var v=p.dehydrated;if(qu(s),h)if(s.flags&256)s.flags&=-257,s=fm(t,s,l);else if(s.memoizedState!==null)s.child=t.child,s.flags|=128,s=null;else throw Error(r(558));else if(at||$s(t,s,l,!1),h=(l&t.childLanes)!==0,at||h){if(c=De,c!==null&&(v=tp(c,l),v!==0&&v!==p.retryLane))throw p.retryLane=v,Ki(t,v),Bt(c,t,v),of;po(),s=fm(t,s,l)}else t=p.treeContext,Be=dn(v.nextSibling),vt=s,we=!0,ui=null,fn=!1,t!==null&&Jp(s,t),s=no(s,c),s.flags|=4096;return s}return t=Hn(t.child,{mode:c.mode,children:c.children}),t.ref=s.ref,s.child=t,t.return=s,t}function io(t,s){var l=s.ref;if(l===null)t!==null&&t.ref!==null&&(s.flags|=4194816);else{if(typeof l!="function"&&typeof l!="object")throw Error(r(284));(t===null||t.ref!==l)&&(s.flags|=4194816)}}function cf(t,s,l,c,h){return Qi(s),l=Iu(t,s,l,c,void 0,h),c=Vu(),t!==null&&!at?(Gu(t,s,h),Gn(t,s,h)):(we&&c&&_u(s),s.flags|=1,wt(t,s,l,h),s.child)}function hm(t,s,l,c,h,p){return Qi(s),s.updateQueue=null,l=gg(s,c,l,h),pg(t),c=Vu(),t!==null&&!at?(Gu(t,s,p),Gn(t,s,p)):(we&&c&&_u(s),s.flags|=1,wt(t,s,l,p),s.child)}function dm(t,s,l,c,h){if(Qi(s),s.stateNode===null){var p=Us,v=l.contextType;typeof v=="object"&&v!==null&&(p=St(v)),p=new l(c,p),s.memoizedState=p.state!==null&&p.state!==void 0?p.state:null,p.updater=af,s.stateNode=p,p._reactInternals=s,p=s.stateNode,p.props=c,p.state=s.memoizedState,p.refs={},Ru(s),v=l.contextType,p.context=typeof v=="object"&&v!==null?St(v):Us,p.state=s.memoizedState,v=l.getDerivedStateFromProps,typeof v=="function"&&(rf(s,l,v,c),p.state=s.memoizedState),typeof l.getDerivedStateFromProps=="function"||typeof p.getSnapshotBeforeUpdate=="function"||typeof p.UNSAFE_componentWillMount!="function"&&typeof p.componentWillMount!="function"||(v=p.state,typeof p.componentWillMount=="function"&&p.componentWillMount(),typeof p.UNSAFE_componentWillMount=="function"&&p.UNSAFE_componentWillMount(),v!==p.state&&af.enqueueReplaceState(p,p.state,null),oa(s,c,p,h),la(),p.state=s.memoizedState),typeof p.componentDidMount=="function"&&(s.flags|=4194308),c=!0}else if(t===null){p=s.stateNode;var T=s.memoizedProps,N=ts(l,T);p.props=N;var z=p.context,G=l.contextType;v=Us,typeof G=="object"&&G!==null&&(v=St(G));var F=l.getDerivedStateFromProps;G=typeof F=="function"||typeof p.getSnapshotBeforeUpdate=="function",T=s.pendingProps!==T,G||typeof p.UNSAFE_componentWillReceiveProps!="function"&&typeof p.componentWillReceiveProps!="function"||(T||z!==v)&&Wg(s,p,c,v),di=!1;var U=s.memoizedState;p.state=U,oa(s,c,p,h),la(),z=s.memoizedState,T||U!==z||di?(typeof F=="function"&&(rf(s,l,F,c),z=s.memoizedState),(N=di||Zg(s,l,N,c,U,z,v))?(G||typeof p.UNSAFE_componentWillMount!="function"&&typeof p.componentWillMount!="function"||(typeof p.componentWillMount=="function"&&p.componentWillMount(),typeof p.UNSAFE_componentWillMount=="function"&&p.UNSAFE_componentWillMount()),typeof p.componentDidMount=="function"&&(s.flags|=4194308)):(typeof p.componentDidMount=="function"&&(s.flags|=4194308),s.memoizedProps=c,s.memoizedState=z),p.props=c,p.state=z,p.context=v,c=N):(typeof p.componentDidMount=="function"&&(s.flags|=4194308),c=!1)}else{p=s.stateNode,Du(t,s),v=s.memoizedProps,G=ts(l,v),p.props=G,F=s.pendingProps,U=p.context,z=l.contextType,N=Us,typeof z=="object"&&z!==null&&(N=St(z)),T=l.getDerivedStateFromProps,(z=typeof T=="function"||typeof p.getSnapshotBeforeUpdate=="function")||typeof p.UNSAFE_componentWillReceiveProps!="function"&&typeof p.componentWillReceiveProps!="function"||(v!==F||U!==N)&&Wg(s,p,c,N),di=!1,U=s.memoizedState,p.state=U,oa(s,c,p,h),la();var B=s.memoizedState;v!==F||U!==B||di||t!==null&&t.dependencies!==null&&Hl(t.dependencies)?(typeof T=="function"&&(rf(s,l,T,c),B=s.memoizedState),(G=di||Zg(s,l,G,c,U,B,N)||t!==null&&t.dependencies!==null&&Hl(t.dependencies))?(z||typeof p.UNSAFE_componentWillUpdate!="function"&&typeof p.componentWillUpdate!="function"||(typeof p.componentWillUpdate=="function"&&p.componentWillUpdate(c,B,N),typeof p.UNSAFE_componentWillUpdate=="function"&&p.UNSAFE_componentWillUpdate(c,B,N)),typeof p.componentDidUpdate=="function"&&(s.flags|=4),typeof p.getSnapshotBeforeUpdate=="function"&&(s.flags|=1024)):(typeof p.componentDidUpdate!="function"||v===t.memoizedProps&&U===t.memoizedState||(s.flags|=4),typeof p.getSnapshotBeforeUpdate!="function"||v===t.memoizedProps&&U===t.memoizedState||(s.flags|=1024),s.memoizedProps=c,s.memoizedState=B),p.props=c,p.state=B,p.context=N,c=G):(typeof p.componentDidUpdate!="function"||v===t.memoizedProps&&U===t.memoizedState||(s.flags|=4),typeof p.getSnapshotBeforeUpdate!="function"||v===t.memoizedProps&&U===t.memoizedState||(s.flags|=1024),c=!1)}return p=c,io(t,s),c=(s.flags&128)!==0,p||c?(p=s.stateNode,l=c&&typeof l.getDerivedStateFromError!="function"?null:p.render(),s.flags|=1,t!==null&&c?(s.child=Wi(s,t.child,null,h),s.child=Wi(s,null,l,h)):wt(t,s,l,h),s.memoizedState=p.state,t=s.child):t=Gn(t,s,h),t}function pm(t,s,l,c){return Yi(),s.flags|=256,wt(t,s,l,c),s.child}var uf={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function ff(t){return{baseLanes:t,cachePool:ig()}}function hf(t,s,l){return t=t!==null?t.childLanes&~l:0,s&&(t|=en),t}function gm(t,s,l){var c=s.pendingProps,h=!1,p=(s.flags&128)!==0,v;if((v=p)||(v=t!==null&&t.memoizedState===null?!1:(Pe.current&2)!==0),v&&(h=!0,s.flags&=-129),v=(s.flags&32)!==0,s.flags&=-33,t===null){if(we){if(h?mi(s):yi(),(t=Be)?(t=_y(t,fn),t=t!==null&&t.data!=="&"?t:null,t!==null&&(s.memoizedState={dehydrated:t,treeContext:ci!==null?{id:An,overflow:Cn}:null,retryLane:536870912,hydrationErrors:null},l=Fp(t),l.return=s,s.child=l,vt=s,Be=null)):t=null,t===null)throw fi(s);return Ff(t)?s.lanes=32:s.lanes=536870912,null}var T=c.children;return c=c.fallback,h?(yi(),h=s.mode,T=so({mode:"hidden",children:T},h),c=Xi(c,h,l,null),T.return=s,c.return=s,T.sibling=c,s.child=T,c=s.child,c.memoizedState=ff(l),c.childLanes=hf(t,v,l),s.memoizedState=uf,da(null,c)):(mi(s),df(s,T))}var N=t.memoizedState;if(N!==null&&(T=N.dehydrated,T!==null)){if(p)s.flags&256?(mi(s),s.flags&=-257,s=pf(t,s,l)):s.memoizedState!==null?(yi(),s.child=t.child,s.flags|=128,s=null):(yi(),T=c.fallback,h=s.mode,c=so({mode:"visible",children:c.children},h),T=Xi(T,h,l,null),T.flags|=2,c.return=s,T.return=s,c.sibling=T,s.child=c,Wi(s,t.child,null,l),c=s.child,c.memoizedState=ff(l),c.childLanes=hf(t,v,l),s.memoizedState=uf,s=da(null,c));else if(mi(s),Ff(T)){if(v=T.nextSibling&&T.nextSibling.dataset,v)var z=v.dgst;v=z,c=Error(r(419)),c.stack="",c.digest=v,ta({value:c,source:null,stack:null}),s=pf(t,s,l)}else if(at||$s(t,s,l,!1),v=(l&t.childLanes)!==0,at||v){if(v=De,v!==null&&(c=tp(v,l),c!==0&&c!==N.retryLane))throw N.retryLane=c,Ki(t,c),Bt(v,t,c),of;Yf(T)||po(),s=pf(t,s,l)}else Yf(T)?(s.flags|=192,s.child=t.child,s=null):(t=N.treeContext,Be=dn(T.nextSibling),vt=s,we=!0,ui=null,fn=!1,t!==null&&Jp(s,t),s=df(s,c.children),s.flags|=4096);return s}return h?(yi(),T=c.fallback,h=s.mode,N=t.child,z=N.sibling,c=Hn(N,{mode:"hidden",children:c.children}),c.subtreeFlags=N.subtreeFlags&65011712,z!==null?T=Hn(z,T):(T=Xi(T,h,l,null),T.flags|=2),T.return=s,c.return=s,c.sibling=T,s.child=c,da(null,c),c=s.child,T=t.child.memoizedState,T===null?T=ff(l):(h=T.cachePool,h!==null?(N=st._currentValue,h=h.parent!==N?{parent:N,pool:N}:h):h=ig(),T={baseLanes:T.baseLanes|l,cachePool:h}),c.memoizedState=T,c.childLanes=hf(t,v,l),s.memoizedState=uf,da(t.child,c)):(mi(s),l=t.child,t=l.sibling,l=Hn(l,{mode:"visible",children:c.children}),l.return=s,l.sibling=null,t!==null&&(v=s.deletions,v===null?(s.deletions=[t],s.flags|=16):v.push(t)),s.child=l,s.memoizedState=null,l)}function df(t,s){return s=so({mode:"visible",children:s},t.mode),s.return=t,t.child=s}function so(t,s){return t=Pt(22,t,null,s),t.lanes=0,t}function pf(t,s,l){return Wi(s,t.child,null,l),t=df(s,s.pendingProps.children),t.flags|=2,s.memoizedState=null,t}function mm(t,s,l){t.lanes|=s;var c=t.alternate;c!==null&&(c.lanes|=s),Nu(t.return,s,l)}function gf(t,s,l,c,h,p){var v=t.memoizedState;v===null?t.memoizedState={isBackwards:s,rendering:null,renderingStartTime:0,last:c,tail:l,tailMode:h,treeForkCount:p}:(v.isBackwards=s,v.rendering=null,v.renderingStartTime=0,v.last=c,v.tail=l,v.tailMode=h,v.treeForkCount=p)}function ym(t,s,l){var c=s.pendingProps,h=c.revealOrder,p=c.tail;c=c.children;var v=Pe.current,T=(v&2)!==0;if(T?(v=v&1|2,s.flags|=128):v&=1,W(Pe,v),wt(t,s,c,l),c=we?ea:0,!T&&t!==null&&(t.flags&128)!==0)e:for(t=s.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&mm(t,l,s);else if(t.tag===19)mm(t,l,s);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===s)break e;for(;t.sibling===null;){if(t.return===null||t.return===s)break e;t=t.return}t.sibling.return=t.return,t=t.sibling}switch(h){case"forwards":for(l=s.child,h=null;l!==null;)t=l.alternate,t!==null&&Xl(t)===null&&(h=l),l=l.sibling;l=h,l===null?(h=s.child,s.child=null):(h=l.sibling,l.sibling=null),gf(s,!1,h,l,p,c);break;case"backwards":case"unstable_legacy-backwards":for(l=null,h=s.child,s.child=null;h!==null;){if(t=h.alternate,t!==null&&Xl(t)===null){s.child=h;break}t=h.sibling,h.sibling=l,l=h,h=t}gf(s,!0,l,null,p,c);break;case"together":gf(s,!1,null,null,void 0,c);break;default:s.memoizedState=null}return s.child}function Gn(t,s,l){if(t!==null&&(s.dependencies=t.dependencies),Si|=s.lanes,(l&s.childLanes)===0)if(t!==null){if($s(t,s,l,!1),(l&s.childLanes)===0)return null}else return null;if(t!==null&&s.child!==t.child)throw Error(r(153));if(s.child!==null){for(t=s.child,l=Hn(t,t.pendingProps),s.child=l,l.return=s;t.sibling!==null;)t=t.sibling,l=l.sibling=Hn(t,t.pendingProps),l.return=s;l.sibling=null}return s.child}function mf(t,s){return(t.lanes&s)!==0?!0:(t=t.dependencies,!!(t!==null&&Hl(t)))}function g1(t,s,l){switch(s.tag){case 3:nt(s,s.stateNode.containerInfo),hi(s,st,t.memoizedState.cache),Yi();break;case 27:case 5:Rn(s);break;case 4:nt(s,s.stateNode.containerInfo);break;case 10:hi(s,s.type,s.memoizedProps.value);break;case 31:if(s.memoizedState!==null)return s.flags|=128,qu(s),null;break;case 13:var c=s.memoizedState;if(c!==null)return c.dehydrated!==null?(mi(s),s.flags|=128,null):(l&s.child.childLanes)!==0?gm(t,s,l):(mi(s),t=Gn(t,s,l),t!==null?t.sibling:null);mi(s);break;case 19:var h=(t.flags&128)!==0;if(c=(l&s.childLanes)!==0,c||($s(t,s,l,!1),c=(l&s.childLanes)!==0),h){if(c)return ym(t,s,l);s.flags|=128}if(h=s.memoizedState,h!==null&&(h.rendering=null,h.tail=null,h.lastEffect=null),W(Pe,Pe.current),c)break;return null;case 22:return s.lanes=0,cm(t,s,l,s.pendingProps);case 24:hi(s,st,t.memoizedState.cache)}return Gn(t,s,l)}function bm(t,s,l){if(t!==null)if(t.memoizedProps!==s.pendingProps)at=!0;else{if(!mf(t,l)&&(s.flags&128)===0)return at=!1,g1(t,s,l);at=(t.flags&131072)!==0}else at=!1,we&&(s.flags&1048576)!==0&&Pp(s,ea,s.index);switch(s.lanes=0,s.tag){case 16:e:{var c=s.pendingProps;if(t=Ji(s.elementType),s.type=t,typeof t=="function")Su(t)?(c=ts(t,c),s.tag=1,s=dm(null,s,t,c,l)):(s.tag=0,s=cf(null,s,t,c,l));else{if(t!=null){var h=t.$$typeof;if(h===V){s.tag=11,s=am(null,s,t,c,l);break e}else if(h===j){s.tag=14,s=lm(null,s,t,c,l);break e}}throw s=ce(t)||t,Error(r(306,s,""))}}return s;case 0:return cf(t,s,s.type,s.pendingProps,l);case 1:return c=s.type,h=ts(c,s.pendingProps),dm(t,s,c,h,l);case 3:e:{if(nt(s,s.stateNode.containerInfo),t===null)throw Error(r(387));c=s.pendingProps;var p=s.memoizedState;h=p.element,Du(t,s),oa(s,c,null,l);var v=s.memoizedState;if(c=v.cache,hi(s,st,c),c!==p.cache&&ku(s,[st],l,!0),la(),c=v.element,p.isDehydrated)if(p={element:c,isDehydrated:!1,cache:v.cache},s.updateQueue.baseState=p,s.memoizedState=p,s.flags&256){s=pm(t,s,c,l);break e}else if(c!==h){h=on(Error(r(424)),s),ta(h),s=pm(t,s,c,l);break e}else{switch(t=s.stateNode.containerInfo,t.nodeType){case 9:t=t.body;break;default:t=t.nodeName==="HTML"?t.ownerDocument.body:t}for(Be=dn(t.firstChild),vt=s,we=!0,ui=null,fn=!0,l=cg(s,null,c,l),s.child=l;l;)l.flags=l.flags&-3|4096,l=l.sibling}else{if(Yi(),c===h){s=Gn(t,s,l);break e}wt(t,s,c,l)}s=s.child}return s;case 26:return io(t,s),t===null?(l=ky(s.type,null,s.pendingProps,null))?s.memoizedState=l:we||(l=s.type,t=s.pendingProps,c=wo(se.current).createElement(l),c[bt]=s,c[Lt]=t,xt(c,l,t),gt(c),s.stateNode=c):s.memoizedState=ky(s.type,t.memoizedProps,s.pendingProps,t.memoizedState),null;case 27:return Rn(s),t===null&&we&&(c=s.stateNode=Ay(s.type,s.pendingProps,se.current),vt=s,fn=!0,h=Be,Ti(s.type)?(Qf=h,Be=dn(c.firstChild)):Be=h),wt(t,s,s.pendingProps.children,l),io(t,s),t===null&&(s.flags|=4194304),s.child;case 5:return t===null&&we&&((h=c=Be)&&(c=K1(c,s.type,s.pendingProps,fn),c!==null?(s.stateNode=c,vt=s,Be=dn(c.firstChild),fn=!1,h=!0):h=!1),h||fi(s)),Rn(s),h=s.type,p=s.pendingProps,v=t!==null?t.memoizedProps:null,c=p.children,Gf(h,p)?c=null:v!==null&&Gf(h,v)&&(s.flags|=32),s.memoizedState!==null&&(h=Iu(t,s,a1,null,null,l),Na._currentValue=h),io(t,s),wt(t,s,c,l),s.child;case 6:return t===null&&we&&((t=l=Be)&&(l=X1(l,s.pendingProps,fn),l!==null?(s.stateNode=l,vt=s,Be=null,t=!0):t=!1),t||fi(s)),null;case 13:return gm(t,s,l);case 4:return nt(s,s.stateNode.containerInfo),c=s.pendingProps,t===null?s.child=Wi(s,null,c,l):wt(t,s,c,l),s.child;case 11:return am(t,s,s.type,s.pendingProps,l);case 7:return wt(t,s,s.pendingProps,l),s.child;case 8:return wt(t,s,s.pendingProps.children,l),s.child;case 12:return wt(t,s,s.pendingProps.children,l),s.child;case 10:return c=s.pendingProps,hi(s,s.type,c.value),wt(t,s,c.children,l),s.child;case 9:return h=s.type._context,c=s.pendingProps.children,Qi(s),h=St(h),c=c(h),s.flags|=1,wt(t,s,c,l),s.child;case 14:return lm(t,s,s.type,s.pendingProps,l);case 15:return om(t,s,s.type,s.pendingProps,l);case 19:return ym(t,s,l);case 31:return p1(t,s,l);case 22:return cm(t,s,l,s.pendingProps);case 24:return Qi(s),c=St(st),t===null?(h=ju(),h===null&&(h=De,p=Mu(),h.pooledCache=p,p.refCount++,p!==null&&(h.pooledCacheLanes|=l),h=p),s.memoizedState={parent:c,cache:h},Ru(s),hi(s,st,h)):((t.lanes&l)!==0&&(Du(t,s),oa(s,null,null,l),la()),h=t.memoizedState,p=s.memoizedState,h.parent!==c?(h={parent:c,cache:c},s.memoizedState=h,s.lanes===0&&(s.memoizedState=s.updateQueue.baseState=h),hi(s,st,c)):(c=p.cache,hi(s,st,c),c!==h.cache&&ku(s,[st],l,!0))),wt(t,s,s.pendingProps.children,l),s.child;case 29:throw s.pendingProps}throw Error(r(156,s.tag))}function Kn(t){t.flags|=4}function yf(t,s,l,c,h){if((s=(t.mode&32)!==0)&&(s=!1),s){if(t.flags|=16777216,(h&335544128)===h)if(t.stateNode.complete)t.flags|=8192;else if(Km())t.flags|=8192;else throw Zi=Il,Lu}else t.flags&=-16777217}function vm(t,s){if(s.type!=="stylesheet"||(s.state.loading&4)!==0)t.flags&=-16777217;else if(t.flags|=16777216,!Ry(s))if(Km())t.flags|=8192;else throw Zi=Il,Lu}function ro(t,s){s!==null&&(t.flags|=4),t.flags&16384&&(s=t.tag!==22?Zd():536870912,t.lanes|=s,Ws|=s)}function pa(t,s){if(!we)switch(t.tailMode){case"hidden":s=t.tail;for(var l=null;s!==null;)s.alternate!==null&&(l=s),s=s.sibling;l===null?t.tail=null:l.sibling=null;break;case"collapsed":l=t.tail;for(var c=null;l!==null;)l.alternate!==null&&(c=l),l=l.sibling;c===null?s||t.tail===null?t.tail=null:t.tail.sibling=null:c.sibling=null}}function qe(t){var s=t.alternate!==null&&t.alternate.child===t.child,l=0,c=0;if(s)for(var h=t.child;h!==null;)l|=h.lanes|h.childLanes,c|=h.subtreeFlags&65011712,c|=h.flags&65011712,h.return=t,h=h.sibling;else for(h=t.child;h!==null;)l|=h.lanes|h.childLanes,c|=h.subtreeFlags,c|=h.flags,h.return=t,h=h.sibling;return t.subtreeFlags|=c,t.childLanes=l,s}function m1(t,s,l){var c=s.pendingProps;switch(Eu(s),s.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return qe(s),null;case 1:return qe(s),null;case 3:return l=s.stateNode,c=null,t!==null&&(c=t.memoizedState.cache),s.memoizedState.cache!==c&&(s.flags|=2048),$n(st),Re(),l.pendingContext&&(l.context=l.pendingContext,l.pendingContext=null),(t===null||t.child===null)&&(qs(s)?Kn(s):t===null||t.memoizedState.isDehydrated&&(s.flags&256)===0||(s.flags|=1024,Au())),qe(s),null;case 26:var h=s.type,p=s.memoizedState;return t===null?(Kn(s),p!==null?(qe(s),vm(s,p)):(qe(s),yf(s,h,null,c,l))):p?p!==t.memoizedState?(Kn(s),qe(s),vm(s,p)):(qe(s),s.flags&=-16777217):(t=t.memoizedProps,t!==c&&Kn(s),qe(s),yf(s,h,t,c,l)),null;case 27:if(fe(s),l=se.current,h=s.type,t!==null&&s.stateNode!=null)t.memoizedProps!==c&&Kn(s);else{if(!c){if(s.stateNode===null)throw Error(r(166));return qe(s),null}t=te.current,qs(s)?Zp(s):(t=Ay(h,c,l),s.stateNode=t,Kn(s))}return qe(s),null;case 5:if(fe(s),h=s.type,t!==null&&s.stateNode!=null)t.memoizedProps!==c&&Kn(s);else{if(!c){if(s.stateNode===null)throw Error(r(166));return qe(s),null}if(p=te.current,qs(s))Zp(s);else{var v=wo(se.current);switch(p){case 1:p=v.createElementNS("http://www.w3.org/2000/svg",h);break;case 2:p=v.createElementNS("http://www.w3.org/1998/Math/MathML",h);break;default:switch(h){case"svg":p=v.createElementNS("http://www.w3.org/2000/svg",h);break;case"math":p=v.createElementNS("http://www.w3.org/1998/Math/MathML",h);break;case"script":p=v.createElement("div"),p.innerHTML="<script><\/script>",p=p.removeChild(p.firstChild);break;case"select":p=typeof c.is=="string"?v.createElement("select",{is:c.is}):v.createElement("select"),c.multiple?p.multiple=!0:c.size&&(p.size=c.size);break;default:p=typeof c.is=="string"?v.createElement(h,{is:c.is}):v.createElement(h)}}p[bt]=s,p[Lt]=c;e:for(v=s.child;v!==null;){if(v.tag===5||v.tag===6)p.appendChild(v.stateNode);else if(v.tag!==4&&v.tag!==27&&v.child!==null){v.child.return=v,v=v.child;continue}if(v===s)break e;for(;v.sibling===null;){if(v.return===null||v.return===s)break e;v=v.return}v.sibling.return=v.return,v=v.sibling}s.stateNode=p;e:switch(xt(p,h,c),h){case"button":case"input":case"select":case"textarea":c=!!c.autoFocus;break e;case"img":c=!0;break e;default:c=!1}c&&Kn(s)}}return qe(s),yf(s,s.type,t===null?null:t.memoizedProps,s.pendingProps,l),null;case 6:if(t&&s.stateNode!=null)t.memoizedProps!==c&&Kn(s);else{if(typeof c!="string"&&s.stateNode===null)throw Error(r(166));if(t=se.current,qs(s)){if(t=s.stateNode,l=s.memoizedProps,c=null,h=vt,h!==null)switch(h.tag){case 27:case 5:c=h.memoizedProps}t[bt]=s,t=!!(t.nodeValue===l||c!==null&&c.suppressHydrationWarning===!0||gy(t.nodeValue,l)),t||fi(s,!0)}else t=wo(t).createTextNode(c),t[bt]=s,s.stateNode=t}return qe(s),null;case 31:if(l=s.memoizedState,t===null||t.memoizedState!==null){if(c=qs(s),l!==null){if(t===null){if(!c)throw Error(r(318));if(t=s.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[bt]=s}else Yi(),(s.flags&128)===0&&(s.memoizedState=null),s.flags|=4;qe(s),t=!1}else l=Au(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return s.flags&256?(Zt(s),s):(Zt(s),null);if((s.flags&128)!==0)throw Error(r(558))}return qe(s),null;case 13:if(c=s.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(h=qs(s),c!==null&&c.dehydrated!==null){if(t===null){if(!h)throw Error(r(318));if(h=s.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(r(317));h[bt]=s}else Yi(),(s.flags&128)===0&&(s.memoizedState=null),s.flags|=4;qe(s),h=!1}else h=Au(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=h),h=!0;if(!h)return s.flags&256?(Zt(s),s):(Zt(s),null)}return Zt(s),(s.flags&128)!==0?(s.lanes=l,s):(l=c!==null,t=t!==null&&t.memoizedState!==null,l&&(c=s.child,h=null,c.alternate!==null&&c.alternate.memoizedState!==null&&c.alternate.memoizedState.cachePool!==null&&(h=c.alternate.memoizedState.cachePool.pool),p=null,c.memoizedState!==null&&c.memoizedState.cachePool!==null&&(p=c.memoizedState.cachePool.pool),p!==h&&(c.flags|=2048)),l!==t&&l&&(s.child.flags|=8192),ro(s,s.updateQueue),qe(s),null);case 4:return Re(),t===null&&Bf(s.stateNode.containerInfo),qe(s),null;case 10:return $n(s.type),qe(s),null;case 19:if(X(Pe),c=s.memoizedState,c===null)return qe(s),null;if(h=(s.flags&128)!==0,p=c.rendering,p===null)if(h)pa(c,!1);else{if(Qe!==0||t!==null&&(t.flags&128)!==0)for(t=s.child;t!==null;){if(p=Xl(t),p!==null){for(s.flags|=128,pa(c,!1),t=p.updateQueue,s.updateQueue=t,ro(s,t),s.subtreeFlags=0,t=l,l=s.child;l!==null;)Yp(l,t),l=l.sibling;return W(Pe,Pe.current&1|2),we&&Bn(s,c.treeForkCount),s.child}t=t.sibling}c.tail!==null&&it()>uo&&(s.flags|=128,h=!0,pa(c,!1),s.lanes=4194304)}else{if(!h)if(t=Xl(p),t!==null){if(s.flags|=128,h=!0,t=t.updateQueue,s.updateQueue=t,ro(s,t),pa(c,!0),c.tail===null&&c.tailMode==="hidden"&&!p.alternate&&!we)return qe(s),null}else 2*it()-c.renderingStartTime>uo&&l!==536870912&&(s.flags|=128,h=!0,pa(c,!1),s.lanes=4194304);c.isBackwards?(p.sibling=s.child,s.child=p):(t=c.last,t!==null?t.sibling=p:s.child=p,c.last=p)}return c.tail!==null?(t=c.tail,c.rendering=t,c.tail=t.sibling,c.renderingStartTime=it(),t.sibling=null,l=Pe.current,W(Pe,h?l&1|2:l&1),we&&Bn(s,c.treeForkCount),t):(qe(s),null);case 22:case 23:return Zt(s),Bu(),c=s.memoizedState!==null,t!==null?t.memoizedState!==null!==c&&(s.flags|=8192):c&&(s.flags|=8192),c?(l&536870912)!==0&&(s.flags&128)===0&&(qe(s),s.subtreeFlags&6&&(s.flags|=8192)):qe(s),l=s.updateQueue,l!==null&&ro(s,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),c=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(c=s.memoizedState.cachePool.pool),c!==l&&(s.flags|=2048),t!==null&&X(Pi),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),s.memoizedState.cache!==l&&(s.flags|=2048),$n(st),qe(s),null;case 25:return null;case 30:return null}throw Error(r(156,s.tag))}function y1(t,s){switch(Eu(s),s.tag){case 1:return t=s.flags,t&65536?(s.flags=t&-65537|128,s):null;case 3:return $n(st),Re(),t=s.flags,(t&65536)!==0&&(t&128)===0?(s.flags=t&-65537|128,s):null;case 26:case 27:case 5:return fe(s),null;case 31:if(s.memoizedState!==null){if(Zt(s),s.alternate===null)throw Error(r(340));Yi()}return t=s.flags,t&65536?(s.flags=t&-65537|128,s):null;case 13:if(Zt(s),t=s.memoizedState,t!==null&&t.dehydrated!==null){if(s.alternate===null)throw Error(r(340));Yi()}return t=s.flags,t&65536?(s.flags=t&-65537|128,s):null;case 19:return X(Pe),null;case 4:return Re(),null;case 10:return $n(s.type),null;case 22:case 23:return Zt(s),Bu(),t!==null&&X(Pi),t=s.flags,t&65536?(s.flags=t&-65537|128,s):null;case 24:return $n(st),null;case 25:return null;default:return null}}function Sm(t,s){switch(Eu(s),s.tag){case 3:$n(st),Re();break;case 26:case 27:case 5:fe(s);break;case 4:Re();break;case 31:s.memoizedState!==null&&Zt(s);break;case 13:Zt(s);break;case 19:X(Pe);break;case 10:$n(s.type);break;case 22:case 23:Zt(s),Bu(),t!==null&&X(Pi);break;case 24:$n(st)}}function ga(t,s){try{var l=s.updateQueue,c=l!==null?l.lastEffect:null;if(c!==null){var h=c.next;l=h;do{if((l.tag&t)===t){c=void 0;var p=l.create,v=l.inst;c=p(),v.destroy=c}l=l.next}while(l!==h)}}catch(T){ke(s,s.return,T)}}function bi(t,s,l){try{var c=s.updateQueue,h=c!==null?c.lastEffect:null;if(h!==null){var p=h.next;c=p;do{if((c.tag&t)===t){var v=c.inst,T=v.destroy;if(T!==void 0){v.destroy=void 0,h=s;var N=l,z=T;try{z()}catch(G){ke(h,N,G)}}}c=c.next}while(c!==p)}}catch(G){ke(s,s.return,G)}}function wm(t){var s=t.updateQueue;if(s!==null){var l=t.stateNode;try{fg(s,l)}catch(c){ke(t,t.return,c)}}}function xm(t,s,l){l.props=ts(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(c){ke(t,s,c)}}function ma(t,s){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var c=t.stateNode;break;case 30:c=t.stateNode;break;default:c=t.stateNode}typeof l=="function"?t.refCleanup=l(c):l.current=c}}catch(h){ke(t,s,h)}}function Nn(t,s){var l=t.ref,c=t.refCleanup;if(l!==null)if(typeof c=="function")try{c()}catch(h){ke(t,s,h)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(h){ke(t,s,h)}else l.current=null}function _m(t){var s=t.type,l=t.memoizedProps,c=t.stateNode;try{e:switch(s){case"button":case"input":case"select":case"textarea":l.autoFocus&&c.focus();break e;case"img":l.src?c.src=l.src:l.srcSet&&(c.srcset=l.srcSet)}}catch(h){ke(t,t.return,h)}}function bf(t,s,l){try{var c=t.stateNode;B1(c,t.type,l,s),c[Lt]=s}catch(h){ke(t,t.return,h)}}function Em(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Ti(t.type)||t.tag===4}function vf(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||Em(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Ti(t.type)||t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Sf(t,s,l){var c=t.tag;if(c===5||c===6)t=t.stateNode,s?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,s):(s=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,s.appendChild(t),l=l._reactRootContainer,l!=null||s.onclick!==null||(s.onclick=zn));else if(c!==4&&(c===27&&Ti(t.type)&&(l=t.stateNode,s=null),t=t.child,t!==null))for(Sf(t,s,l),t=t.sibling;t!==null;)Sf(t,s,l),t=t.sibling}function ao(t,s,l){var c=t.tag;if(c===5||c===6)t=t.stateNode,s?l.insertBefore(t,s):l.appendChild(t);else if(c!==4&&(c===27&&Ti(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(ao(t,s,l),t=t.sibling;t!==null;)ao(t,s,l),t=t.sibling}function Tm(t){var s=t.stateNode,l=t.memoizedProps;try{for(var c=t.type,h=s.attributes;h.length;)s.removeAttributeNode(h[0]);xt(s,c,l),s[bt]=t,s[Lt]=l}catch(p){ke(t,t.return,p)}}var Xn=!1,lt=!1,wf=!1,Am=typeof WeakSet=="function"?WeakSet:Set,mt=null;function b1(t,s){if(t=t.containerInfo,If=No,t=Hp(t),du(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else e:{l=(l=t.ownerDocument)&&l.defaultView||window;var c=l.getSelection&&l.getSelection();if(c&&c.rangeCount!==0){l=c.anchorNode;var h=c.anchorOffset,p=c.focusNode;c=c.focusOffset;try{l.nodeType,p.nodeType}catch{l=null;break e}var v=0,T=-1,N=-1,z=0,G=0,F=t,U=null;t:for(;;){for(var B;F!==l||h!==0&&F.nodeType!==3||(T=v+h),F!==p||c!==0&&F.nodeType!==3||(N=v+c),F.nodeType===3&&(v+=F.nodeValue.length),(B=F.firstChild)!==null;)U=F,F=B;for(;;){if(F===t)break t;if(U===l&&++z===h&&(T=v),U===p&&++G===c&&(N=v),(B=F.nextSibling)!==null)break;F=U,U=F.parentNode}F=B}l=T===-1||N===-1?null:{start:T,end:N}}else l=null}l=l||{start:0,end:0}}else l=null;for(Vf={focusedElem:t,selectionRange:l},No=!1,mt=s;mt!==null;)if(s=mt,t=s.child,(s.subtreeFlags&1028)!==0&&t!==null)t.return=s,mt=t;else for(;mt!==null;){switch(s=mt,p=s.alternate,t=s.flags,s.tag){case 0:if((t&4)!==0&&(t=s.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l<t.length;l++)h=t[l],h.ref.impl=h.nextImpl;break;case 11:case 15:break;case 1:if((t&1024)!==0&&p!==null){t=void 0,l=s,h=p.memoizedProps,p=p.memoizedState,c=l.stateNode;try{var ne=ts(l.type,h);t=c.getSnapshotBeforeUpdate(ne,p),c.__reactInternalSnapshotBeforeUpdate=t}catch(oe){ke(l,l.return,oe)}}break;case 3:if((t&1024)!==0){if(t=s.stateNode.containerInfo,l=t.nodeType,l===9)Xf(t);else if(l===1)switch(t.nodeName){case"HEAD":case"HTML":case"BODY":Xf(t);break;default:t.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((t&1024)!==0)throw Error(r(163))}if(t=s.sibling,t!==null){t.return=s.return,mt=t;break}mt=s.return}}function Cm(t,s,l){var c=l.flags;switch(l.tag){case 0:case 11:case 15:Fn(t,l),c&4&&ga(5,l);break;case 1:if(Fn(t,l),c&4)if(t=l.stateNode,s===null)try{t.componentDidMount()}catch(v){ke(l,l.return,v)}else{var h=ts(l.type,s.memoizedProps);s=s.memoizedState;try{t.componentDidUpdate(h,s,t.__reactInternalSnapshotBeforeUpdate)}catch(v){ke(l,l.return,v)}}c&64&&wm(l),c&512&&ma(l,l.return);break;case 3:if(Fn(t,l),c&64&&(t=l.updateQueue,t!==null)){if(s=null,l.child!==null)switch(l.child.tag){case 27:case 5:s=l.child.stateNode;break;case 1:s=l.child.stateNode}try{fg(t,s)}catch(v){ke(l,l.return,v)}}break;case 27:s===null&&c&4&&Tm(l);case 26:case 5:Fn(t,l),s===null&&c&4&&_m(l),c&512&&ma(l,l.return);break;case 12:Fn(t,l);break;case 31:Fn(t,l),c&4&&Mm(t,l);break;case 13:Fn(t,l),c&4&&Om(t,l),c&64&&(t=l.memoizedState,t!==null&&(t=t.dehydrated,t!==null&&(l=C1.bind(null,l),Y1(t,l))));break;case 22:if(c=l.memoizedState!==null||Xn,!c){s=s!==null&&s.memoizedState!==null||lt,h=Xn;var p=lt;Xn=c,(lt=s)&&!p?Qn(t,l,(l.subtreeFlags&8772)!==0):Fn(t,l),Xn=h,lt=p}break;case 30:break;default:Fn(t,l)}}function Nm(t){var s=t.alternate;s!==null&&(t.alternate=null,Nm(s)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(s=t.stateNode,s!==null&&Pc(s)),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}var $e=null,Dt=!1;function Yn(t,s,l){for(l=l.child;l!==null;)km(t,s,l),l=l.sibling}function km(t,s,l){if(ft&&typeof ft.onCommitFiberUnmount=="function")try{ft.onCommitFiberUnmount(Bi,l)}catch{}switch(l.tag){case 26:lt||Nn(l,s),Yn(t,s,l),l.memoizedState?l.memoizedState.count--:l.stateNode&&(l=l.stateNode,l.parentNode.removeChild(l));break;case 27:lt||Nn(l,s);var c=$e,h=Dt;Ti(l.type)&&($e=l.stateNode,Dt=!1),Yn(t,s,l),Ta(l.stateNode),$e=c,Dt=h;break;case 5:lt||Nn(l,s);case 6:if(c=$e,h=Dt,$e=null,Yn(t,s,l),$e=c,Dt=h,$e!==null)if(Dt)try{($e.nodeType===9?$e.body:$e.nodeName==="HTML"?$e.ownerDocument.body:$e).removeChild(l.stateNode)}catch(p){ke(l,s,p)}else try{$e.removeChild(l.stateNode)}catch(p){ke(l,s,p)}break;case 18:$e!==null&&(Dt?(t=$e,wy(t.nodeType===9?t.body:t.nodeName==="HTML"?t.ownerDocument.body:t,l.stateNode),lr(t)):wy($e,l.stateNode));break;case 4:c=$e,h=Dt,$e=l.stateNode.containerInfo,Dt=!0,Yn(t,s,l),$e=c,Dt=h;break;case 0:case 11:case 14:case 15:bi(2,l,s),lt||bi(4,l,s),Yn(t,s,l);break;case 1:lt||(Nn(l,s),c=l.stateNode,typeof c.componentWillUnmount=="function"&&xm(l,s,c)),Yn(t,s,l);break;case 21:Yn(t,s,l);break;case 22:lt=(c=lt)||l.memoizedState!==null,Yn(t,s,l),lt=c;break;default:Yn(t,s,l)}}function Mm(t,s){if(s.memoizedState===null&&(t=s.alternate,t!==null&&(t=t.memoizedState,t!==null))){t=t.dehydrated;try{lr(t)}catch(l){ke(s,s.return,l)}}}function Om(t,s){if(s.memoizedState===null&&(t=s.alternate,t!==null&&(t=t.memoizedState,t!==null&&(t=t.dehydrated,t!==null))))try{lr(t)}catch(l){ke(s,s.return,l)}}function v1(t){switch(t.tag){case 31:case 13:case 19:var s=t.stateNode;return s===null&&(s=t.stateNode=new Am),s;case 22:return t=t.stateNode,s=t._retryCache,s===null&&(s=t._retryCache=new Am),s;default:throw Error(r(435,t.tag))}}function lo(t,s){var l=v1(t);s.forEach(function(c){if(!l.has(c)){l.add(c);var h=N1.bind(null,t,c);c.then(h,h)}})}function zt(t,s){var l=s.deletions;if(l!==null)for(var c=0;c<l.length;c++){var h=l[c],p=t,v=s,T=v;e:for(;T!==null;){switch(T.tag){case 27:if(Ti(T.type)){$e=T.stateNode,Dt=!1;break e}break;case 5:$e=T.stateNode,Dt=!1;break e;case 3:case 4:$e=T.stateNode.containerInfo,Dt=!0;break e}T=T.return}if($e===null)throw Error(r(160));km(p,v,h),$e=null,Dt=!1,p=h.alternate,p!==null&&(p.return=null),h.return=null}if(s.subtreeFlags&13886)for(s=s.child;s!==null;)jm(s,t),s=s.sibling}var Sn=null;function jm(t,s){var l=t.alternate,c=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:zt(s,t),Ut(t),c&4&&(bi(3,t,t.return),ga(3,t),bi(5,t,t.return));break;case 1:zt(s,t),Ut(t),c&512&&(lt||l===null||Nn(l,l.return)),c&64&&Xn&&(t=t.updateQueue,t!==null&&(c=t.callbacks,c!==null&&(l=t.shared.hiddenCallbacks,t.shared.hiddenCallbacks=l===null?c:l.concat(c))));break;case 26:var h=Sn;if(zt(s,t),Ut(t),c&512&&(lt||l===null||Nn(l,l.return)),c&4){var p=l!==null?l.memoizedState:null;if(c=t.memoizedState,l===null)if(c===null)if(t.stateNode===null){e:{c=t.type,l=t.memoizedProps,h=h.ownerDocument||h;t:switch(c){case"title":p=h.getElementsByTagName("title")[0],(!p||p[Vr]||p[bt]||p.namespaceURI==="http://www.w3.org/2000/svg"||p.hasAttribute("itemprop"))&&(p=h.createElement(c),h.head.insertBefore(p,h.querySelector("head > title"))),xt(p,c,l),p[bt]=t,gt(p),c=p;break e;case"link":var v=jy("link","href",h).get(c+(l.href||""));if(v){for(var T=0;T<v.length;T++)if(p=v[T],p.getAttribute("href")===(l.href==null||l.href===""?null:l.href)&&p.getAttribute("rel")===(l.rel==null?null:l.rel)&&p.getAttribute("title")===(l.title==null?null:l.title)&&p.getAttribute("crossorigin")===(l.crossOrigin==null?null:l.crossOrigin)){v.splice(T,1);break t}}p=h.createElement(c),xt(p,c,l),h.head.appendChild(p);break;case"meta":if(v=jy("meta","content",h).get(c+(l.content||""))){for(T=0;T<v.length;T++)if(p=v[T],p.getAttribute("content")===(l.content==null?null:""+l.content)&&p.getAttribute("name")===(l.name==null?null:l.name)&&p.getAttribute("property")===(l.property==null?null:l.property)&&p.getAttribute("http-equiv")===(l.httpEquiv==null?null:l.httpEquiv)&&p.getAttribute("charset")===(l.charSet==null?null:l.charSet)){v.splice(T,1);break t}}p=h.createElement(c),xt(p,c,l),h.head.appendChild(p);break;default:throw Error(r(468,c))}p[bt]=t,gt(p),c=p}t.stateNode=c}else Ly(h,t.type,t.stateNode);else t.stateNode=Oy(h,c,t.memoizedProps);else p!==c?(p===null?l.stateNode!==null&&(l=l.stateNode,l.parentNode.removeChild(l)):p.count--,c===null?Ly(h,t.type,t.stateNode):Oy(h,c,t.memoizedProps)):c===null&&t.stateNode!==null&&bf(t,t.memoizedProps,l.memoizedProps)}break;case 27:zt(s,t),Ut(t),c&512&&(lt||l===null||Nn(l,l.return)),l!==null&&c&4&&bf(t,t.memoizedProps,l.memoizedProps);break;case 5:if(zt(s,t),Ut(t),c&512&&(lt||l===null||Nn(l,l.return)),t.flags&32){h=t.stateNode;try{Ms(h,"")}catch(ne){ke(t,t.return,ne)}}c&4&&t.stateNode!=null&&(h=t.memoizedProps,bf(t,h,l!==null?l.memoizedProps:h)),c&1024&&(wf=!0);break;case 6:if(zt(s,t),Ut(t),c&4){if(t.stateNode===null)throw Error(r(162));c=t.memoizedProps,l=t.stateNode;try{l.nodeValue=c}catch(ne){ke(t,t.return,ne)}}break;case 3:if(Eo=null,h=Sn,Sn=xo(s.containerInfo),zt(s,t),Sn=h,Ut(t),c&4&&l!==null&&l.memoizedState.isDehydrated)try{lr(s.containerInfo)}catch(ne){ke(t,t.return,ne)}wf&&(wf=!1,Lm(t));break;case 4:c=Sn,Sn=xo(t.stateNode.containerInfo),zt(s,t),Ut(t),Sn=c;break;case 12:zt(s,t),Ut(t);break;case 31:zt(s,t),Ut(t),c&4&&(c=t.updateQueue,c!==null&&(t.updateQueue=null,lo(t,c)));break;case 13:zt(s,t),Ut(t),t.child.flags&8192&&t.memoizedState!==null!=(l!==null&&l.memoizedState!==null)&&(co=it()),c&4&&(c=t.updateQueue,c!==null&&(t.updateQueue=null,lo(t,c)));break;case 22:h=t.memoizedState!==null;var N=l!==null&&l.memoizedState!==null,z=Xn,G=lt;if(Xn=z||h,lt=G||N,zt(s,t),lt=G,Xn=z,Ut(t),c&8192)e:for(s=t.stateNode,s._visibility=h?s._visibility&-2:s._visibility|1,h&&(l===null||N||Xn||lt||ns(t)),l=null,s=t;;){if(s.tag===5||s.tag===26){if(l===null){N=l=s;try{if(p=N.stateNode,h)v=p.style,typeof v.setProperty=="function"?v.setProperty("display","none","important"):v.display="none";else{T=N.stateNode;var F=N.memoizedProps.style,U=F!=null&&F.hasOwnProperty("display")?F.display:null;T.style.display=U==null||typeof U=="boolean"?"":(""+U).trim()}}catch(ne){ke(N,N.return,ne)}}}else if(s.tag===6){if(l===null){N=s;try{N.stateNode.nodeValue=h?"":N.memoizedProps}catch(ne){ke(N,N.return,ne)}}}else if(s.tag===18){if(l===null){N=s;try{var B=N.stateNode;h?xy(B,!0):xy(N.stateNode,!1)}catch(ne){ke(N,N.return,ne)}}}else if((s.tag!==22&&s.tag!==23||s.memoizedState===null||s===t)&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break e;for(;s.sibling===null;){if(s.return===null||s.return===t)break e;l===s&&(l=null),s=s.return}l===s&&(l=null),s.sibling.return=s.return,s=s.sibling}c&4&&(c=t.updateQueue,c!==null&&(l=c.retryQueue,l!==null&&(c.retryQueue=null,lo(t,l))));break;case 19:zt(s,t),Ut(t),c&4&&(c=t.updateQueue,c!==null&&(t.updateQueue=null,lo(t,c)));break;case 30:break;case 21:break;default:zt(s,t),Ut(t)}}function Ut(t){var s=t.flags;if(s&2){try{for(var l,c=t.return;c!==null;){if(Em(c)){l=c;break}c=c.return}if(l==null)throw Error(r(160));switch(l.tag){case 27:var h=l.stateNode,p=vf(t);ao(t,p,h);break;case 5:var v=l.stateNode;l.flags&32&&(Ms(v,""),l.flags&=-33);var T=vf(t);ao(t,T,v);break;case 3:case 4:var N=l.stateNode.containerInfo,z=vf(t);Sf(t,z,N);break;default:throw Error(r(161))}}catch(G){ke(t,t.return,G)}t.flags&=-3}s&4096&&(t.flags&=-4097)}function Lm(t){if(t.subtreeFlags&1024)for(t=t.child;t!==null;){var s=t;Lm(s),s.tag===5&&s.flags&1024&&s.stateNode.reset(),t=t.sibling}}function Fn(t,s){if(s.subtreeFlags&8772)for(s=s.child;s!==null;)Cm(t,s.alternate,s),s=s.sibling}function ns(t){for(t=t.child;t!==null;){var s=t;switch(s.tag){case 0:case 11:case 14:case 15:bi(4,s,s.return),ns(s);break;case 1:Nn(s,s.return);var l=s.stateNode;typeof l.componentWillUnmount=="function"&&xm(s,s.return,l),ns(s);break;case 27:Ta(s.stateNode);case 26:case 5:Nn(s,s.return),ns(s);break;case 22:s.memoizedState===null&&ns(s);break;case 30:ns(s);break;default:ns(s)}t=t.sibling}}function Qn(t,s,l){for(l=l&&(s.subtreeFlags&8772)!==0,s=s.child;s!==null;){var c=s.alternate,h=t,p=s,v=p.flags;switch(p.tag){case 0:case 11:case 15:Qn(h,p,l),ga(4,p);break;case 1:if(Qn(h,p,l),c=p,h=c.stateNode,typeof h.componentDidMount=="function")try{h.componentDidMount()}catch(z){ke(c,c.return,z)}if(c=p,h=c.updateQueue,h!==null){var T=c.stateNode;try{var N=h.shared.hiddenCallbacks;if(N!==null)for(h.shared.hiddenCallbacks=null,h=0;h<N.length;h++)ug(N[h],T)}catch(z){ke(c,c.return,z)}}l&&v&64&&wm(p),ma(p,p.return);break;case 27:Tm(p);case 26:case 5:Qn(h,p,l),l&&c===null&&v&4&&_m(p),ma(p,p.return);break;case 12:Qn(h,p,l);break;case 31:Qn(h,p,l),l&&v&4&&Mm(h,p);break;case 13:Qn(h,p,l),l&&v&4&&Om(h,p);break;case 22:p.memoizedState===null&&Qn(h,p,l),ma(p,p.return);break;case 30:break;default:Qn(h,p,l)}s=s.sibling}}function xf(t,s){var l=null;t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),t=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(t=s.memoizedState.cachePool.pool),t!==l&&(t!=null&&t.refCount++,l!=null&&na(l))}function _f(t,s){t=null,s.alternate!==null&&(t=s.alternate.memoizedState.cache),s=s.memoizedState.cache,s!==t&&(s.refCount++,t!=null&&na(t))}function wn(t,s,l,c){if(s.subtreeFlags&10256)for(s=s.child;s!==null;)Rm(t,s,l,c),s=s.sibling}function Rm(t,s,l,c){var h=s.flags;switch(s.tag){case 0:case 11:case 15:wn(t,s,l,c),h&2048&&ga(9,s);break;case 1:wn(t,s,l,c);break;case 3:wn(t,s,l,c),h&2048&&(t=null,s.alternate!==null&&(t=s.alternate.memoizedState.cache),s=s.memoizedState.cache,s!==t&&(s.refCount++,t!=null&&na(t)));break;case 12:if(h&2048){wn(t,s,l,c),t=s.stateNode;try{var p=s.memoizedProps,v=p.id,T=p.onPostCommit;typeof T=="function"&&T(v,s.alternate===null?"mount":"update",t.passiveEffectDuration,-0)}catch(N){ke(s,s.return,N)}}else wn(t,s,l,c);break;case 31:wn(t,s,l,c);break;case 13:wn(t,s,l,c);break;case 23:break;case 22:p=s.stateNode,v=s.alternate,s.memoizedState!==null?p._visibility&2?wn(t,s,l,c):ya(t,s):p._visibility&2?wn(t,s,l,c):(p._visibility|=2,Ps(t,s,l,c,(s.subtreeFlags&10256)!==0||!1)),h&2048&&xf(v,s);break;case 24:wn(t,s,l,c),h&2048&&_f(s.alternate,s);break;default:wn(t,s,l,c)}}function Ps(t,s,l,c,h){for(h=h&&((s.subtreeFlags&10256)!==0||!1),s=s.child;s!==null;){var p=t,v=s,T=l,N=c,z=v.flags;switch(v.tag){case 0:case 11:case 15:Ps(p,v,T,N,h),ga(8,v);break;case 23:break;case 22:var G=v.stateNode;v.memoizedState!==null?G._visibility&2?Ps(p,v,T,N,h):ya(p,v):(G._visibility|=2,Ps(p,v,T,N,h)),h&&z&2048&&xf(v.alternate,v);break;case 24:Ps(p,v,T,N,h),h&&z&2048&&_f(v.alternate,v);break;default:Ps(p,v,T,N,h)}s=s.sibling}}function ya(t,s){if(s.subtreeFlags&10256)for(s=s.child;s!==null;){var l=t,c=s,h=c.flags;switch(c.tag){case 22:ya(l,c),h&2048&&xf(c.alternate,c);break;case 24:ya(l,c),h&2048&&_f(c.alternate,c);break;default:ya(l,c)}s=s.sibling}}var ba=8192;function Js(t,s,l){if(t.subtreeFlags&ba)for(t=t.child;t!==null;)Dm(t,s,l),t=t.sibling}function Dm(t,s,l){switch(t.tag){case 26:Js(t,s,l),t.flags&ba&&t.memoizedState!==null&&rx(l,Sn,t.memoizedState,t.memoizedProps);break;case 5:Js(t,s,l);break;case 3:case 4:var c=Sn;Sn=xo(t.stateNode.containerInfo),Js(t,s,l),Sn=c;break;case 22:t.memoizedState===null&&(c=t.alternate,c!==null&&c.memoizedState!==null?(c=ba,ba=16777216,Js(t,s,l),ba=c):Js(t,s,l));break;default:Js(t,s,l)}}function zm(t){var s=t.alternate;if(s!==null&&(t=s.child,t!==null)){s.child=null;do s=t.sibling,t.sibling=null,t=s;while(t!==null)}}function va(t){var s=t.deletions;if((t.flags&16)!==0){if(s!==null)for(var l=0;l<s.length;l++){var c=s[l];mt=c,Hm(c,t)}zm(t)}if(t.subtreeFlags&10256)for(t=t.child;t!==null;)Um(t),t=t.sibling}function Um(t){switch(t.tag){case 0:case 11:case 15:va(t),t.flags&2048&&bi(9,t,t.return);break;case 3:va(t);break;case 12:va(t);break;case 22:var s=t.stateNode;t.memoizedState!==null&&s._visibility&2&&(t.return===null||t.return.tag!==13)?(s._visibility&=-3,oo(t)):va(t);break;default:va(t)}}function oo(t){var s=t.deletions;if((t.flags&16)!==0){if(s!==null)for(var l=0;l<s.length;l++){var c=s[l];mt=c,Hm(c,t)}zm(t)}for(t=t.child;t!==null;){switch(s=t,s.tag){case 0:case 11:case 15:bi(8,s,s.return),oo(s);break;case 22:l=s.stateNode,l._visibility&2&&(l._visibility&=-3,oo(s));break;default:oo(s)}t=t.sibling}}function Hm(t,s){for(;mt!==null;){var l=mt;switch(l.tag){case 0:case 11:case 15:bi(8,l,s);break;case 23:case 22:if(l.memoizedState!==null&&l.memoizedState.cachePool!==null){var c=l.memoizedState.cachePool.pool;c!=null&&c.refCount++}break;case 24:na(l.memoizedState.cache)}if(c=l.child,c!==null)c.return=l,mt=c;else e:for(l=t;mt!==null;){c=mt;var h=c.sibling,p=c.return;if(Nm(c),c===l){mt=null;break e}if(h!==null){h.return=p,mt=h;break e}mt=p}}}var S1={getCacheForType:function(t){var s=St(st),l=s.data.get(t);return l===void 0&&(l=t(),s.data.set(t,l)),l},cacheSignal:function(){return St(st).controller.signal}},w1=typeof WeakMap=="function"?WeakMap:Map,Ce=0,De=null,ye=null,ve=0,Ne=0,Wt=null,vi=!1,Zs=!1,Ef=!1,Pn=0,Qe=0,Si=0,is=0,Tf=0,en=0,Ws=0,Sa=null,Ht=null,Af=!1,co=0,Bm=0,uo=1/0,fo=null,wi=null,ht=0,xi=null,er=null,Jn=0,Cf=0,Nf=null,qm=null,wa=0,kf=null;function tn(){return(Ce&2)!==0&&ve!==0?ve&-ve:q.T!==null?Df():np()}function $m(){if(en===0)if((ve&536870912)===0||we){var t=Tn;Tn<<=1,(Tn&3932160)===0&&(Tn=262144),en=t}else en=536870912;return t=Jt.current,t!==null&&(t.flags|=32),en}function Bt(t,s,l){(t===De&&(Ne===2||Ne===9)||t.cancelPendingCommit!==null)&&(tr(t,0),_i(t,ve,en,!1)),Ir(t,l),((Ce&2)===0||t!==De)&&(t===De&&((Ce&2)===0&&(is|=l),Qe===4&&_i(t,ve,en,!1)),kn(t))}function Im(t,s,l){if((Ce&6)!==0)throw Error(r(327));var c=!l&&(s&127)===0&&(s&t.expiredLanes)===0||$r(t,s),h=c?E1(t,s):Of(t,s,!0),p=c;do{if(h===0){Zs&&!c&&_i(t,s,0,!1);break}else{if(l=t.current.alternate,p&&!x1(l)){h=Of(t,s,!1),p=!1;continue}if(h===2){if(p=s,t.errorRecoveryDisabledLanes&p)var v=0;else v=t.pendingLanes&-536870913,v=v!==0?v:v&536870912?536870912:0;if(v!==0){s=v;e:{var T=t;h=Sa;var N=T.current.memoizedState.isDehydrated;if(N&&(tr(T,v).flags|=256),v=Of(T,v,!1),v!==2){if(Ef&&!N){T.errorRecoveryDisabledLanes|=p,is|=p,h=4;break e}p=Ht,Ht=h,p!==null&&(Ht===null?Ht=p:Ht.push.apply(Ht,p))}h=v}if(p=!1,h!==2)continue}}if(h===1){tr(t,0),_i(t,s,0,!0);break}e:{switch(c=t,p=h,p){case 0:case 1:throw Error(r(345));case 4:if((s&4194048)!==s)break;case 6:_i(c,s,en,!vi);break e;case 2:Ht=null;break;case 3:case 5:break;default:throw Error(r(329))}if((s&62914560)===s&&(h=co+300-it(),10<h)){if(_i(c,s,en,!vi),wl(c,0,!0)!==0)break e;Jn=s,c.timeoutHandle=vy(Vm.bind(null,c,l,Ht,fo,Af,s,en,is,Ws,vi,p,"Throttled",-0,0),h);break e}Vm(c,l,Ht,fo,Af,s,en,is,Ws,vi,p,null,-0,0)}}break}while(!0);kn(t)}function Vm(t,s,l,c,h,p,v,T,N,z,G,F,U,B){if(t.timeoutHandle=-1,F=s.subtreeFlags,F&8192||(F&16785408)===16785408){F={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:zn},Dm(s,p,F);var ne=(p&62914560)===p?co-it():(p&4194048)===p?Bm-it():0;if(ne=ax(F,ne),ne!==null){Jn=p,t.cancelPendingCommit=ne(Jm.bind(null,t,s,p,l,c,h,v,T,N,G,F,null,U,B)),_i(t,p,v,!z);return}}Jm(t,s,p,l,c,h,v,T,N)}function x1(t){for(var s=t;;){var l=s.tag;if((l===0||l===11||l===15)&&s.flags&16384&&(l=s.updateQueue,l!==null&&(l=l.stores,l!==null)))for(var c=0;c<l.length;c++){var h=l[c],p=h.getSnapshot;h=h.value;try{if(!Qt(p(),h))return!1}catch{return!1}}if(l=s.child,s.subtreeFlags&16384&&l!==null)l.return=s,s=l;else{if(s===t)break;for(;s.sibling===null;){if(s.return===null||s.return===t)return!0;s=s.return}s.sibling.return=s.return,s=s.sibling}}return!0}function _i(t,s,l,c){s&=~Tf,s&=~is,t.suspendedLanes|=s,t.pingedLanes&=~s,c&&(t.warmLanes|=s),c=t.expirationTimes;for(var h=s;0<h;){var p=31-kt(h),v=1<<p;c[p]=-1,h&=~v}l!==0&&Wd(t,l,s)}function ho(){return(Ce&6)===0?(xa(0),!1):!0}function Mf(){if(ye!==null){if(Ne===0)var t=ye.return;else t=ye,qn=Fi=null,Ku(t),Ks=null,sa=0,t=ye;for(;t!==null;)Sm(t.alternate,t),t=t.return;ye=null}}function tr(t,s){var l=t.timeoutHandle;l!==-1&&(t.timeoutHandle=-1,I1(l)),l=t.cancelPendingCommit,l!==null&&(t.cancelPendingCommit=null,l()),Jn=0,Mf(),De=t,ye=l=Hn(t.current,null),ve=s,Ne=0,Wt=null,vi=!1,Zs=$r(t,s),Ef=!1,Ws=en=Tf=is=Si=Qe=0,Ht=Sa=null,Af=!1,(s&8)!==0&&(s|=s&32);var c=t.entangledLanes;if(c!==0)for(t=t.entanglements,c&=s;0<c;){var h=31-kt(c),p=1<<h;s|=t[h],c&=~p}return Pn=s,Ll(),l}function Gm(t,s){pe=null,q.H=ha,s===Gs||s===$l?(s=ag(),Ne=3):s===Lu?(s=ag(),Ne=4):Ne=s===of?8:s!==null&&typeof s=="object"&&typeof s.then=="function"?6:1,Wt=s,ye===null&&(Qe=1,to(t,on(s,t.current)))}function Km(){var t=Jt.current;return t===null?!0:(ve&4194048)===ve?hn===null:(ve&62914560)===ve||(ve&536870912)!==0?t===hn:!1}function Xm(){var t=q.H;return q.H=ha,t===null?ha:t}function Ym(){var t=q.A;return q.A=S1,t}function po(){Qe=4,vi||(ve&4194048)!==ve&&Jt.current!==null||(Zs=!0),(Si&134217727)===0&&(is&134217727)===0||De===null||_i(De,ve,en,!1)}function Of(t,s,l){var c=Ce;Ce|=2;var h=Xm(),p=Ym();(De!==t||ve!==s)&&(fo=null,tr(t,s)),s=!1;var v=Qe;e:do try{if(Ne!==0&&ye!==null){var T=ye,N=Wt;switch(Ne){case 8:Mf(),v=6;break e;case 3:case 2:case 9:case 6:Jt.current===null&&(s=!0);var z=Ne;if(Ne=0,Wt=null,nr(t,T,N,z),l&&Zs){v=0;break e}break;default:z=Ne,Ne=0,Wt=null,nr(t,T,N,z)}}_1(),v=Qe;break}catch(G){Gm(t,G)}while(!0);return s&&t.shellSuspendCounter++,qn=Fi=null,Ce=c,q.H=h,q.A=p,ye===null&&(De=null,ve=0,Ll()),v}function _1(){for(;ye!==null;)Fm(ye)}function E1(t,s){var l=Ce;Ce|=2;var c=Xm(),h=Ym();De!==t||ve!==s?(fo=null,uo=it()+500,tr(t,s)):Zs=$r(t,s);e:do try{if(Ne!==0&&ye!==null){s=ye;var p=Wt;t:switch(Ne){case 1:Ne=0,Wt=null,nr(t,s,p,1);break;case 2:case 9:if(sg(p)){Ne=0,Wt=null,Qm(s);break}s=function(){Ne!==2&&Ne!==9||De!==t||(Ne=7),kn(t)},p.then(s,s);break e;case 3:Ne=7;break e;case 4:Ne=5;break e;case 7:sg(p)?(Ne=0,Wt=null,Qm(s)):(Ne=0,Wt=null,nr(t,s,p,7));break;case 5:var v=null;switch(ye.tag){case 26:v=ye.memoizedState;case 5:case 27:var T=ye;if(v?Ry(v):T.stateNode.complete){Ne=0,Wt=null;var N=T.sibling;if(N!==null)ye=N;else{var z=T.return;z!==null?(ye=z,go(z)):ye=null}break t}}Ne=0,Wt=null,nr(t,s,p,5);break;case 6:Ne=0,Wt=null,nr(t,s,p,6);break;case 8:Mf(),Qe=6;break e;default:throw Error(r(462))}}T1();break}catch(G){Gm(t,G)}while(!0);return qn=Fi=null,q.H=c,q.A=h,Ce=l,ye!==null?0:(De=null,ve=0,Ll(),Qe)}function T1(){for(;ye!==null&&!ws();)Fm(ye)}function Fm(t){var s=bm(t.alternate,t,Pn);t.memoizedProps=t.pendingProps,s===null?go(t):ye=s}function Qm(t){var s=t,l=s.alternate;switch(s.tag){case 15:case 0:s=hm(l,s,s.pendingProps,s.type,void 0,ve);break;case 11:s=hm(l,s,s.pendingProps,s.type.render,s.ref,ve);break;case 5:Ku(s);default:Sm(l,s),s=ye=Yp(s,Pn),s=bm(l,s,Pn)}t.memoizedProps=t.pendingProps,s===null?go(t):ye=s}function nr(t,s,l,c){qn=Fi=null,Ku(s),Ks=null,sa=0;var h=s.return;try{if(d1(t,h,s,l,ve)){Qe=1,to(t,on(l,t.current)),ye=null;return}}catch(p){if(h!==null)throw ye=h,p;Qe=1,to(t,on(l,t.current)),ye=null;return}s.flags&32768?(we||c===1?t=!0:Zs||(ve&536870912)!==0?t=!1:(vi=t=!0,(c===2||c===9||c===3||c===6)&&(c=Jt.current,c!==null&&c.tag===13&&(c.flags|=16384))),Pm(s,t)):go(s)}function go(t){var s=t;do{if((s.flags&32768)!==0){Pm(s,vi);return}t=s.return;var l=m1(s.alternate,s,Pn);if(l!==null){ye=l;return}if(s=s.sibling,s!==null){ye=s;return}ye=s=t}while(s!==null);Qe===0&&(Qe=5)}function Pm(t,s){do{var l=y1(t.alternate,t);if(l!==null){l.flags&=32767,ye=l;return}if(l=t.return,l!==null&&(l.flags|=32768,l.subtreeFlags=0,l.deletions=null),!s&&(t=t.sibling,t!==null)){ye=t;return}ye=t=l}while(t!==null);Qe=6,ye=null}function Jm(t,s,l,c,h,p,v,T,N){t.cancelPendingCommit=null;do mo();while(ht!==0);if((Ce&6)!==0)throw Error(r(327));if(s!==null){if(s===t.current)throw Error(r(177));if(p=s.lanes|s.childLanes,p|=bu,sw(t,l,p,v,T,N),t===De&&(ye=De=null,ve=0),er=s,xi=t,Jn=l,Cf=p,Nf=h,qm=c,(s.subtreeFlags&10256)!==0||(s.flags&10256)!==0?(t.callbackNode=null,t.callbackPriority=0,k1(xs,function(){return ny(),null})):(t.callbackNode=null,t.callbackPriority=0),c=(s.flags&13878)!==0,(s.subtreeFlags&13878)!==0||c){c=q.T,q.T=null,h=Z.p,Z.p=2,v=Ce,Ce|=4;try{b1(t,s,l)}finally{Ce=v,Z.p=h,q.T=c}}ht=1,Zm(),Wm(),ey()}}function Zm(){if(ht===1){ht=0;var t=xi,s=er,l=(s.flags&13878)!==0;if((s.subtreeFlags&13878)!==0||l){l=q.T,q.T=null;var c=Z.p;Z.p=2;var h=Ce;Ce|=4;try{jm(s,t);var p=Vf,v=Hp(t.containerInfo),T=p.focusedElem,N=p.selectionRange;if(v!==T&&T&&T.ownerDocument&&Up(T.ownerDocument.documentElement,T)){if(N!==null&&du(T)){var z=N.start,G=N.end;if(G===void 0&&(G=z),"selectionStart"in T)T.selectionStart=z,T.selectionEnd=Math.min(G,T.value.length);else{var F=T.ownerDocument||document,U=F&&F.defaultView||window;if(U.getSelection){var B=U.getSelection(),ne=T.textContent.length,oe=Math.min(N.start,ne),Le=N.end===void 0?oe:Math.min(N.end,ne);!B.extend&&oe>Le&&(v=Le,Le=oe,oe=v);var L=zp(T,oe),k=zp(T,Le);if(L&&k&&(B.rangeCount!==1||B.anchorNode!==L.node||B.anchorOffset!==L.offset||B.focusNode!==k.node||B.focusOffset!==k.offset)){var D=F.createRange();D.setStart(L.node,L.offset),B.removeAllRanges(),oe>Le?(B.addRange(D),B.extend(k.node,k.offset)):(D.setEnd(k.node,k.offset),B.addRange(D))}}}}for(F=[],B=T;B=B.parentNode;)B.nodeType===1&&F.push({element:B,left:B.scrollLeft,top:B.scrollTop});for(typeof T.focus=="function"&&T.focus(),T=0;T<F.length;T++){var Y=F[T];Y.element.scrollLeft=Y.left,Y.element.scrollTop=Y.top}}No=!!If,Vf=If=null}finally{Ce=h,Z.p=c,q.T=l}}t.current=s,ht=2}}function Wm(){if(ht===2){ht=0;var t=xi,s=er,l=(s.flags&8772)!==0;if((s.subtreeFlags&8772)!==0||l){l=q.T,q.T=null;var c=Z.p;Z.p=2;var h=Ce;Ce|=4;try{Cm(t,s.alternate,s)}finally{Ce=h,Z.p=c,q.T=l}}ht=3}}function ey(){if(ht===4||ht===3){ht=0,qc();var t=xi,s=er,l=Jn,c=qm;(s.subtreeFlags&10256)!==0||(s.flags&10256)!==0?ht=5:(ht=0,er=xi=null,ty(t,t.pendingLanes));var h=t.pendingLanes;if(h===0&&(wi=null),Fc(l),s=s.stateNode,ft&&typeof ft.onCommitFiberRoot=="function")try{ft.onCommitFiberRoot(Bi,s,void 0,(s.current.flags&128)===128)}catch{}if(c!==null){s=q.T,h=Z.p,Z.p=2,q.T=null;try{for(var p=t.onRecoverableError,v=0;v<c.length;v++){var T=c[v];p(T.value,{componentStack:T.stack})}}finally{q.T=s,Z.p=h}}(Jn&3)!==0&&mo(),kn(t),h=t.pendingLanes,(l&261930)!==0&&(h&42)!==0?t===kf?wa++:(wa=0,kf=t):wa=0,xa(0)}}function ty(t,s){(t.pooledCacheLanes&=s)===0&&(s=t.pooledCache,s!=null&&(t.pooledCache=null,na(s)))}function mo(){return Zm(),Wm(),ey(),ny()}function ny(){if(ht!==5)return!1;var t=xi,s=Cf;Cf=0;var l=Fc(Jn),c=q.T,h=Z.p;try{Z.p=32>l?32:l,q.T=null,l=Nf,Nf=null;var p=xi,v=Jn;if(ht=0,er=xi=null,Jn=0,(Ce&6)!==0)throw Error(r(331));var T=Ce;if(Ce|=4,Um(p.current),Rm(p,p.current,v,l),Ce=T,xa(0,!1),ft&&typeof ft.onPostCommitFiberRoot=="function")try{ft.onPostCommitFiberRoot(Bi,p)}catch{}return!0}finally{Z.p=h,q.T=c,ty(t,s)}}function iy(t,s,l){s=on(l,s),s=lf(t.stateNode,s,2),t=gi(t,s,2),t!==null&&(Ir(t,2),kn(t))}function ke(t,s,l){if(t.tag===3)iy(t,t,l);else for(;s!==null;){if(s.tag===3){iy(s,t,l);break}else if(s.tag===1){var c=s.stateNode;if(typeof s.type.getDerivedStateFromError=="function"||typeof c.componentDidCatch=="function"&&(wi===null||!wi.has(c))){t=on(l,t),l=sm(2),c=gi(s,l,2),c!==null&&(rm(l,c,s,t),Ir(c,2),kn(c));break}}s=s.return}}function jf(t,s,l){var c=t.pingCache;if(c===null){c=t.pingCache=new w1;var h=new Set;c.set(s,h)}else h=c.get(s),h===void 0&&(h=new Set,c.set(s,h));h.has(l)||(Ef=!0,h.add(l),t=A1.bind(null,t,s,l),s.then(t,t))}function A1(t,s,l){var c=t.pingCache;c!==null&&c.delete(s),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,De===t&&(ve&l)===l&&(Qe===4||Qe===3&&(ve&62914560)===ve&&300>it()-co?(Ce&2)===0&&tr(t,0):Tf|=l,Ws===ve&&(Ws=0)),kn(t)}function sy(t,s){s===0&&(s=Zd()),t=Ki(t,s),t!==null&&(Ir(t,s),kn(t))}function C1(t){var s=t.memoizedState,l=0;s!==null&&(l=s.retryLane),sy(t,l)}function N1(t,s){var l=0;switch(t.tag){case 31:case 13:var c=t.stateNode,h=t.memoizedState;h!==null&&(l=h.retryLane);break;case 19:c=t.stateNode;break;case 22:c=t.stateNode._retryCache;break;default:throw Error(r(314))}c!==null&&c.delete(s),sy(t,l)}function k1(t,s){return vs(t,s)}var yo=null,ir=null,Lf=!1,bo=!1,Rf=!1,Ei=0;function kn(t){t!==ir&&t.next===null&&(ir===null?yo=ir=t:ir=ir.next=t),bo=!0,Lf||(Lf=!0,O1())}function xa(t,s){if(!Rf&&bo){Rf=!0;do for(var l=!1,c=yo;c!==null;){if(t!==0){var h=c.pendingLanes;if(h===0)var p=0;else{var v=c.suspendedLanes,T=c.pingedLanes;p=(1<<31-kt(42|t)+1)-1,p&=h&~(v&~T),p=p&201326741?p&201326741|1:p?p|2:0}p!==0&&(l=!0,oy(c,p))}else p=ve,p=wl(c,c===De?p:0,c.cancelPendingCommit!==null||c.timeoutHandle!==-1),(p&3)===0||$r(c,p)||(l=!0,oy(c,p));c=c.next}while(l);Rf=!1}}function M1(){ry()}function ry(){bo=Lf=!1;var t=0;Ei!==0&&$1()&&(t=Ei);for(var s=it(),l=null,c=yo;c!==null;){var h=c.next,p=ay(c,s);p===0?(c.next=null,l===null?yo=h:l.next=h,h===null&&(ir=l)):(l=c,(t!==0||(p&3)!==0)&&(bo=!0)),c=h}ht!==0&&ht!==5||xa(t),Ei!==0&&(Ei=0)}function ay(t,s){for(var l=t.suspendedLanes,c=t.pingedLanes,h=t.expirationTimes,p=t.pendingLanes&-62914561;0<p;){var v=31-kt(p),T=1<<v,N=h[v];N===-1?((T&l)===0||(T&c)!==0)&&(h[v]=iw(T,s)):N<=s&&(t.expiredLanes|=T),p&=~T}if(s=De,l=ve,l=wl(t,t===s?l:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),c=t.callbackNode,l===0||t===s&&(Ne===2||Ne===9)||t.cancelPendingCommit!==null)return c!==null&&c!==null&&Ss(c),t.callbackNode=null,t.callbackPriority=0;if((l&3)===0||$r(t,l)){if(s=l&-l,s===t.callbackPriority)return s;switch(c!==null&&Ss(c),Fc(l)){case 2:case 8:l=bl;break;case 32:l=xs;break;case 268435456:l=_s;break;default:l=xs}return c=ly.bind(null,t),l=vs(l,c),t.callbackPriority=s,t.callbackNode=l,s}return c!==null&&c!==null&&Ss(c),t.callbackPriority=2,t.callbackNode=null,2}function ly(t,s){if(ht!==0&&ht!==5)return t.callbackNode=null,t.callbackPriority=0,null;var l=t.callbackNode;if(mo()&&t.callbackNode!==l)return null;var c=ve;return c=wl(t,t===De?c:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),c===0?null:(Im(t,c,s),ay(t,it()),t.callbackNode!=null&&t.callbackNode===l?ly.bind(null,t):null)}function oy(t,s){if(mo())return null;Im(t,s,!0)}function O1(){V1(function(){(Ce&6)!==0?vs(yl,M1):ry()})}function Df(){if(Ei===0){var t=Is;t===0&&(t=le,le<<=1,(le&261888)===0&&(le=256)),Ei=t}return Ei}function cy(t){return t==null||typeof t=="symbol"||typeof t=="boolean"?null:typeof t=="function"?t:Tl(""+t)}function uy(t,s){var l=s.ownerDocument.createElement("input");return l.name=s.name,l.value=s.value,t.id&&l.setAttribute("form",t.id),s.parentNode.insertBefore(l,s),t=new FormData(t),l.parentNode.removeChild(l),t}function j1(t,s,l,c,h){if(s==="submit"&&l&&l.stateNode===h){var p=cy((h[Lt]||null).action),v=c.submitter;v&&(s=(s=v[Lt]||null)?cy(s.formAction):v.getAttribute("formAction"),s!==null&&(p=s,v=null));var T=new kl("action","action",null,c,h);t.push({event:T,listeners:[{instance:null,listener:function(){if(c.defaultPrevented){if(Ei!==0){var N=v?uy(h,v):new FormData(h);ef(l,{pending:!0,data:N,method:h.method,action:p},null,N)}}else typeof p=="function"&&(T.preventDefault(),N=v?uy(h,v):new FormData(h),ef(l,{pending:!0,data:N,method:h.method,action:p},p,N))},currentTarget:h}]})}}for(var zf=0;zf<yu.length;zf++){var Uf=yu[zf],L1=Uf.toLowerCase(),R1=Uf[0].toUpperCase()+Uf.slice(1);vn(L1,"on"+R1)}vn($p,"onAnimationEnd"),vn(Ip,"onAnimationIteration"),vn(Vp,"onAnimationStart"),vn("dblclick","onDoubleClick"),vn("focusin","onFocus"),vn("focusout","onBlur"),vn(Pw,"onTransitionRun"),vn(Jw,"onTransitionStart"),vn(Zw,"onTransitionCancel"),vn(Gp,"onTransitionEnd"),Ns("onMouseEnter",["mouseout","mouseover"]),Ns("onMouseLeave",["mouseout","mouseover"]),Ns("onPointerEnter",["pointerout","pointerover"]),Ns("onPointerLeave",["pointerout","pointerover"]),$i("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),$i("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),$i("onBeforeInput",["compositionend","keypress","textInput","paste"]),$i("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),$i("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),$i("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var _a="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),D1=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(_a));function fy(t,s){s=(s&4)!==0;for(var l=0;l<t.length;l++){var c=t[l],h=c.event;c=c.listeners;e:{var p=void 0;if(s)for(var v=c.length-1;0<=v;v--){var T=c[v],N=T.instance,z=T.currentTarget;if(T=T.listener,N!==p&&h.isPropagationStopped())break e;p=T,h.currentTarget=z;try{p(h)}catch(G){jl(G)}h.currentTarget=null,p=N}else for(v=0;v<c.length;v++){if(T=c[v],N=T.instance,z=T.currentTarget,T=T.listener,N!==p&&h.isPropagationStopped())break e;p=T,h.currentTarget=z;try{p(h)}catch(G){jl(G)}h.currentTarget=null,p=N}}}}function be(t,s){var l=s[Qc];l===void 0&&(l=s[Qc]=new Set);var c=t+"__bubble";l.has(c)||(hy(s,t,2,!1),l.add(c))}function Hf(t,s,l){var c=0;s&&(c|=4),hy(l,t,c,s)}var vo="_reactListening"+Math.random().toString(36).slice(2);function Bf(t){if(!t[vo]){t[vo]=!0,rp.forEach(function(l){l!=="selectionchange"&&(D1.has(l)||Hf(l,!1,t),Hf(l,!0,t))});var s=t.nodeType===9?t:t.ownerDocument;s===null||s[vo]||(s[vo]=!0,Hf("selectionchange",!1,s))}}function hy(t,s,l,c){switch($y(s)){case 2:var h=cx;break;case 8:h=ux;break;default:h=eh}l=h.bind(null,s,l,t),h=void 0,!su||s!=="touchstart"&&s!=="touchmove"&&s!=="wheel"||(h=!0),c?h!==void 0?t.addEventListener(s,l,{capture:!0,passive:h}):t.addEventListener(s,l,!0):h!==void 0?t.addEventListener(s,l,{passive:h}):t.addEventListener(s,l,!1)}function qf(t,s,l,c,h){var p=c;if((s&1)===0&&(s&2)===0&&c!==null)e:for(;;){if(c===null)return;var v=c.tag;if(v===3||v===4){var T=c.stateNode.containerInfo;if(T===h)break;if(v===4)for(v=c.return;v!==null;){var N=v.tag;if((N===3||N===4)&&v.stateNode.containerInfo===h)return;v=v.return}for(;T!==null;){if(v=Ts(T),v===null)return;if(N=v.tag,N===5||N===6||N===26||N===27){c=p=v;continue e}T=T.parentNode}}c=c.return}yp(function(){var z=p,G=nu(l),F=[];e:{var U=Kp.get(t);if(U!==void 0){var B=kl,ne=t;switch(t){case"keypress":if(Cl(l)===0)break e;case"keydown":case"keyup":B=Nw;break;case"focusin":ne="focus",B=ou;break;case"focusout":ne="blur",B=ou;break;case"beforeblur":case"afterblur":B=ou;break;case"click":if(l.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":B=Sp;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":B=mw;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":B=Ow;break;case $p:case Ip:case Vp:B=vw;break;case Gp:B=Lw;break;case"scroll":case"scrollend":B=pw;break;case"wheel":B=Dw;break;case"copy":case"cut":case"paste":B=ww;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":B=xp;break;case"toggle":case"beforetoggle":B=Uw}var oe=(s&4)!==0,Le=!oe&&(t==="scroll"||t==="scrollend"),L=oe?U!==null?U+"Capture":null:U;oe=[];for(var k=z,D;k!==null;){var Y=k;if(D=Y.stateNode,Y=Y.tag,Y!==5&&Y!==26&&Y!==27||D===null||L===null||(Y=Kr(k,L),Y!=null&&oe.push(Ea(k,Y,D))),Le)break;k=k.return}0<oe.length&&(U=new B(U,ne,null,l,G),F.push({event:U,listeners:oe}))}}if((s&7)===0){e:{if(U=t==="mouseover"||t==="pointerover",B=t==="mouseout"||t==="pointerout",U&&l!==tu&&(ne=l.relatedTarget||l.fromElement)&&(Ts(ne)||ne[Es]))break e;if((B||U)&&(U=G.window===G?G:(U=G.ownerDocument)?U.defaultView||U.parentWindow:window,B?(ne=l.relatedTarget||l.toElement,B=z,ne=ne?Ts(ne):null,ne!==null&&(Le=o(ne),oe=ne.tag,ne!==Le||oe!==5&&oe!==27&&oe!==6)&&(ne=null)):(B=null,ne=z),B!==ne)){if(oe=Sp,Y="onMouseLeave",L="onMouseEnter",k="mouse",(t==="pointerout"||t==="pointerover")&&(oe=xp,Y="onPointerLeave",L="onPointerEnter",k="pointer"),Le=B==null?U:Gr(B),D=ne==null?U:Gr(ne),U=new oe(Y,k+"leave",B,l,G),U.target=Le,U.relatedTarget=D,Y=null,Ts(G)===z&&(oe=new oe(L,k+"enter",ne,l,G),oe.target=D,oe.relatedTarget=Le,Y=oe),Le=Y,B&&ne)t:{for(oe=z1,L=B,k=ne,D=0,Y=L;Y;Y=oe(Y))D++;Y=0;for(var ae=k;ae;ae=oe(ae))Y++;for(;0<D-Y;)L=oe(L),D--;for(;0<Y-D;)k=oe(k),Y--;for(;D--;){if(L===k||k!==null&&L===k.alternate){oe=L;break t}L=oe(L),k=oe(k)}oe=null}else oe=null;B!==null&&dy(F,U,B,oe,!1),ne!==null&&Le!==null&&dy(F,Le,ne,oe,!0)}}e:{if(U=z?Gr(z):window,B=U.nodeName&&U.nodeName.toLowerCase(),B==="select"||B==="input"&&U.type==="file")var Te=Mp;else if(Np(U))if(Op)Te=Yw;else{Te=Kw;var ie=Gw}else B=U.nodeName,!B||B.toLowerCase()!=="input"||U.type!=="checkbox"&&U.type!=="radio"?z&&eu(z.elementType)&&(Te=Mp):Te=Xw;if(Te&&(Te=Te(t,z))){kp(F,Te,l,G);break e}ie&&ie(t,U,z),t==="focusout"&&z&&U.type==="number"&&z.memoizedProps.value!=null&&Wc(U,"number",U.value)}switch(ie=z?Gr(z):window,t){case"focusin":(Np(ie)||ie.contentEditable==="true")&&(Rs=ie,pu=z,Wr=null);break;case"focusout":Wr=pu=Rs=null;break;case"mousedown":gu=!0;break;case"contextmenu":case"mouseup":case"dragend":gu=!1,Bp(F,l,G);break;case"selectionchange":if(Qw)break;case"keydown":case"keyup":Bp(F,l,G)}var ge;if(uu)e:{switch(t){case"compositionstart":var Se="onCompositionStart";break e;case"compositionend":Se="onCompositionEnd";break e;case"compositionupdate":Se="onCompositionUpdate";break e}Se=void 0}else Ls?Ap(t,l)&&(Se="onCompositionEnd"):t==="keydown"&&l.keyCode===229&&(Se="onCompositionStart");Se&&(_p&&l.locale!=="ko"&&(Ls||Se!=="onCompositionStart"?Se==="onCompositionEnd"&&Ls&&(ge=bp()):(oi=G,ru="value"in oi?oi.value:oi.textContent,Ls=!0)),ie=So(z,Se),0<ie.length&&(Se=new wp(Se,t,null,l,G),F.push({event:Se,listeners:ie}),ge?Se.data=ge:(ge=Cp(l),ge!==null&&(Se.data=ge)))),(ge=Bw?qw(t,l):$w(t,l))&&(Se=So(z,"onBeforeInput"),0<Se.length&&(ie=new wp("onBeforeInput","beforeinput",null,l,G),F.push({event:ie,listeners:Se}),ie.data=ge)),j1(F,t,z,l,G)}fy(F,s)})}function Ea(t,s,l){return{instance:t,listener:s,currentTarget:l}}function So(t,s){for(var l=s+"Capture",c=[];t!==null;){var h=t,p=h.stateNode;if(h=h.tag,h!==5&&h!==26&&h!==27||p===null||(h=Kr(t,l),h!=null&&c.unshift(Ea(t,h,p)),h=Kr(t,s),h!=null&&c.push(Ea(t,h,p))),t.tag===3)return c;t=t.return}return[]}function z1(t){if(t===null)return null;do t=t.return;while(t&&t.tag!==5&&t.tag!==27);return t||null}function dy(t,s,l,c,h){for(var p=s._reactName,v=[];l!==null&&l!==c;){var T=l,N=T.alternate,z=T.stateNode;if(T=T.tag,N!==null&&N===c)break;T!==5&&T!==26&&T!==27||z===null||(N=z,h?(z=Kr(l,p),z!=null&&v.unshift(Ea(l,z,N))):h||(z=Kr(l,p),z!=null&&v.push(Ea(l,z,N)))),l=l.return}v.length!==0&&t.push({event:s,listeners:v})}var U1=/\r\n?/g,H1=/\u0000|\uFFFD/g;function py(t){return(typeof t=="string"?t:""+t).replace(U1,`
`).replace(H1,"")}function gy(t,s){return s=py(s),py(t)===s}function je(t,s,l,c,h,p){switch(l){case"children":typeof c=="string"?s==="body"||s==="textarea"&&c===""||Ms(t,c):(typeof c=="number"||typeof c=="bigint")&&s!=="body"&&Ms(t,""+c);break;case"className":_l(t,"class",c);break;case"tabIndex":_l(t,"tabindex",c);break;case"dir":case"role":case"viewBox":case"width":case"height":_l(t,l,c);break;case"style":gp(t,c,p);break;case"data":if(s!=="object"){_l(t,"data",c);break}case"src":case"href":if(c===""&&(s!=="a"||l!=="href")){t.removeAttribute(l);break}if(c==null||typeof c=="function"||typeof c=="symbol"||typeof c=="boolean"){t.removeAttribute(l);break}c=Tl(""+c),t.setAttribute(l,c);break;case"action":case"formAction":if(typeof c=="function"){t.setAttribute(l,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof p=="function"&&(l==="formAction"?(s!=="input"&&je(t,s,"name",h.name,h,null),je(t,s,"formEncType",h.formEncType,h,null),je(t,s,"formMethod",h.formMethod,h,null),je(t,s,"formTarget",h.formTarget,h,null)):(je(t,s,"encType",h.encType,h,null),je(t,s,"method",h.method,h,null),je(t,s,"target",h.target,h,null)));if(c==null||typeof c=="symbol"||typeof c=="boolean"){t.removeAttribute(l);break}c=Tl(""+c),t.setAttribute(l,c);break;case"onClick":c!=null&&(t.onclick=zn);break;case"onScroll":c!=null&&be("scroll",t);break;case"onScrollEnd":c!=null&&be("scrollend",t);break;case"dangerouslySetInnerHTML":if(c!=null){if(typeof c!="object"||!("__html"in c))throw Error(r(61));if(l=c.__html,l!=null){if(h.children!=null)throw Error(r(60));t.innerHTML=l}}break;case"multiple":t.multiple=c&&typeof c!="function"&&typeof c!="symbol";break;case"muted":t.muted=c&&typeof c!="function"&&typeof c!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(c==null||typeof c=="function"||typeof c=="boolean"||typeof c=="symbol"){t.removeAttribute("xlink:href");break}l=Tl(""+c),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":c!=null&&typeof c!="function"&&typeof c!="symbol"?t.setAttribute(l,""+c):t.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":c&&typeof c!="function"&&typeof c!="symbol"?t.setAttribute(l,""):t.removeAttribute(l);break;case"capture":case"download":c===!0?t.setAttribute(l,""):c!==!1&&c!=null&&typeof c!="function"&&typeof c!="symbol"?t.setAttribute(l,c):t.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":c!=null&&typeof c!="function"&&typeof c!="symbol"&&!isNaN(c)&&1<=c?t.setAttribute(l,c):t.removeAttribute(l);break;case"rowSpan":case"start":c==null||typeof c=="function"||typeof c=="symbol"||isNaN(c)?t.removeAttribute(l):t.setAttribute(l,c);break;case"popover":be("beforetoggle",t),be("toggle",t),xl(t,"popover",c);break;case"xlinkActuate":Dn(t,"http://www.w3.org/1999/xlink","xlink:actuate",c);break;case"xlinkArcrole":Dn(t,"http://www.w3.org/1999/xlink","xlink:arcrole",c);break;case"xlinkRole":Dn(t,"http://www.w3.org/1999/xlink","xlink:role",c);break;case"xlinkShow":Dn(t,"http://www.w3.org/1999/xlink","xlink:show",c);break;case"xlinkTitle":Dn(t,"http://www.w3.org/1999/xlink","xlink:title",c);break;case"xlinkType":Dn(t,"http://www.w3.org/1999/xlink","xlink:type",c);break;case"xmlBase":Dn(t,"http://www.w3.org/XML/1998/namespace","xml:base",c);break;case"xmlLang":Dn(t,"http://www.w3.org/XML/1998/namespace","xml:lang",c);break;case"xmlSpace":Dn(t,"http://www.w3.org/XML/1998/namespace","xml:space",c);break;case"is":xl(t,"is",c);break;case"innerText":case"textContent":break;default:(!(2<l.length)||l[0]!=="o"&&l[0]!=="O"||l[1]!=="n"&&l[1]!=="N")&&(l=hw.get(l)||l,xl(t,l,c))}}function $f(t,s,l,c,h,p){switch(l){case"style":gp(t,c,p);break;case"dangerouslySetInnerHTML":if(c!=null){if(typeof c!="object"||!("__html"in c))throw Error(r(61));if(l=c.__html,l!=null){if(h.children!=null)throw Error(r(60));t.innerHTML=l}}break;case"children":typeof c=="string"?Ms(t,c):(typeof c=="number"||typeof c=="bigint")&&Ms(t,""+c);break;case"onScroll":c!=null&&be("scroll",t);break;case"onScrollEnd":c!=null&&be("scrollend",t);break;case"onClick":c!=null&&(t.onclick=zn);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!ap.hasOwnProperty(l))e:{if(l[0]==="o"&&l[1]==="n"&&(h=l.endsWith("Capture"),s=l.slice(2,h?l.length-7:void 0),p=t[Lt]||null,p=p!=null?p[l]:null,typeof p=="function"&&t.removeEventListener(s,p,h),typeof c=="function")){typeof p!="function"&&p!==null&&(l in t?t[l]=null:t.hasAttribute(l)&&t.removeAttribute(l)),t.addEventListener(s,c,h);break e}l in t?t[l]=c:c===!0?t.setAttribute(l,""):xl(t,l,c)}}}function xt(t,s,l){switch(s){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":be("error",t),be("load",t);var c=!1,h=!1,p;for(p in l)if(l.hasOwnProperty(p)){var v=l[p];if(v!=null)switch(p){case"src":c=!0;break;case"srcSet":h=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(r(137,s));default:je(t,s,p,v,l,null)}}h&&je(t,s,"srcSet",l.srcSet,l,null),c&&je(t,s,"src",l.src,l,null);return;case"input":be("invalid",t);var T=p=v=h=null,N=null,z=null;for(c in l)if(l.hasOwnProperty(c)){var G=l[c];if(G!=null)switch(c){case"name":h=G;break;case"type":v=G;break;case"checked":N=G;break;case"defaultChecked":z=G;break;case"value":p=G;break;case"defaultValue":T=G;break;case"children":case"dangerouslySetInnerHTML":if(G!=null)throw Error(r(137,s));break;default:je(t,s,c,G,l,null)}}fp(t,p,T,N,z,v,h,!1);return;case"select":be("invalid",t),c=v=p=null;for(h in l)if(l.hasOwnProperty(h)&&(T=l[h],T!=null))switch(h){case"value":p=T;break;case"defaultValue":v=T;break;case"multiple":c=T;default:je(t,s,h,T,l,null)}s=p,l=v,t.multiple=!!c,s!=null?ks(t,!!c,s,!1):l!=null&&ks(t,!!c,l,!0);return;case"textarea":be("invalid",t),p=h=c=null;for(v in l)if(l.hasOwnProperty(v)&&(T=l[v],T!=null))switch(v){case"value":c=T;break;case"defaultValue":h=T;break;case"children":p=T;break;case"dangerouslySetInnerHTML":if(T!=null)throw Error(r(91));break;default:je(t,s,v,T,l,null)}dp(t,c,h,p);return;case"option":for(N in l)if(l.hasOwnProperty(N)&&(c=l[N],c!=null))switch(N){case"selected":t.selected=c&&typeof c!="function"&&typeof c!="symbol";break;default:je(t,s,N,c,l,null)}return;case"dialog":be("beforetoggle",t),be("toggle",t),be("cancel",t),be("close",t);break;case"iframe":case"object":be("load",t);break;case"video":case"audio":for(c=0;c<_a.length;c++)be(_a[c],t);break;case"image":be("error",t),be("load",t);break;case"details":be("toggle",t);break;case"embed":case"source":case"link":be("error",t),be("load",t);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(z in l)if(l.hasOwnProperty(z)&&(c=l[z],c!=null))switch(z){case"children":case"dangerouslySetInnerHTML":throw Error(r(137,s));default:je(t,s,z,c,l,null)}return;default:if(eu(s)){for(G in l)l.hasOwnProperty(G)&&(c=l[G],c!==void 0&&$f(t,s,G,c,l,void 0));return}}for(T in l)l.hasOwnProperty(T)&&(c=l[T],c!=null&&je(t,s,T,c,l,null))}function B1(t,s,l,c){switch(s){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var h=null,p=null,v=null,T=null,N=null,z=null,G=null;for(B in l){var F=l[B];if(l.hasOwnProperty(B)&&F!=null)switch(B){case"checked":break;case"value":break;case"defaultValue":N=F;default:c.hasOwnProperty(B)||je(t,s,B,null,c,F)}}for(var U in c){var B=c[U];if(F=l[U],c.hasOwnProperty(U)&&(B!=null||F!=null))switch(U){case"type":p=B;break;case"name":h=B;break;case"checked":z=B;break;case"defaultChecked":G=B;break;case"value":v=B;break;case"defaultValue":T=B;break;case"children":case"dangerouslySetInnerHTML":if(B!=null)throw Error(r(137,s));break;default:B!==F&&je(t,s,U,B,c,F)}}Zc(t,v,T,N,z,G,p,h);return;case"select":B=v=T=U=null;for(p in l)if(N=l[p],l.hasOwnProperty(p)&&N!=null)switch(p){case"value":break;case"multiple":B=N;default:c.hasOwnProperty(p)||je(t,s,p,null,c,N)}for(h in c)if(p=c[h],N=l[h],c.hasOwnProperty(h)&&(p!=null||N!=null))switch(h){case"value":U=p;break;case"defaultValue":T=p;break;case"multiple":v=p;default:p!==N&&je(t,s,h,p,c,N)}s=T,l=v,c=B,U!=null?ks(t,!!l,U,!1):!!c!=!!l&&(s!=null?ks(t,!!l,s,!0):ks(t,!!l,l?[]:"",!1));return;case"textarea":B=U=null;for(T in l)if(h=l[T],l.hasOwnProperty(T)&&h!=null&&!c.hasOwnProperty(T))switch(T){case"value":break;case"children":break;default:je(t,s,T,null,c,h)}for(v in c)if(h=c[v],p=l[v],c.hasOwnProperty(v)&&(h!=null||p!=null))switch(v){case"value":U=h;break;case"defaultValue":B=h;break;case"children":break;case"dangerouslySetInnerHTML":if(h!=null)throw Error(r(91));break;default:h!==p&&je(t,s,v,h,c,p)}hp(t,U,B);return;case"option":for(var ne in l)if(U=l[ne],l.hasOwnProperty(ne)&&U!=null&&!c.hasOwnProperty(ne))switch(ne){case"selected":t.selected=!1;break;default:je(t,s,ne,null,c,U)}for(N in c)if(U=c[N],B=l[N],c.hasOwnProperty(N)&&U!==B&&(U!=null||B!=null))switch(N){case"selected":t.selected=U&&typeof U!="function"&&typeof U!="symbol";break;default:je(t,s,N,U,c,B)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var oe in l)U=l[oe],l.hasOwnProperty(oe)&&U!=null&&!c.hasOwnProperty(oe)&&je(t,s,oe,null,c,U);for(z in c)if(U=c[z],B=l[z],c.hasOwnProperty(z)&&U!==B&&(U!=null||B!=null))switch(z){case"children":case"dangerouslySetInnerHTML":if(U!=null)throw Error(r(137,s));break;default:je(t,s,z,U,c,B)}return;default:if(eu(s)){for(var Le in l)U=l[Le],l.hasOwnProperty(Le)&&U!==void 0&&!c.hasOwnProperty(Le)&&$f(t,s,Le,void 0,c,U);for(G in c)U=c[G],B=l[G],!c.hasOwnProperty(G)||U===B||U===void 0&&B===void 0||$f(t,s,G,U,c,B);return}}for(var L in l)U=l[L],l.hasOwnProperty(L)&&U!=null&&!c.hasOwnProperty(L)&&je(t,s,L,null,c,U);for(F in c)U=c[F],B=l[F],!c.hasOwnProperty(F)||U===B||U==null&&B==null||je(t,s,F,U,c,B)}function my(t){switch(t){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function q1(){if(typeof performance.getEntriesByType=="function"){for(var t=0,s=0,l=performance.getEntriesByType("resource"),c=0;c<l.length;c++){var h=l[c],p=h.transferSize,v=h.initiatorType,T=h.duration;if(p&&T&&my(v)){for(v=0,T=h.responseEnd,c+=1;c<l.length;c++){var N=l[c],z=N.startTime;if(z>T)break;var G=N.transferSize,F=N.initiatorType;G&&my(F)&&(N=N.responseEnd,v+=G*(N<T?1:(T-z)/(N-z)))}if(--c,s+=8*(p+v)/(h.duration/1e3),t++,10<t)break}}if(0<t)return s/t/1e6}return navigator.connection&&(t=navigator.connection.downlink,typeof t=="number")?t:5}var If=null,Vf=null;function wo(t){return t.nodeType===9?t:t.ownerDocument}function yy(t){switch(t){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function by(t,s){if(t===0)switch(s){case"svg":return 1;case"math":return 2;default:return 0}return t===1&&s==="foreignObject"?0:t}function Gf(t,s){return t==="textarea"||t==="noscript"||typeof s.children=="string"||typeof s.children=="number"||typeof s.children=="bigint"||typeof s.dangerouslySetInnerHTML=="object"&&s.dangerouslySetInnerHTML!==null&&s.dangerouslySetInnerHTML.__html!=null}var Kf=null;function $1(){var t=window.event;return t&&t.type==="popstate"?t===Kf?!1:(Kf=t,!0):(Kf=null,!1)}var vy=typeof setTimeout=="function"?setTimeout:void 0,I1=typeof clearTimeout=="function"?clearTimeout:void 0,Sy=typeof Promise=="function"?Promise:void 0,V1=typeof queueMicrotask=="function"?queueMicrotask:typeof Sy<"u"?function(t){return Sy.resolve(null).then(t).catch(G1)}:vy;function G1(t){setTimeout(function(){throw t})}function Ti(t){return t==="head"}function wy(t,s){var l=s,c=0;do{var h=l.nextSibling;if(t.removeChild(l),h&&h.nodeType===8)if(l=h.data,l==="/$"||l==="/&"){if(c===0){t.removeChild(h),lr(s);return}c--}else if(l==="$"||l==="$?"||l==="$~"||l==="$!"||l==="&")c++;else if(l==="html")Ta(t.ownerDocument.documentElement);else if(l==="head"){l=t.ownerDocument.head,Ta(l);for(var p=l.firstChild;p;){var v=p.nextSibling,T=p.nodeName;p[Vr]||T==="SCRIPT"||T==="STYLE"||T==="LINK"&&p.rel.toLowerCase()==="stylesheet"||l.removeChild(p),p=v}}else l==="body"&&Ta(t.ownerDocument.body);l=h}while(l);lr(s)}function xy(t,s){var l=t;t=0;do{var c=l.nextSibling;if(l.nodeType===1?s?(l._stashedDisplay=l.style.display,l.style.display="none"):(l.style.display=l._stashedDisplay||"",l.getAttribute("style")===""&&l.removeAttribute("style")):l.nodeType===3&&(s?(l._stashedText=l.nodeValue,l.nodeValue=""):l.nodeValue=l._stashedText||""),c&&c.nodeType===8)if(l=c.data,l==="/$"){if(t===0)break;t--}else l!=="$"&&l!=="$?"&&l!=="$~"&&l!=="$!"||t++;l=c}while(l)}function Xf(t){var s=t.firstChild;for(s&&s.nodeType===10&&(s=s.nextSibling);s;){var l=s;switch(s=s.nextSibling,l.nodeName){case"HTML":case"HEAD":case"BODY":Xf(l),Pc(l);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(l.rel.toLowerCase()==="stylesheet")continue}t.removeChild(l)}}function K1(t,s,l,c){for(;t.nodeType===1;){var h=l;if(t.nodeName.toLowerCase()!==s.toLowerCase()){if(!c&&(t.nodeName!=="INPUT"||t.type!=="hidden"))break}else if(c){if(!t[Vr])switch(s){case"meta":if(!t.hasAttribute("itemprop"))break;return t;case"link":if(p=t.getAttribute("rel"),p==="stylesheet"&&t.hasAttribute("data-precedence"))break;if(p!==h.rel||t.getAttribute("href")!==(h.href==null||h.href===""?null:h.href)||t.getAttribute("crossorigin")!==(h.crossOrigin==null?null:h.crossOrigin)||t.getAttribute("title")!==(h.title==null?null:h.title))break;return t;case"style":if(t.hasAttribute("data-precedence"))break;return t;case"script":if(p=t.getAttribute("src"),(p!==(h.src==null?null:h.src)||t.getAttribute("type")!==(h.type==null?null:h.type)||t.getAttribute("crossorigin")!==(h.crossOrigin==null?null:h.crossOrigin))&&p&&t.hasAttribute("async")&&!t.hasAttribute("itemprop"))break;return t;default:return t}}else if(s==="input"&&t.type==="hidden"){var p=h.name==null?null:""+h.name;if(h.type==="hidden"&&t.getAttribute("name")===p)return t}else return t;if(t=dn(t.nextSibling),t===null)break}return null}function X1(t,s,l){if(s==="")return null;for(;t.nodeType!==3;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!l||(t=dn(t.nextSibling),t===null))return null;return t}function _y(t,s){for(;t.nodeType!==8;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!s||(t=dn(t.nextSibling),t===null))return null;return t}function Yf(t){return t.data==="$?"||t.data==="$~"}function Ff(t){return t.data==="$!"||t.data==="$?"&&t.ownerDocument.readyState!=="loading"}function Y1(t,s){var l=t.ownerDocument;if(t.data==="$~")t._reactRetry=s;else if(t.data!=="$?"||l.readyState!=="loading")s();else{var c=function(){s(),l.removeEventListener("DOMContentLoaded",c)};l.addEventListener("DOMContentLoaded",c),t._reactRetry=c}}function dn(t){for(;t!=null;t=t.nextSibling){var s=t.nodeType;if(s===1||s===3)break;if(s===8){if(s=t.data,s==="$"||s==="$!"||s==="$?"||s==="$~"||s==="&"||s==="F!"||s==="F")break;if(s==="/$"||s==="/&")return null}}return t}var Qf=null;function Ey(t){t=t.nextSibling;for(var s=0;t;){if(t.nodeType===8){var l=t.data;if(l==="/$"||l==="/&"){if(s===0)return dn(t.nextSibling);s--}else l!=="$"&&l!=="$!"&&l!=="$?"&&l!=="$~"&&l!=="&"||s++}t=t.nextSibling}return null}function Ty(t){t=t.previousSibling;for(var s=0;t;){if(t.nodeType===8){var l=t.data;if(l==="$"||l==="$!"||l==="$?"||l==="$~"||l==="&"){if(s===0)return t;s--}else l!=="/$"&&l!=="/&"||s++}t=t.previousSibling}return null}function Ay(t,s,l){switch(s=wo(l),t){case"html":if(t=s.documentElement,!t)throw Error(r(452));return t;case"head":if(t=s.head,!t)throw Error(r(453));return t;case"body":if(t=s.body,!t)throw Error(r(454));return t;default:throw Error(r(451))}}function Ta(t){for(var s=t.attributes;s.length;)t.removeAttributeNode(s[0]);Pc(t)}var pn=new Map,Cy=new Set;function xo(t){return typeof t.getRootNode=="function"?t.getRootNode():t.nodeType===9?t:t.ownerDocument}var Zn=Z.d;Z.d={f:F1,r:Q1,D:P1,C:J1,L:Z1,m:W1,X:tx,S:ex,M:nx};function F1(){var t=Zn.f(),s=ho();return t||s}function Q1(t){var s=As(t);s!==null&&s.tag===5&&s.type==="form"?Gg(s):Zn.r(t)}var sr=typeof document>"u"?null:document;function Ny(t,s,l){var c=sr;if(c&&typeof s=="string"&&s){var h=an(s);h='link[rel="'+t+'"][href="'+h+'"]',typeof l=="string"&&(h+='[crossorigin="'+l+'"]'),Cy.has(h)||(Cy.add(h),t={rel:t,crossOrigin:l,href:s},c.querySelector(h)===null&&(s=c.createElement("link"),xt(s,"link",t),gt(s),c.head.appendChild(s)))}}function P1(t){Zn.D(t),Ny("dns-prefetch",t,null)}function J1(t,s){Zn.C(t,s),Ny("preconnect",t,s)}function Z1(t,s,l){Zn.L(t,s,l);var c=sr;if(c&&t&&s){var h='link[rel="preload"][as="'+an(s)+'"]';s==="image"&&l&&l.imageSrcSet?(h+='[imagesrcset="'+an(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(h+='[imagesizes="'+an(l.imageSizes)+'"]')):h+='[href="'+an(t)+'"]';var p=h;switch(s){case"style":p=rr(t);break;case"script":p=ar(t)}pn.has(p)||(t=y({rel:"preload",href:s==="image"&&l&&l.imageSrcSet?void 0:t,as:s},l),pn.set(p,t),c.querySelector(h)!==null||s==="style"&&c.querySelector(Aa(p))||s==="script"&&c.querySelector(Ca(p))||(s=c.createElement("link"),xt(s,"link",t),gt(s),c.head.appendChild(s)))}}function W1(t,s){Zn.m(t,s);var l=sr;if(l&&t){var c=s&&typeof s.as=="string"?s.as:"script",h='link[rel="modulepreload"][as="'+an(c)+'"][href="'+an(t)+'"]',p=h;switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":p=ar(t)}if(!pn.has(p)&&(t=y({rel:"modulepreload",href:t},s),pn.set(p,t),l.querySelector(h)===null)){switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Ca(p)))return}c=l.createElement("link"),xt(c,"link",t),gt(c),l.head.appendChild(c)}}}function ex(t,s,l){Zn.S(t,s,l);var c=sr;if(c&&t){var h=Cs(c).hoistableStyles,p=rr(t);s=s||"default";var v=h.get(p);if(!v){var T={loading:0,preload:null};if(v=c.querySelector(Aa(p)))T.loading=5;else{t=y({rel:"stylesheet",href:t,"data-precedence":s},l),(l=pn.get(p))&&Pf(t,l);var N=v=c.createElement("link");gt(N),xt(N,"link",t),N._p=new Promise(function(z,G){N.onload=z,N.onerror=G}),N.addEventListener("load",function(){T.loading|=1}),N.addEventListener("error",function(){T.loading|=2}),T.loading|=4,_o(v,s,c)}v={type:"stylesheet",instance:v,count:1,state:T},h.set(p,v)}}}function tx(t,s){Zn.X(t,s);var l=sr;if(l&&t){var c=Cs(l).hoistableScripts,h=ar(t),p=c.get(h);p||(p=l.querySelector(Ca(h)),p||(t=y({src:t,async:!0},s),(s=pn.get(h))&&Jf(t,s),p=l.createElement("script"),gt(p),xt(p,"link",t),l.head.appendChild(p)),p={type:"script",instance:p,count:1,state:null},c.set(h,p))}}function nx(t,s){Zn.M(t,s);var l=sr;if(l&&t){var c=Cs(l).hoistableScripts,h=ar(t),p=c.get(h);p||(p=l.querySelector(Ca(h)),p||(t=y({src:t,async:!0,type:"module"},s),(s=pn.get(h))&&Jf(t,s),p=l.createElement("script"),gt(p),xt(p,"link",t),l.head.appendChild(p)),p={type:"script",instance:p,count:1,state:null},c.set(h,p))}}function ky(t,s,l,c){var h=(h=se.current)?xo(h):null;if(!h)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(s=rr(l.href),l=Cs(h).hoistableStyles,c=l.get(s),c||(c={type:"style",instance:null,count:0,state:null},l.set(s,c)),c):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=rr(l.href);var p=Cs(h).hoistableStyles,v=p.get(t);if(v||(h=h.ownerDocument||h,v={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},p.set(t,v),(p=h.querySelector(Aa(t)))&&!p._p&&(v.instance=p,v.state.loading=5),pn.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},pn.set(t,l),p||ix(h,t,l,v.state))),s&&c===null)throw Error(r(528,""));return v}if(s&&c!==null)throw Error(r(529,""));return null;case"script":return s=l.async,l=l.src,typeof l=="string"&&s&&typeof s!="function"&&typeof s!="symbol"?(s=ar(l),l=Cs(h).hoistableScripts,c=l.get(s),c||(c={type:"script",instance:null,count:0,state:null},l.set(s,c)),c):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function rr(t){return'href="'+an(t)+'"'}function Aa(t){return'link[rel="stylesheet"]['+t+"]"}function My(t){return y({},t,{"data-precedence":t.precedence,precedence:null})}function ix(t,s,l,c){t.querySelector('link[rel="preload"][as="style"]['+s+"]")?c.loading=1:(s=t.createElement("link"),c.preload=s,s.addEventListener("load",function(){return c.loading|=1}),s.addEventListener("error",function(){return c.loading|=2}),xt(s,"link",l),gt(s),t.head.appendChild(s))}function ar(t){return'[src="'+an(t)+'"]'}function Ca(t){return"script[async]"+t}function Oy(t,s,l){if(s.count++,s.instance===null)switch(s.type){case"style":var c=t.querySelector('style[data-href~="'+an(l.href)+'"]');if(c)return s.instance=c,gt(c),c;var h=y({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return c=(t.ownerDocument||t).createElement("style"),gt(c),xt(c,"style",h),_o(c,l.precedence,t),s.instance=c;case"stylesheet":h=rr(l.href);var p=t.querySelector(Aa(h));if(p)return s.state.loading|=4,s.instance=p,gt(p),p;c=My(l),(h=pn.get(h))&&Pf(c,h),p=(t.ownerDocument||t).createElement("link"),gt(p);var v=p;return v._p=new Promise(function(T,N){v.onload=T,v.onerror=N}),xt(p,"link",c),s.state.loading|=4,_o(p,l.precedence,t),s.instance=p;case"script":return p=ar(l.src),(h=t.querySelector(Ca(p)))?(s.instance=h,gt(h),h):(c=l,(h=pn.get(p))&&(c=y({},l),Jf(c,h)),t=t.ownerDocument||t,h=t.createElement("script"),gt(h),xt(h,"link",c),t.head.appendChild(h),s.instance=h);case"void":return null;default:throw Error(r(443,s.type))}else s.type==="stylesheet"&&(s.state.loading&4)===0&&(c=s.instance,s.state.loading|=4,_o(c,l.precedence,t));return s.instance}function _o(t,s,l){for(var c=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),h=c.length?c[c.length-1]:null,p=h,v=0;v<c.length;v++){var T=c[v];if(T.dataset.precedence===s)p=T;else if(p!==h)break}p?p.parentNode.insertBefore(t,p.nextSibling):(s=l.nodeType===9?l.head:l,s.insertBefore(t,s.firstChild))}function Pf(t,s){t.crossOrigin==null&&(t.crossOrigin=s.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=s.referrerPolicy),t.title==null&&(t.title=s.title)}function Jf(t,s){t.crossOrigin==null&&(t.crossOrigin=s.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=s.referrerPolicy),t.integrity==null&&(t.integrity=s.integrity)}var Eo=null;function jy(t,s,l){if(Eo===null){var c=new Map,h=Eo=new Map;h.set(l,c)}else h=Eo,c=h.get(l),c||(c=new Map,h.set(l,c));if(c.has(t))return c;for(c.set(t,null),l=l.getElementsByTagName(t),h=0;h<l.length;h++){var p=l[h];if(!(p[Vr]||p[bt]||t==="link"&&p.getAttribute("rel")==="stylesheet")&&p.namespaceURI!=="http://www.w3.org/2000/svg"){var v=p.getAttribute(s)||"";v=t+v;var T=c.get(v);T?T.push(p):c.set(v,[p])}}return c}function Ly(t,s,l){t=t.ownerDocument||t,t.head.insertBefore(l,s==="title"?t.querySelector("head > title"):null)}function sx(t,s,l){if(l===1||s.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof s.precedence!="string"||typeof s.href!="string"||s.href==="")break;return!0;case"link":if(typeof s.rel!="string"||typeof s.href!="string"||s.href===""||s.onLoad||s.onError)break;switch(s.rel){case"stylesheet":return t=s.disabled,typeof s.precedence=="string"&&t==null;default:return!0}case"script":if(s.async&&typeof s.async!="function"&&typeof s.async!="symbol"&&!s.onLoad&&!s.onError&&s.src&&typeof s.src=="string")return!0}return!1}function Ry(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function rx(t,s,l,c){if(l.type==="stylesheet"&&(typeof c.media!="string"||matchMedia(c.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var h=rr(c.href),p=s.querySelector(Aa(h));if(p){s=p._p,s!==null&&typeof s=="object"&&typeof s.then=="function"&&(t.count++,t=To.bind(t),s.then(t,t)),l.state.loading|=4,l.instance=p,gt(p);return}p=s.ownerDocument||s,c=My(c),(h=pn.get(h))&&Pf(c,h),p=p.createElement("link"),gt(p);var v=p;v._p=new Promise(function(T,N){v.onload=T,v.onerror=N}),xt(p,"link",c),l.instance=p}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,s),(s=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=To.bind(t),s.addEventListener("load",l),s.addEventListener("error",l))}}var Zf=0;function ax(t,s){return t.stylesheets&&t.count===0&&Co(t,t.stylesheets),0<t.count||0<t.imgCount?function(l){var c=setTimeout(function(){if(t.stylesheets&&Co(t,t.stylesheets),t.unsuspend){var p=t.unsuspend;t.unsuspend=null,p()}},6e4+s);0<t.imgBytes&&Zf===0&&(Zf=62500*q1());var h=setTimeout(function(){if(t.waitingForImages=!1,t.count===0&&(t.stylesheets&&Co(t,t.stylesheets),t.unsuspend)){var p=t.unsuspend;t.unsuspend=null,p()}},(t.imgBytes>Zf?50:800)+s);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(c),clearTimeout(h)}}:null}function To(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Co(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Ao=null;function Co(t,s){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Ao=new Map,s.forEach(lx,t),Ao=null,To.call(t))}function lx(t,s){if(!(s.state.loading&4)){var l=Ao.get(t);if(l)var c=l.get(null);else{l=new Map,Ao.set(t,l);for(var h=t.querySelectorAll("link[data-precedence],style[data-precedence]"),p=0;p<h.length;p++){var v=h[p];(v.nodeName==="LINK"||v.getAttribute("media")!=="not all")&&(l.set(v.dataset.precedence,v),c=v)}c&&l.set(null,c)}h=s.instance,v=h.getAttribute("data-precedence"),p=l.get(v)||c,p===c&&l.set(null,h),l.set(v,h),this.count++,c=To.bind(this),h.addEventListener("load",c),h.addEventListener("error",c),p?p.parentNode.insertBefore(h,p.nextSibling):(t=t.nodeType===9?t.head:t,t.insertBefore(h,t.firstChild)),s.state.loading|=4}}var Na={$$typeof:H,Provider:null,Consumer:null,_currentValue:re,_currentValue2:re,_threadCount:0};function ox(t,s,l,c,h,p,v,T,N){this.tag=1,this.containerInfo=t,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Xc(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Xc(0),this.hiddenUpdates=Xc(null),this.identifierPrefix=c,this.onUncaughtError=h,this.onCaughtError=p,this.onRecoverableError=v,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=N,this.incompleteTransitions=new Map}function Dy(t,s,l,c,h,p,v,T,N,z,G,F){return t=new ox(t,s,l,v,N,z,G,F,T),s=1,p===!0&&(s|=24),p=Pt(3,null,null,s),t.current=p,p.stateNode=t,s=Mu(),s.refCount++,t.pooledCache=s,s.refCount++,p.memoizedState={element:c,isDehydrated:l,cache:s},Ru(p),t}function zy(t){return t?(t=Us,t):Us}function Uy(t,s,l,c,h,p){h=zy(h),c.context===null?c.context=h:c.pendingContext=h,c=pi(s),c.payload={element:l},p=p===void 0?null:p,p!==null&&(c.callback=p),l=gi(t,c,s),l!==null&&(Bt(l,t,s),aa(l,t,s))}function Hy(t,s){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var l=t.retryLane;t.retryLane=l!==0&&l<s?l:s}}function Wf(t,s){Hy(t,s),(t=t.alternate)&&Hy(t,s)}function By(t){if(t.tag===13||t.tag===31){var s=Ki(t,67108864);s!==null&&Bt(s,t,67108864),Wf(t,67108864)}}function qy(t){if(t.tag===13||t.tag===31){var s=tn();s=Yc(s);var l=Ki(t,s);l!==null&&Bt(l,t,s),Wf(t,s)}}var No=!0;function cx(t,s,l,c){var h=q.T;q.T=null;var p=Z.p;try{Z.p=2,eh(t,s,l,c)}finally{Z.p=p,q.T=h}}function ux(t,s,l,c){var h=q.T;q.T=null;var p=Z.p;try{Z.p=8,eh(t,s,l,c)}finally{Z.p=p,q.T=h}}function eh(t,s,l,c){if(No){var h=th(c);if(h===null)qf(t,s,c,ko,l),Iy(t,c);else if(hx(h,t,s,l,c))c.stopPropagation();else if(Iy(t,c),s&4&&-1<fx.indexOf(t)){for(;h!==null;){var p=As(h);if(p!==null)switch(p.tag){case 3:if(p=p.stateNode,p.current.memoizedState.isDehydrated){var v=qi(p.pendingLanes);if(v!==0){var T=p;for(T.pendingLanes|=2,T.entangledLanes|=2;v;){var N=1<<31-kt(v);T.entanglements[1]|=N,v&=~N}kn(p),(Ce&6)===0&&(uo=it()+500,xa(0))}}break;case 31:case 13:T=Ki(p,2),T!==null&&Bt(T,p,2),ho(),Wf(p,2)}if(p=th(c),p===null&&qf(t,s,c,ko,l),p===h)break;h=p}h!==null&&c.stopPropagation()}else qf(t,s,c,null,l)}}function th(t){return t=nu(t),nh(t)}var ko=null;function nh(t){if(ko=null,t=Ts(t),t!==null){var s=o(t);if(s===null)t=null;else{var l=s.tag;if(l===13){if(t=u(s),t!==null)return t;t=null}else if(l===31){if(t=f(s),t!==null)return t;t=null}else if(l===3){if(s.stateNode.current.memoizedState.isDehydrated)return s.tag===3?s.stateNode.containerInfo:null;t=null}else s!==t&&(t=null)}}return ko=t,null}function $y(t){switch(t){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch($c()){case yl:return 2;case bl:return 8;case xs:case vl:return 32;case _s:return 268435456;default:return 32}default:return 32}}var ih=!1,Ai=null,Ci=null,Ni=null,ka=new Map,Ma=new Map,ki=[],fx="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function Iy(t,s){switch(t){case"focusin":case"focusout":Ai=null;break;case"dragenter":case"dragleave":Ci=null;break;case"mouseover":case"mouseout":Ni=null;break;case"pointerover":case"pointerout":ka.delete(s.pointerId);break;case"gotpointercapture":case"lostpointercapture":Ma.delete(s.pointerId)}}function Oa(t,s,l,c,h,p){return t===null||t.nativeEvent!==p?(t={blockedOn:s,domEventName:l,eventSystemFlags:c,nativeEvent:p,targetContainers:[h]},s!==null&&(s=As(s),s!==null&&By(s)),t):(t.eventSystemFlags|=c,s=t.targetContainers,h!==null&&s.indexOf(h)===-1&&s.push(h),t)}function hx(t,s,l,c,h){switch(s){case"focusin":return Ai=Oa(Ai,t,s,l,c,h),!0;case"dragenter":return Ci=Oa(Ci,t,s,l,c,h),!0;case"mouseover":return Ni=Oa(Ni,t,s,l,c,h),!0;case"pointerover":var p=h.pointerId;return ka.set(p,Oa(ka.get(p)||null,t,s,l,c,h)),!0;case"gotpointercapture":return p=h.pointerId,Ma.set(p,Oa(Ma.get(p)||null,t,s,l,c,h)),!0}return!1}function Vy(t){var s=Ts(t.target);if(s!==null){var l=o(s);if(l!==null){if(s=l.tag,s===13){if(s=u(l),s!==null){t.blockedOn=s,ip(t.priority,function(){qy(l)});return}}else if(s===31){if(s=f(l),s!==null){t.blockedOn=s,ip(t.priority,function(){qy(l)});return}}else if(s===3&&l.stateNode.current.memoizedState.isDehydrated){t.blockedOn=l.tag===3?l.stateNode.containerInfo:null;return}}}t.blockedOn=null}function Mo(t){if(t.blockedOn!==null)return!1;for(var s=t.targetContainers;0<s.length;){var l=th(t.nativeEvent);if(l===null){l=t.nativeEvent;var c=new l.constructor(l.type,l);tu=c,l.target.dispatchEvent(c),tu=null}else return s=As(l),s!==null&&By(s),t.blockedOn=l,!1;s.shift()}return!0}function Gy(t,s,l){Mo(t)&&l.delete(s)}function dx(){ih=!1,Ai!==null&&Mo(Ai)&&(Ai=null),Ci!==null&&Mo(Ci)&&(Ci=null),Ni!==null&&Mo(Ni)&&(Ni=null),ka.forEach(Gy),Ma.forEach(Gy)}function Oo(t,s){t.blockedOn===s&&(t.blockedOn=null,ih||(ih=!0,n.unstable_scheduleCallback(n.unstable_NormalPriority,dx)))}var jo=null;function Ky(t){jo!==t&&(jo=t,n.unstable_scheduleCallback(n.unstable_NormalPriority,function(){jo===t&&(jo=null);for(var s=0;s<t.length;s+=3){var l=t[s],c=t[s+1],h=t[s+2];if(typeof c!="function"){if(nh(c||l)===null)continue;break}var p=As(l);p!==null&&(t.splice(s,3),s-=3,ef(p,{pending:!0,data:h,method:l.method,action:c},c,h))}}))}function lr(t){function s(N){return Oo(N,t)}Ai!==null&&Oo(Ai,t),Ci!==null&&Oo(Ci,t),Ni!==null&&Oo(Ni,t),ka.forEach(s),Ma.forEach(s);for(var l=0;l<ki.length;l++){var c=ki[l];c.blockedOn===t&&(c.blockedOn=null)}for(;0<ki.length&&(l=ki[0],l.blockedOn===null);)Vy(l),l.blockedOn===null&&ki.shift();if(l=(t.ownerDocument||t).$$reactFormReplay,l!=null)for(c=0;c<l.length;c+=3){var h=l[c],p=l[c+1],v=h[Lt]||null;if(typeof p=="function")v||Ky(l);else if(v){var T=null;if(p&&p.hasAttribute("formAction")){if(h=p,v=p[Lt]||null)T=v.formAction;else if(nh(h)!==null)continue}else T=v.action;typeof T=="function"?l[c+1]=T:(l.splice(c,3),c-=3),Ky(l)}}}function Xy(){function t(p){p.canIntercept&&p.info==="react-transition"&&p.intercept({handler:function(){return new Promise(function(v){return h=v})},focusReset:"manual",scroll:"manual"})}function s(){h!==null&&(h(),h=null),c||setTimeout(l,20)}function l(){if(!c&&!navigation.transition){var p=navigation.currentEntry;p&&p.url!=null&&navigation.navigate(p.url,{state:p.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var c=!1,h=null;return navigation.addEventListener("navigate",t),navigation.addEventListener("navigatesuccess",s),navigation.addEventListener("navigateerror",s),setTimeout(l,100),function(){c=!0,navigation.removeEventListener("navigate",t),navigation.removeEventListener("navigatesuccess",s),navigation.removeEventListener("navigateerror",s),h!==null&&(h(),h=null)}}}function sh(t){this._internalRoot=t}Lo.prototype.render=sh.prototype.render=function(t){var s=this._internalRoot;if(s===null)throw Error(r(409));var l=s.current,c=tn();Uy(l,c,t,s,null,null)},Lo.prototype.unmount=sh.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var s=t.containerInfo;Uy(t.current,2,null,t,null,null),ho(),s[Es]=null}};function Lo(t){this._internalRoot=t}Lo.prototype.unstable_scheduleHydration=function(t){if(t){var s=np();t={blockedOn:null,target:t,priority:s};for(var l=0;l<ki.length&&s!==0&&s<ki[l].priority;l++);ki.splice(l,0,t),l===0&&Vy(t)}};var Yy=e.version;if(Yy!=="19.2.1")throw Error(r(527,Yy,"19.2.1"));Z.findDOMNode=function(t){var s=t._reactInternals;if(s===void 0)throw typeof t.render=="function"?Error(r(188)):(t=Object.keys(t).join(","),Error(r(268,t)));return t=g(s),t=t!==null?m(t):null,t=t===null?null:t.stateNode,t};var px={bundleType:0,version:"19.2.1",rendererPackageName:"react-dom",currentDispatcherRef:q,reconcilerVersion:"19.2.1"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Ro=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Ro.isDisabled&&Ro.supportsFiber)try{Bi=Ro.inject(px),ft=Ro}catch{}}return La.createRoot=function(t,s){if(!a(t))throw Error(r(299));var l=!1,c="",h=em,p=tm,v=nm;return s!=null&&(s.unstable_strictMode===!0&&(l=!0),s.identifierPrefix!==void 0&&(c=s.identifierPrefix),s.onUncaughtError!==void 0&&(h=s.onUncaughtError),s.onCaughtError!==void 0&&(p=s.onCaughtError),s.onRecoverableError!==void 0&&(v=s.onRecoverableError)),s=Dy(t,1,!1,null,null,l,c,null,h,p,v,Xy),t[Es]=s.current,Bf(t),new sh(s)},La.hydrateRoot=function(t,s,l){if(!a(t))throw Error(r(299));var c=!1,h="",p=em,v=tm,T=nm,N=null;return l!=null&&(l.unstable_strictMode===!0&&(c=!0),l.identifierPrefix!==void 0&&(h=l.identifierPrefix),l.onUncaughtError!==void 0&&(p=l.onUncaughtError),l.onCaughtError!==void 0&&(v=l.onCaughtError),l.onRecoverableError!==void 0&&(T=l.onRecoverableError),l.formState!==void 0&&(N=l.formState)),s=Dy(t,1,!0,s,l??null,c,h,N,p,v,T,Xy),s.context=zy(null),l=s.current,c=tn(),c=Yc(c),h=pi(c),h.callback=null,gi(l,h,c),l=c,s.current.lanes=l,Ir(s,l),kn(s),t[Es]=s.current,Bf(t),new Lo(s)},La.version="19.2.1",La}var rb;function Lx(){if(rb)return lh.exports;rb=1;function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}return n(),lh.exports=jx(),lh.exports}var I2=Lx();const Rx=new Map([["Android.devices",{internal:!0}],["AndroidSocket.write",{internal:!0}],["AndroidSocket.close",{internal:!0}],["AndroidDevice.wait",{title:"Wait"}],["AndroidDevice.fill",{title:'Fill "{text}"'}],["AndroidDevice.tap",{title:"Tap"}],["AndroidDevice.drag",{title:"Drag"}],["AndroidDevice.fling",{title:"Fling"}],["AndroidDevice.longTap",{title:"Long tap"}],["AndroidDevice.pinchClose",{title:"Pinch close"}],["AndroidDevice.pinchOpen",{title:"Pinch open"}],["AndroidDevice.scroll",{title:"Scroll"}],["AndroidDevice.swipe",{title:"Swipe"}],["AndroidDevice.info",{internal:!0}],["AndroidDevice.screenshot",{title:"Screenshot"}],["AndroidDevice.inputType",{title:"Type"}],["AndroidDevice.inputPress",{title:"Press"}],["AndroidDevice.inputTap",{title:"Tap"}],["AndroidDevice.inputSwipe",{title:"Swipe"}],["AndroidDevice.inputDrag",{title:"Drag"}],["AndroidDevice.launchBrowser",{title:"Launch browser"}],["AndroidDevice.open",{title:"Open app"}],["AndroidDevice.shell",{title:"Execute shell command",group:"configuration"}],["AndroidDevice.installApk",{title:"Install apk"}],["AndroidDevice.push",{title:"Push"}],["AndroidDevice.connectToWebView",{title:"Connect to Web View"}],["AndroidDevice.close",{internal:!0}],["APIRequestContext.fetch",{title:'{method} "{url}"'}],["APIRequestContext.fetchResponseBody",{title:"Get response body",group:"getter"}],["APIRequestContext.fetchLog",{internal:!0}],["APIRequestContext.storageState",{title:"Get storage state",group:"configuration"}],["APIRequestContext.disposeAPIResponse",{internal:!0}],["APIRequestContext.dispose",{internal:!0,potentiallyClosesScope:!0}],["Artifact.pathAfterFinished",{internal:!0}],["Artifact.saveAs",{internal:!0}],["Artifact.saveAsStream",{internal:!0}],["Artifact.failure",{internal:!0}],["Artifact.stream",{internal:!0}],["Artifact.cancel",{internal:!0}],["Artifact.delete",{internal:!0,potentiallyClosesScope:!0}],["Stream.read",{internal:!0}],["Stream.close",{internal:!0}],["WritableStream.write",{internal:!0}],["WritableStream.close",{internal:!0}],["Browser.startServer",{title:"Start server"}],["Browser.stopServer",{title:"Stop server"}],["Browser.close",{title:"Close browser",pause:!0,potentiallyClosesScope:!0}],["Browser.killForTests",{internal:!0,potentiallyClosesScope:!0}],["Browser.defaultUserAgentForTest",{internal:!0}],["Browser.newContext",{title:"Create context"}],["Browser.newContextForReuse",{internal:!0}],["Browser.disconnectFromReusedContext",{internal:!0}],["Browser.newBrowserCDPSession",{title:"Create CDP session",group:"configuration"}],["Browser.startTracing",{title:"Start browser tracing",group:"configuration"}],["Browser.stopTracing",{title:"Stop browser tracing",group:"configuration"}],["BrowserContext.addCookies",{title:"Add cookies",group:"configuration"}],["BrowserContext.addInitScript",{title:"Add init script",group:"configuration"}],["BrowserContext.clearCookies",{title:"Clear cookies",group:"configuration"}],["BrowserContext.clearPermissions",{title:"Clear permissions",group:"configuration"}],["BrowserContext.close",{title:"Close context",pause:!0,potentiallyClosesScope:!0}],["BrowserContext.cookies",{title:"Get cookies",group:"getter"}],["BrowserContext.exposeBinding",{title:"Expose binding",group:"configuration"}],["BrowserContext.grantPermissions",{title:"Grant permissions",group:"configuration"}],["BrowserContext.newPage",{title:"Create page"}],["BrowserContext.registerSelectorEngine",{internal:!0}],["BrowserContext.setTestIdAttributeName",{internal:!0}],["BrowserContext.setExtraHTTPHeaders",{title:"Set extra HTTP headers",group:"configuration"}],["BrowserContext.setGeolocation",{title:"Set geolocation",group:"configuration"}],["BrowserContext.setHTTPCredentials",{title:"Set HTTP credentials",group:"configuration"}],["BrowserContext.setNetworkInterceptionPatterns",{title:"Route requests",group:"route"}],["BrowserContext.setWebSocketInterceptionPatterns",{title:"Route WebSockets",group:"route"}],["BrowserContext.setOffline",{title:"Set offline mode"}],["BrowserContext.storageState",{title:"Get storage state",group:"configuration"}],["BrowserContext.setStorageState",{title:"Set storage state",group:"configuration"}],["BrowserContext.pause",{title:"Pause"}],["BrowserContext.enableRecorder",{internal:!0}],["BrowserContext.disableRecorder",{internal:!0}],["BrowserContext.exposeConsoleApi",{internal:!0}],["BrowserContext.newCDPSession",{title:"Create CDP session",group:"configuration"}],["BrowserContext.createTempFiles",{internal:!0}],["BrowserContext.updateSubscription",{internal:!0}],["BrowserContext.clockFastForward",{title:'Fast forward clock "{ticksNumber|ticksString}"'}],["BrowserContext.clockInstall",{title:'Install clock "{timeNumber|timeString}"'}],["BrowserContext.clockPauseAt",{title:'Pause clock "{timeNumber|timeString}"'}],["BrowserContext.clockResume",{title:"Resume clock"}],["BrowserContext.clockRunFor",{title:'Run clock "{ticksNumber|ticksString}"'}],["BrowserContext.clockSetFixedTime",{title:'Set fixed time "{timeNumber|timeString}"'}],["BrowserContext.clockSetSystemTime",{title:'Set system time "{timeNumber|timeString}"'}],["BrowserContext.credentialsInstall",{title:"Install virtual WebAuthn authenticator",group:"configuration"}],["BrowserContext.credentialsCreate",{title:'Create virtual credential for "{rpId}"',group:"configuration"}],["BrowserContext.credentialsGet",{title:"Get virtual credentials",group:"configuration"}],["BrowserContext.credentialsDelete",{title:"Delete virtual credential",group:"configuration"}],["BrowserType.launch",{title:"Launch browser"}],["BrowserType.launchPersistentContext",{title:"Launch persistent context"}],["BrowserType.connectOverCDP",{title:"Connect over CDP"}],["BrowserType.connectToWorker",{title:"Connect to worker"}],["Disposable.dispose",{internal:!0,potentiallyClosesScope:!0}],["Electron.launch",{title:"Launch electron"}],["ElectronApplication.browserWindow",{internal:!0}],["ElectronApplication.evaluateExpression",{title:"Evaluate"}],["ElectronApplication.evaluateExpressionHandle",{title:"Evaluate"}],["ElectronApplication.updateSubscription",{internal:!0}],["Frame.evalOnSelector",{title:"Evaluate",snapshot:!0,pause:!0}],["Frame.evalOnSelectorAll",{title:"Evaluate",snapshot:!0,pause:!0}],["Frame.addScriptTag",{title:"Add script tag",snapshot:!0,pause:!0}],["Frame.addStyleTag",{title:"Add style tag",snapshot:!0,pause:!0}],["Frame.ariaSnapshot",{title:"Aria snapshot",group:"getter"}],["Frame.blur",{title:"Blur",slowMo:!0,snapshot:!0,pause:!0}],["Frame.check",{title:"Check",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.click",{title:"Click",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0,potentiallyClosesScope:!0}],["Frame.content",{title:"Get content",snapshot:!0,pause:!0}],["Frame.dragAndDrop",{title:"Drag and drop",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.drop",{title:"Drop files or data onto an element",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.dblclick",{title:"Double click",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.dispatchEvent",{title:'Dispatch "{type}"',slowMo:!0,snapshot:!0,pause:!0}],["Frame.evaluateExpression",{title:"Evaluate",snapshot:!0,pause:!0}],["Frame.evaluateExpressionHandle",{title:"Evaluate",snapshot:!0,pause:!0}],["Frame.fill",{title:'Fill "{value}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.focus",{title:"Focus",slowMo:!0,snapshot:!0,pause:!0}],["Frame.frameElement",{title:"Get frame element",group:"getter"}],["Frame.resolveSelector",{internal:!0}],["Frame.highlight",{internal:!0}],["Frame.hideHighlight",{internal:!0}],["Frame.getAttribute",{title:'Get attribute "{name}"',snapshot:!0,pause:!0,group:"getter"}],["Frame.goto",{title:'Navigate to "{url}"',slowMo:!0,snapshot:!0,pause:!0}],["Frame.hover",{title:"Hover",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.innerHTML",{title:"Get HTML",snapshot:!0,pause:!0,group:"getter"}],["Frame.innerText",{title:"Get inner text",snapshot:!0,pause:!0,group:"getter"}],["Frame.inputValue",{title:"Get input value",snapshot:!0,pause:!0,group:"getter"}],["Frame.isChecked",{title:"Is checked",snapshot:!0,pause:!0,group:"getter"}],["Frame.isDisabled",{title:"Is disabled",snapshot:!0,pause:!0,group:"getter"}],["Frame.isEnabled",{title:"Is enabled",snapshot:!0,pause:!0,group:"getter"}],["Frame.isHidden",{title:"Is hidden",snapshot:!0,pause:!0,group:"getter"}],["Frame.isVisible",{title:"Is visible",snapshot:!0,pause:!0,group:"getter"}],["Frame.isEditable",{title:"Is editable",snapshot:!0,pause:!0,group:"getter"}],["Frame.press",{title:'Press "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.querySelector",{title:"Query selector",snapshot:!0}],["Frame.querySelectorAll",{title:"Query selector all",snapshot:!0}],["Frame.queryCount",{title:"Query count",snapshot:!0,pause:!0}],["Frame.selectOption",{title:"Select option",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.setContent",{title:"Set content",snapshot:!0,pause:!0}],["Frame.setInputFiles",{title:"Set input files",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.tap",{title:"Tap",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.textContent",{title:"Get text content",snapshot:!0,pause:!0,group:"getter"}],["Frame.title",{title:"Get page title",group:"getter"}],["Frame.type",{title:'Type "{text}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.uncheck",{title:"Uncheck",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.waitForTimeout",{title:"Wait for timeout",snapshot:!0}],["Frame.waitForFunction",{title:"Wait for function",snapshot:!0,pause:!0}],["Frame.waitForSelector",{title:"Wait for selector",snapshot:!0}],["Frame.expect",{title:'Expect "{expression}"',snapshot:!0,pause:!0}],["JSHandle.dispose",{internal:!0,potentiallyClosesScope:!0}],["ElementHandle.dispose",{internal:!0,potentiallyClosesScope:!0}],["JSHandle.evaluateExpression",{title:"Evaluate",snapshot:!0,pause:!0}],["ElementHandle.evaluateExpression",{title:"Evaluate",snapshot:!0,pause:!0}],["JSHandle.evaluateExpressionHandle",{title:"Evaluate",snapshot:!0,pause:!0}],["ElementHandle.evaluateExpressionHandle",{title:"Evaluate",snapshot:!0,pause:!0}],["JSHandle.getPropertyList",{title:"Get property list",group:"getter"}],["ElementHandle.getPropertyList",{title:"Get property list",group:"getter"}],["JSHandle.getProperty",{title:"Get JS property",group:"getter"}],["ElementHandle.getProperty",{title:"Get JS property",group:"getter"}],["JSHandle.jsonValue",{title:"Get JSON value",group:"getter"}],["ElementHandle.jsonValue",{title:"Get JSON value",group:"getter"}],["ElementHandle.evalOnSelector",{title:"Evaluate",snapshot:!0,pause:!0}],["ElementHandle.evalOnSelectorAll",{title:"Evaluate",snapshot:!0,pause:!0}],["ElementHandle.boundingBox",{title:"Get bounding box",snapshot:!0,pause:!0}],["ElementHandle.check",{title:"Check",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.click",{title:"Click",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.contentFrame",{title:"Get content frame",group:"getter"}],["ElementHandle.dblclick",{title:"Double click",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.dispatchEvent",{title:"Dispatch event",slowMo:!0,snapshot:!0,pause:!0}],["ElementHandle.fill",{title:'Fill "{value}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.focus",{title:"Focus",slowMo:!0,snapshot:!0,pause:!0}],["ElementHandle.getAttribute",{title:"Get attribute",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.hover",{title:"Hover",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.innerHTML",{title:"Get HTML",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.innerText",{title:"Get inner text",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.inputValue",{title:"Get input value",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isChecked",{title:"Is checked",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isDisabled",{title:"Is disabled",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isEditable",{title:"Is editable",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isEnabled",{title:"Is enabled",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isHidden",{title:"Is hidden",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isVisible",{title:"Is visible",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.ownerFrame",{title:"Get owner frame",group:"getter"}],["ElementHandle.press",{title:'Press "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.querySelector",{title:"Query selector",snapshot:!0}],["ElementHandle.querySelectorAll",{title:"Query selector all",snapshot:!0}],["ElementHandle.screenshot",{title:"Screenshot",snapshot:!0,pause:!0}],["ElementHandle.scrollIntoViewIfNeeded",{title:"Scroll into view",slowMo:!0,snapshot:!0,pause:!0}],["ElementHandle.selectOption",{title:"Select option",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.selectText",{title:"Select text",slowMo:!0,snapshot:!0,pause:!0}],["ElementHandle.setInputFiles",{title:"Set input files",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.tap",{title:"Tap",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.textContent",{title:"Get text content",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.type",{title:"Type",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.uncheck",{title:"Uncheck",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.waitForElementState",{title:"Wait for state",snapshot:!0,pause:!0}],["ElementHandle.waitForSelector",{title:"Wait for selector",snapshot:!0}],["LocalUtils.zip",{internal:!0}],["LocalUtils.harOpen",{internal:!0}],["LocalUtils.harLookup",{internal:!0}],["LocalUtils.harClose",{internal:!0}],["LocalUtils.harUnzip",{internal:!0}],["LocalUtils.connect",{internal:!0}],["LocalUtils.tracingStarted",{internal:!0}],["LocalUtils.addStackToTracingNoReply",{internal:!0}],["LocalUtils.traceDiscarded",{internal:!0}],["LocalUtils.globToRegex",{internal:!0}],["Request.response",{internal:!0}],["Request.rawRequestHeaders",{internal:!0}],["Route.redirectNavigationRequest",{internal:!0}],["Route.abort",{title:"Abort request",group:"route"}],["Route.continue",{title:"Continue request",group:"route"}],["Route.fulfill",{title:"Fulfill request",group:"route"}],["WebSocketRoute.connect",{title:"Connect WebSocket to server",group:"route"}],["WebSocketRoute.ensureOpened",{internal:!0}],["WebSocketRoute.sendToPage",{title:"Send WebSocket message",group:"route"}],["WebSocketRoute.sendToServer",{title:"Send WebSocket message",group:"route"}],["WebSocketRoute.closePage",{internal:!0}],["WebSocketRoute.closeServer",{internal:!0}],["Response.body",{title:"Get response body",group:"getter"}],["Response.securityDetails",{internal:!0}],["Response.serverAddr",{internal:!0}],["Response.rawResponseHeaders",{internal:!0}],["Response.httpVersion",{internal:!0}],["Response.sizes",{internal:!0}],["Page.addInitScript",{title:"Add init script",group:"configuration"}],["Page.close",{title:"Close page",pause:!0,potentiallyClosesScope:!0}],["Page.runBeforeUnload",{title:"Run beforeunload",pause:!0}],["Page.clearConsoleMessages",{title:"Clear console messages"}],["Page.consoleMessages",{title:"Get console messages",group:"getter"}],["Page.emulateMedia",{title:"Emulate media",snapshot:!0,pause:!0}],["Page.exposeBinding",{title:"Expose binding",group:"configuration"}],["Page.goBack",{title:"Go back",slowMo:!0,snapshot:!0,pause:!0}],["Page.goForward",{title:"Go forward",slowMo:!0,snapshot:!0,pause:!0}],["Page.requestGC",{title:"Request garbage collection",group:"configuration"}],["Page.registerLocatorHandler",{title:"Register locator handler"}],["Page.resolveLocatorHandlerNoReply",{internal:!0}],["Page.unregisterLocatorHandler",{title:"Unregister locator handler"}],["Page.reload",{title:"Reload",slowMo:!0,snapshot:!0,pause:!0}],["Page.expectScreenshot",{title:"Expect screenshot",snapshot:!0,pause:!0}],["Page.screenshot",{title:"Screenshot",snapshot:!0,pause:!0}],["Page.setExtraHTTPHeaders",{title:"Set extra HTTP headers",group:"configuration"}],["Page.setNetworkInterceptionPatterns",{title:"Route requests",group:"route"}],["Page.setWebSocketInterceptionPatterns",{title:"Route WebSockets",group:"route"}],["Page.setViewportSize",{title:"Set viewport size",snapshot:!0,pause:!0}],["Page.keyboardDown",{title:'Key down "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.keyboardUp",{title:'Key up "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.keyboardInsertText",{title:'Insert "{text}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.keyboardType",{title:'Type "{text}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.keyboardPress",{title:'Press "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseMove",{title:"Mouse move",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseDown",{title:"Mouse down",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseUp",{title:"Mouse up",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseClick",{title:"Click",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseWheel",{title:"Mouse wheel",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.touchscreenTap",{title:"Tap",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.clearPageErrors",{title:"Clear page errors"}],["Page.pageErrors",{title:"Get page errors",group:"getter"}],["Page.pdf",{title:"PDF"}],["Page.requests",{title:"Get network requests",group:"getter"}],["Page.startJSCoverage",{title:"Start JS coverage",group:"configuration"}],["Page.stopJSCoverage",{title:"Stop JS coverage",group:"configuration"}],["Page.startCSSCoverage",{title:"Start CSS coverage",group:"configuration"}],["Page.stopCSSCoverage",{title:"Stop CSS coverage",group:"configuration"}],["Page.bringToFront",{title:"Bring to front"}],["Page.pickLocator",{title:"Pick locator",group:"configuration"}],["Page.cancelPickLocator",{title:"Cancel pick locator",group:"configuration"}],["Page.hideHighlight",{title:"Hide all element highlights",group:"configuration"}],["Page.screencastShowOverlay",{title:"Show overlay",group:"configuration"}],["Page.screencastRemoveOverlay",{title:"Remove overlay",group:"configuration"}],["Page.screencastChapter",{title:"Show chapter overlay",group:"configuration"}],["Page.screencastSetOverlayVisible",{title:"Set overlay visibility",group:"configuration"}],["Page.screencastShowActions",{title:"Show actions",group:"configuration"}],["Page.screencastHideActions",{title:"Remove actions",group:"configuration"}],["Page.screencastStart",{title:"Start screencast",group:"configuration"}],["Page.screencastStop",{title:"Stop screencast",group:"configuration"}],["Page.updateSubscription",{internal:!0}],["Page.setDockTile",{internal:!0}],["Page.webStorageItems",{title:"Get WebStorage items",group:"getter"}],["Page.webStorageGetItem",{title:"Get WebStorage item",group:"getter"}],["Page.webStorageSetItem",{title:"Set WebStorage item",group:"configuration"}],["Page.webStorageRemoveItem",{title:"Remove WebStorage item",group:"configuration"}],["Page.webStorageClear",{title:"Clear WebStorage",group:"configuration"}],["Root.initialize",{internal:!0}],["Playwright.newRequest",{title:"Create request context"}],["DebugController.initialize",{internal:!0}],["DebugController.setReportStateChanged",{internal:!0}],["DebugController.setRecorderMode",{internal:!0}],["DebugController.highlight",{internal:!0}],["DebugController.hideHighlight",{internal:!0}],["DebugController.resume",{internal:!0}],["DebugController.kill",{internal:!0}],["SocksSupport.socksConnected",{internal:!0}],["SocksSupport.socksFailed",{internal:!0}],["SocksSupport.socksData",{internal:!0}],["SocksSupport.socksError",{internal:!0}],["SocksSupport.socksEnd",{internal:!0}],["JsonPipe.send",{internal:!0}],["JsonPipe.close",{internal:!0}],["CDPSession.send",{title:"Send CDP command",group:"configuration"}],["CDPSession.detach",{title:"Detach CDP session",potentiallyClosesScope:!0,group:"configuration"}],["BindingCall.reject",{internal:!0}],["BindingCall.resolve",{internal:!0}],["Debugger.requestPause",{title:"Pause on next call",group:"configuration"}],["Debugger.resume",{title:"Resume",group:"configuration"}],["Debugger.next",{title:"Step to next call",group:"configuration"}],["Debugger.runTo",{title:"Run to location",group:"configuration"}],["Dialog.accept",{title:"Accept dialog"}],["Dialog.dismiss",{title:"Dismiss dialog"}],["Tracing.tracingStart",{title:"Start tracing",group:"configuration"}],["Tracing.tracingStartChunk",{title:"Start tracing",group:"configuration"}],["Tracing.tracingGroup",{title:'Trace "{name}"'}],["Tracing.tracingGroupEnd",{title:"Group end"}],["Tracing.tracingStopChunk",{title:"Stop tracing",group:"configuration"}],["Tracing.tracingStop",{title:"Stop tracing",group:"configuration"}],["Tracing.harStart",{internal:!0}],["Tracing.harExport",{internal:!0}],["Worker.disconnect",{title:"Disconnect from worker",potentiallyClosesScope:!0}],["Worker.evaluateExpression",{title:"Evaluate"}],["Worker.evaluateExpressionHandle",{title:"Evaluate"}],["Worker.updateSubscription",{internal:!0}]]);function id(n){return Rx.get(n.type+"."+n.method)}function g0(n,e){var i;return(i=Dx(n,e))==null?void 0:i.replaceAll(`
`,"\\n")}function Dx(n,e){if(n)for(const i of e.split("|")){if(i==="url")try{const a=new URL(n[i]);return a.protocol==="data:"?a.protocol:["about:","chrome:","edge:"].includes(a.protocol)?n[i]:a.pathname+a.search}catch{if(n[i]!==void 0)return n[i]}if(i==="timeNumber"&&n[i]!==void 0)return new Date(n[i]).toString();const r=zx(n,i);if(r!==void 0)return r}}function zx(n,e){const i=e.split(".");let r=n;for(const a of i){if(typeof r!="object"||r===null)return;r=r[a]}if(r!==void 0)return String(r)}function Ux(n){var i;return(n.title??((i=id(n))==null?void 0:i.title)??n.method).replace(/\{([^}]+)\}/g,(r,a)=>g0(n.params,a)??r)}function Hx(n){var e;return(e=id(n))==null?void 0:e.group}const Ia=Symbol("context"),m0=Symbol("nextInContext"),y0=Symbol("prevByEndTime"),b0=Symbol("nextByStartTime"),ab=Symbol("events");class V2{constructor(e,i){var a,o;i.forEach(u=>Bx(u));const r=i.find(u=>u.origin==="library");this.traceUri=e,this.browserName=(r==null?void 0:r.browserName)||"",this.sdkLanguage=r==null?void 0:r.sdkLanguage,this.channel=r==null?void 0:r.channel,this.testIdAttributeName=r==null?void 0:r.testIdAttributeName,this.platform=(r==null?void 0:r.platform)||"",this.playwrightVersion=(a=i.find(u=>u.playwrightVersion))==null?void 0:a.playwrightVersion,this.title=(r==null?void 0:r.title)||"",this.options=(r==null?void 0:r.options)||{},this.testTimeout=(o=i.find(u=>u.origin==="testRunner"))==null?void 0:o.testTimeout,this.actions=qx(i),this.pages=[].concat(...i.map(u=>u.pages)),this.wallTime=i.map(u=>u.wallTime).reduce((u,f)=>Math.min(u||Number.MAX_VALUE,f),Number.MAX_VALUE),this.startTime=i.map(u=>u.startTime).reduce((u,f)=>Math.min(u,f),Number.MAX_VALUE),this.endTime=i.map(u=>u.endTime).reduce((u,f)=>Math.max(u,f),Number.MIN_VALUE),this.events=[].concat(...i.map(u=>u.events)),this.stdio=[].concat(...i.map(u=>u.stdio)),this.errors=[].concat(...i.map(u=>u.errors)),this.hasSource=i.some(u=>u.hasSource),this.hasStepData=i.some(u=>u.origin==="testRunner"),this.resources=[...i.map(u=>u.resources)].flat().map(u=>({...u,id:`${u.pageref}-${u.startedDateTime}-${u.request.url}`})),this.attachments=this.actions.flatMap(u=>{var f;return((f=u.attachments)==null?void 0:f.map(d=>({...d,callId:u.callId,traceUri:e})))??[]}),this.visibleAttachments=this.attachments.filter(u=>!u.name.startsWith("_")),this.events.sort((u,f)=>u.time-f.time),this.resources.sort((u,f)=>u._monotonicTime-f._monotonicTime),this.errorDescriptors=this.hasStepData?this._errorDescriptorsFromTestRunner():this._errorDescriptorsFromActions(),this.sources=Yx(this.actions,this.errorDescriptors),this.actionCounters=new Map;for(const u of this.actions)u.group=u.group??Hx({type:u.class,method:u.method}),u.group&&this.actionCounters.set(u.group,1+(this.actionCounters.get(u.group)||0))}createRelativeUrl(e){const i=new URL("http://localhost/"+e);return i.searchParams.set("trace",this.traceUri),i.toString().substring(17)}failedAction(){return this.actions.findLast(e=>e.error)}filteredActions(e){const i=new Set(e);return this.actions.filter(r=>!r.group||i.has(r.group))}renderActionTree(e){const i=this.filteredActions(e??[]),{rootItem:r}=v0(i),a=[],o=(u,f)=>{const d=Ux({...u.action,type:u.action.class});a.push(`${f}${d||u.id}`);for(const g of u.children)o(g,f+"  ")};return r.children.forEach(u=>o(u,"")),a}_errorDescriptorsFromActions(){var i;const e=[];for(const r of this.actions||[])(i=r.error)!=null&&i.message&&e.push({action:r,stack:r.stack,message:r.error.message});return e}_errorDescriptorsFromTestRunner(){return this.errors.filter(e=>!!e.message).map((e,i)=>({stack:e.stack,message:e.message}))}}function Bx(n){for(const i of n.pages)i[Ia]=n;for(let i=0;i<n.actions.length;++i){const r=n.actions[i];r[Ia]=n}let e;for(let i=n.actions.length-1;i>=0;i--){const r=n.actions[i];r[m0]=e,r.class!=="Route"&&(e=r)}for(const i of n.events)i[Ia]=n;for(const i of n.resources)i[Ia]=n}function qx(n){const e=[],i=$x(n);e.push(...i),e.sort((r,a)=>a.parentId===r.callId?1:r.parentId===a.callId?-1:r.endTime-a.endTime);for(let r=1;r<e.length;++r)e[r][y0]=e[r-1];e.sort((r,a)=>a.parentId===r.callId?-1:r.parentId===a.callId?1:r.startTime-a.startTime);for(let r=0;r+1<e.length;++r)e[r][b0]=e[r+1];return e}let lb=0;function $x(n){const e=new Map,i=n.filter(u=>u.origin==="library"),r=n.filter(u=>u.origin==="testRunner");if(!r.length||!i.length)return n.map(u=>u.actions.map(f=>({...f,context:u}))).flat();for(const u of i)for(const f of u.actions)e.set(f.stepId||`tmp-step@${++lb}`,{...f,context:u});const a=Vx(r,e);a&&Ix(i,a);const o=new Map;for(const u of r)for(const f of u.actions){const d=f.stepId&&e.get(f.stepId);if(d){o.set(f.callId,d.callId),f.error&&(d.error=f.error),f.attachments&&(d.attachments=f.attachments),f.annotations&&(d.annotations=f.annotations),f.parentId&&(d.parentId=o.get(f.parentId)??f.parentId),f.group&&(d.group=f.group),d.startTime=f.startTime,d.endTime=f.endTime;continue}f.parentId&&(f.parentId=o.get(f.parentId)??f.parentId),e.set(f.stepId||`tmp-step@${++lb}`,{...f,context:u})}return[...e.values()]}function Ix(n,e){for(const i of n){i.startTime+=e,i.endTime+=e;for(const r of i.actions)r.startTime&&(r.startTime+=e),r.endTime&&(r.endTime+=e);for(const r of i.events)r.time+=e;for(const r of i.stdio)r.timestamp+=e;for(const r of i.pages)for(const a of r.screencastFrames)a.timestamp+=e;for(const r of i.resources)r._monotonicTime&&(r._monotonicTime+=e)}}function Vx(n,e){for(const i of n)for(const r of i.actions){if(!r.startTime)continue;const a=r.stepId?e.get(r.stepId):void 0;if(a)return r.startTime-a.startTime}return 0}function v0(n){const e=new Map;for(const a of n)e.set(a.callId,{id:a.callId,parent:void 0,children:[],action:a});const i={action:{...Fx},id:"",parent:void 0,children:[]};for(const a of e.values()){i.action.startTime=Math.min(i.action.startTime,a.action.startTime),i.action.endTime=Math.max(i.action.endTime,a.action.endTime);const o=a.action.parentId&&e.get(a.action.parentId)||i;o.children.push(a),a.parent=o}const r=a=>{for(const o of a.children)o.action.stack=o.action.stack??a.action.stack,r(o)};return r(i),{rootItem:i,itemMap:e}}function S0(n){return n[Ia]}function Gx(n){return n[m0]}function ob(n){return n[y0]}function cb(n){return n[b0]}function Kx(n){let e=0,i=0;for(const r of Xx(n)){if(r.type==="console"){const a=r.messageType;a==="warning"?++i:a==="error"&&++e}r.type==="event"&&r.method==="pageError"&&++e}return{errors:e,warnings:i}}function Xx(n){let e=n[ab];if(e)return e;const i=Gx(n);return e=S0(n).events.filter(r=>r.time>=n.startTime&&(!i||r.time<i.startTime)),n[ab]=e,e}function Yx(n,e){var r;const i=new Map;for(const a of n)for(const o of a.stack||[]){let u=i.get(o.file);u||(u={errors:[],content:void 0},i.set(o.file,u))}for(const a of e){const{action:o,stack:u,message:f}=a;!o||!u||(r=i.get(u[0].file))==null||r.errors.push({line:u[0].line||0,message:f})}return i}const Fx={type:"action",callId:"",startTime:0,endTime:0,class:"",method:"",params:{},log:[],context:{origin:"library",startTime:0,endTime:0,browserName:"",wallTime:0,options:{},pages:[],resources:[],actions:[],events:[],stdio:[],errors:[],hasSource:!1,contextId:""}},Qx=50,il=({sidebarSize:n,sidebarHidden:e=!1,sidebarIsFirst:i=!1,orientation:r="vertical",minSidebarSize:a=Qx,settingName:o,sidebar:u,main:f})=>{const d=Math.max(a,n)*window.devicePixelRatio,[g,m]=jt(o?o+"."+r+":size":void 0,d),[y,S]=jt(o?o+"."+r+":size":void 0,d),[w,E]=R.useState(null),[x,_]=gs();let A;r==="vertical"?(A=y/window.devicePixelRatio,x&&x.height<A&&(A=x.height-10)):(A=g/window.devicePixelRatio,x&&x.width<A&&(A=x.width-10)),document.body.style.userSelect=w?"none":"inherit";let C={};return r==="vertical"?i?C={top:w?0:A-4,bottom:w?0:void 0,height:w?"initial":8}:C={bottom:w?0:A-4,top:w?0:void 0,height:w?"initial":8}:i?C={left:w?0:A-4,right:w?0:void 0,width:w?"initial":8}:C={right:w?0:A-4,left:w?0:void 0,width:w?"initial":8},b.jsxs("div",{className:ut("split-view",r,i&&"sidebar-first"),ref:_,children:[b.jsx("div",{className:"split-view-main",children:f}),!e&&b.jsx("div",{style:{flexBasis:A},className:"split-view-sidebar",children:u}),!e&&b.jsx("div",{style:C,className:"split-view-resizer",onMouseDown:H=>E({offset:r==="vertical"?H.clientY:H.clientX,size:A}),onMouseUp:()=>E(null),onMouseMove:H=>{if(!H.buttons)E(null);else if(w){const K=(r==="vertical"?H.clientY:H.clientX)-w.offset,Q=i?w.size+K:w.size-K,I=H.target.parentElement.getBoundingClientRect(),O=Math.min(Math.max(a,Q),(r==="vertical"?I.height:I.width)-a);r==="vertical"?S(O*window.devicePixelRatio):m(O*window.devicePixelRatio)}}})]})};function yt(n){if(n<0||!isFinite(n))return"-";if(n===0)return"0ms";if(n<1e3)return n.toFixed(0)+"ms";const e=n/1e3;if(e<60)return e.toFixed(1)+"s";const i=e/60;if(i<60)return i.toFixed(1)+"m";const r=i/60;return r<24?r.toFixed(1)+"h":(r/24).toFixed(1)+"d"}function bc(n){if(n<0||!isFinite(n))return"-";if(n===0)return"0";if(n<1e3)return n.toFixed(0);const e=n/1024;if(e<1e3)return e.toFixed(1)+"K";const i=e/1024;return i<1e3?i.toFixed(1)+"M":(i/1024).toFixed(1)+"G"}const ot=function(n,e,i){return n>=e&&n<=i};function qt(n){return ot(n,48,57)}function ub(n){return qt(n)||ot(n,65,70)||ot(n,97,102)}function Px(n){return ot(n,65,90)}function Jx(n){return ot(n,97,122)}function Zx(n){return Px(n)||Jx(n)}function Wx(n){return n>=128}function Xo(n){return Zx(n)||Wx(n)||n===95}function fb(n){return Xo(n)||qt(n)||n===45}function e_(n){return ot(n,0,8)||n===11||ot(n,14,31)||n===127}function Yo(n){return n===10}function Wn(n){return Yo(n)||n===9||n===32}const t_=1114111;class sd extends Error{constructor(e){super(e),this.name="InvalidCharacterError"}}function n_(n){const e=[];for(let i=0;i<n.length;i++){let r=n.charCodeAt(i);if(r===13&&n.charCodeAt(i+1)===10&&(r=10,i++),(r===13||r===12)&&(r=10),r===0&&(r=65533),ot(r,55296,56319)&&ot(n.charCodeAt(i+1),56320,57343)){const a=r-55296,o=n.charCodeAt(i+1)-56320;r=Math.pow(2,16)+a*Math.pow(2,10)+o,i++}e.push(r)}return e}function dt(n){if(n<=65535)return String.fromCharCode(n);n-=Math.pow(2,16);const e=Math.floor(n/Math.pow(2,10))+55296,i=n%Math.pow(2,10)+56320;return String.fromCharCode(e)+String.fromCharCode(i)}function w0(n){const e=n_(n);let i=-1;const r=[];let a;const o=function($){return $>=e.length?-1:e[$]},u=function($){if($===void 0&&($=1),$>3)throw"Spec Error: no more than three codepoints of lookahead.";return o(i+$)},f=function($){return $===void 0&&($=1),i+=$,a=o(i),!0},d=function(){return i-=1,!0},g=function($){return $===void 0&&($=a),$===-1},m=function(){if(y(),f(),Wn(a)){for(;Wn(u());)f();return new rc}else{if(a===34)return E();if(a===35)if(fb(u())||A(u(1),u(2))){const $=new R0("");return H(u(1),u(2),u(3))&&($.type="id"),$.value=j(),$}else return new _t(a);else return a===36?u()===61?(f(),new a_):new _t(a):a===39?E():a===40?new O0:a===41?new rd:a===42?u()===61?(f(),new l_):new _t(a):a===43?Q()?(d(),S()):new _t(a):a===44?new C0:a===45?Q()?(d(),S()):u(1)===45&&u(2)===62?(f(2),new E0):V()?(d(),w()):new _t(a):a===46?Q()?(d(),S()):new _t(a):a===58?new T0:a===59?new A0:a===60?u(1)===33&&u(2)===45&&u(3)===45?(f(3),new _0):new _t(a):a===64?H(u(1),u(2),u(3))?new L0(j()):new _t(a):a===91?new M0:a===92?C()?(d(),w()):new _t(a):a===93?new Lh:a===94?u()===61?(f(),new r_):new _t(a):a===123?new N0:a===124?u()===61?(f(),new s_):u()===124?(f(),new j0):new _t(a):a===125?new k0:a===126?u()===61?(f(),new i_):new _t(a):qt(a)?(d(),S()):Xo(a)?(d(),w()):g()?new Qo:new _t(a)}},y=function(){for(;u(1)===47&&u(2)===42;)for(f(2);;)if(f(),a===42&&u()===47){f();break}else if(g())return},S=function(){const $=I();if(H(u(1),u(2),u(3))){const ee=new o_;return ee.value=$.value,ee.repr=$.repr,ee.type=$.type,ee.unit=j(),ee}else if(u()===37){f();const ee=new U0;return ee.value=$.value,ee.repr=$.repr,ee}else{const ee=new z0;return ee.value=$.value,ee.repr=$.repr,ee.type=$.type,ee}},w=function(){const $=j();if($.toLowerCase()==="url"&&u()===40){for(f();Wn(u(1))&&Wn(u(2));)f();return u()===34||u()===39?new Fa($):Wn(u())&&(u(2)===34||u(2)===39)?new Fa($):x()}else return u()===40?(f(),new Fa($)):new ad($)},E=function($){$===void 0&&($=a);let ee="";for(;f();){if(a===$||g())return new ld(ee);if(Yo(a))return d(),new x0;a===92?g(u())||(Yo(u())?f():ee+=dt(_())):ee+=dt(a)}throw new Error("Internal error")},x=function(){const $=new D0("");for(;Wn(u());)f();if(g(u()))return $;for(;f();){if(a===41||g())return $;if(Wn(a)){for(;Wn(u());)f();return u()===41||g(u())?(f(),$):(P(),new Fo)}else{if(a===34||a===39||a===40||e_(a))return P(),new Fo;if(a===92)if(C())$.value+=dt(_());else return P(),new Fo;else $.value+=dt(a)}}throw new Error("Internal error")},_=function(){if(f(),ub(a)){const $=[a];for(let ce=0;ce<5&&ub(u());ce++)f(),$.push(a);Wn(u())&&f();let ee=parseInt($.map(function(ce){return String.fromCharCode(ce)}).join(""),16);return ee>t_&&(ee=65533),ee}else return g()?65533:a},A=function($,ee){return!($!==92||Yo(ee))},C=function(){return A(a,u())},H=function($,ee,ce){return $===45?Xo(ee)||ee===45||A(ee,ce):Xo($)?!0:$===92?A($,ee):!1},V=function(){return H(a,u(1),u(2))},K=function($,ee,ce){return $===43||$===45?!!(qt(ee)||ee===46&&qt(ce)):$===46?!!qt(ee):!!qt($)},Q=function(){return K(a,u(1),u(2))},j=function(){let $="";for(;f();)if(fb(a))$+=dt(a);else if(C())$+=dt(_());else return d(),$;throw new Error("Internal parse error")},I=function(){let $="",ee="integer";for((u()===43||u()===45)&&(f(),$+=dt(a));qt(u());)f(),$+=dt(a);if(u(1)===46&&qt(u(2)))for(f(),$+=dt(a),f(),$+=dt(a),ee="number";qt(u());)f(),$+=dt(a);const ce=u(1),Me=u(2),q=u(3);if((ce===69||ce===101)&&qt(Me))for(f(),$+=dt(a),f(),$+=dt(a),ee="number";qt(u());)f(),$+=dt(a);else if((ce===69||ce===101)&&(Me===43||Me===45)&&qt(q))for(f(),$+=dt(a),f(),$+=dt(a),f(),$+=dt(a),ee="number";qt(u());)f(),$+=dt(a);const Z=O($);return{type:ee,value:Z,repr:$}},O=function($){return+$},P=function(){for(;f();){if(a===41||g())return;C()&&_()}};let J=0;for(;!g(u());)if(r.push(m()),J++,J>e.length*2)throw new Error("I'm infinite-looping!");return r}class tt{constructor(){this.tokenType=""}toJSON(){return{token:this.tokenType}}toString(){return this.tokenType}toSource(){return""+this}}class x0 extends tt{constructor(){super(...arguments),this.tokenType="BADSTRING"}}class Fo extends tt{constructor(){super(...arguments),this.tokenType="BADURL"}}class rc extends tt{constructor(){super(...arguments),this.tokenType="WHITESPACE"}toString(){return"WS"}toSource(){return" "}}class _0 extends tt{constructor(){super(...arguments),this.tokenType="CDO"}toSource(){return"<!--"}}class E0 extends tt{constructor(){super(...arguments),this.tokenType="CDC"}toSource(){return"-->"}}class T0 extends tt{constructor(){super(...arguments),this.tokenType=":"}}class A0 extends tt{constructor(){super(...arguments),this.tokenType=";"}}class C0 extends tt{constructor(){super(...arguments),this.tokenType=","}}class Mr extends tt{constructor(){super(...arguments),this.value="",this.mirror=""}}class N0 extends Mr{constructor(){super(),this.tokenType="{",this.value="{",this.mirror="}"}}class k0 extends Mr{constructor(){super(),this.tokenType="}",this.value="}",this.mirror="{"}}class M0 extends Mr{constructor(){super(),this.tokenType="[",this.value="[",this.mirror="]"}}class Lh extends Mr{constructor(){super(),this.tokenType="]",this.value="]",this.mirror="["}}class O0 extends Mr{constructor(){super(),this.tokenType="(",this.value="(",this.mirror=")"}}class rd extends Mr{constructor(){super(),this.tokenType=")",this.value=")",this.mirror="("}}class i_ extends tt{constructor(){super(...arguments),this.tokenType="~="}}class s_ extends tt{constructor(){super(...arguments),this.tokenType="|="}}class r_ extends tt{constructor(){super(...arguments),this.tokenType="^="}}class a_ extends tt{constructor(){super(...arguments),this.tokenType="$="}}class l_ extends tt{constructor(){super(...arguments),this.tokenType="*="}}class j0 extends tt{constructor(){super(...arguments),this.tokenType="||"}}class Qo extends tt{constructor(){super(...arguments),this.tokenType="EOF"}toSource(){return""}}class _t extends tt{constructor(e){super(),this.tokenType="DELIM",this.value="",this.value=dt(e)}toString(){return"DELIM("+this.value+")"}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e}toSource(){return this.value==="\\"?`\\
`:this.value}}class Or extends tt{constructor(){super(...arguments),this.value=""}ASCIIMatch(e){return this.value.toLowerCase()===e.toLowerCase()}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e}}class ad extends Or{constructor(e){super(),this.tokenType="IDENT",this.value=e}toString(){return"IDENT("+this.value+")"}toSource(){return ul(this.value)}}class Fa extends Or{constructor(e){super(),this.tokenType="FUNCTION",this.value=e,this.mirror=")"}toString(){return"FUNCTION("+this.value+")"}toSource(){return ul(this.value)+"("}}class L0 extends Or{constructor(e){super(),this.tokenType="AT-KEYWORD",this.value=e}toString(){return"AT("+this.value+")"}toSource(){return"@"+ul(this.value)}}class R0 extends Or{constructor(e){super(),this.tokenType="HASH",this.value=e,this.type="unrestricted"}toString(){return"HASH("+this.value+")"}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e.type=this.type,e}toSource(){return this.type==="id"?"#"+ul(this.value):"#"+c_(this.value)}}class ld extends Or{constructor(e){super(),this.tokenType="STRING",this.value=e}toString(){return'"'+H0(this.value)+'"'}}class D0 extends Or{constructor(e){super(),this.tokenType="URL",this.value=e}toString(){return"URL("+this.value+")"}toSource(){return'url("'+H0(this.value)+'")'}}class z0 extends tt{constructor(){super(),this.tokenType="NUMBER",this.type="integer",this.repr=""}toString(){return this.type==="integer"?"INT("+this.value+")":"NUMBER("+this.value+")"}toJSON(){const e=super.toJSON();return e.value=this.value,e.type=this.type,e.repr=this.repr,e}toSource(){return this.repr}}class U0 extends tt{constructor(){super(),this.tokenType="PERCENTAGE",this.repr=""}toString(){return"PERCENTAGE("+this.value+")"}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e.repr=this.repr,e}toSource(){return this.repr+"%"}}class o_ extends tt{constructor(){super(),this.tokenType="DIMENSION",this.type="integer",this.repr="",this.unit=""}toString(){return"DIM("+this.value+","+this.unit+")"}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e.type=this.type,e.repr=this.repr,e.unit=this.unit,e}toSource(){const e=this.repr;let i=ul(this.unit);return i[0].toLowerCase()==="e"&&(i[1]==="-"||ot(i.charCodeAt(1),48,57))&&(i="\\65 "+i.slice(1,i.length)),e+i}}function ul(n){n=""+n;let e="";const i=n.charCodeAt(0);for(let r=0;r<n.length;r++){const a=n.charCodeAt(r);if(a===0)throw new sd("Invalid character: the input contains U+0000.");ot(a,1,31)||a===127||r===0&&ot(a,48,57)||r===1&&ot(a,48,57)&&i===45?e+="\\"+a.toString(16)+" ":a>=128||a===45||a===95||ot(a,48,57)||ot(a,65,90)||ot(a,97,122)?e+=n[r]:e+="\\"+n[r]}return e}function c_(n){n=""+n;let e="";for(let i=0;i<n.length;i++){const r=n.charCodeAt(i);if(r===0)throw new sd("Invalid character: the input contains U+0000.");r>=128||r===45||r===95||ot(r,48,57)||ot(r,65,90)||ot(r,97,122)?e+=n[i]:e+="\\"+r.toString(16)+" "}return e}function H0(n){n=""+n;let e="";for(let i=0;i<n.length;i++){const r=n.charCodeAt(i);if(r===0)throw new sd("Invalid character: the input contains U+0000.");ot(r,1,31)||r===127?e+="\\"+r.toString(16)+" ":r===34||r===92?e+="\\"+n[i]:e+=n[i]}return e}class $t extends Error{}function u_(n,e){let i;try{i=w0(n),i[i.length-1]instanceof Qo||i.push(new Qo)}catch(O){const P=O.message+` while parsing css selector "${n}". Did you mean to CSS.escape it?`,J=(O.stack||"").indexOf(O.message);throw J!==-1&&(O.stack=O.stack.substring(0,J)+P+O.stack.substring(J+O.message.length)),O.message=P,O}const r=i.find(O=>O instanceof L0||O instanceof x0||O instanceof Fo||O instanceof j0||O instanceof _0||O instanceof E0||O instanceof A0||O instanceof N0||O instanceof k0||O instanceof D0||O instanceof U0);if(r)throw new $t(`Unsupported token "${r.toSource()}" while parsing css selector "${n}". Did you mean to CSS.escape it?`);let a=0;const o=new Set;function u(){return new $t(`Unexpected token "${i[a].toSource()}" while parsing css selector "${n}". Did you mean to CSS.escape it?`)}function f(){for(;i[a]instanceof rc;)a++}function d(O=a){return i[O]instanceof ad}function g(O=a){return i[O]instanceof ld}function m(O=a){return i[O]instanceof z0}function y(O=a){return i[O]instanceof C0}function S(O=a){return i[O]instanceof O0}function w(O=a){return i[O]instanceof rd}function E(O=a){return i[O]instanceof Fa}function x(O=a){return i[O]instanceof _t&&i[O].value==="*"}function _(O=a){return i[O]instanceof Qo}function A(O=a){return i[O]instanceof _t&&[">","+","~"].includes(i[O].value)}function C(O=a){return y(O)||w(O)||_(O)||A(O)||i[O]instanceof rc}function H(){const O=[V()];for(;f(),!!y();)a++,O.push(V());return O}function V(){return f(),m()||g()?i[a++].value:K()}function K(){const O={simples:[]};for(f(),A()?O.simples.push({selector:{functions:[{name:"scope",args:[]}]},combinator:""}):O.simples.push({selector:Q(),combinator:""});;){if(f(),A())O.simples[O.simples.length-1].combinator=i[a++].value,f();else if(C())break;O.simples.push({combinator:"",selector:Q()})}return O}function Q(){let O="";const P=[];for(;!C();)if(d()||x())O+=i[a++].toSource();else if(i[a]instanceof R0)O+=i[a++].toSource();else if(i[a]instanceof _t&&i[a].value===".")if(a++,d())O+="."+i[a++].toSource();else throw u();else if(i[a]instanceof T0)if(a++,d())if(!e.has(i[a].value.toLowerCase()))O+=":"+i[a++].toSource();else{const J=i[a++].value.toLowerCase();P.push({name:J,args:[]}),o.add(J)}else if(E()){const J=i[a++].value.toLowerCase();if(e.has(J)?(P.push({name:J,args:H()}),o.add(J)):O+=`:${J}(${j()})`,f(),!w())throw u();a++}else throw u();else if(i[a]instanceof M0){for(O+="[",a++;!(i[a]instanceof Lh)&&!_();)O+=i[a++].toSource();if(!(i[a]instanceof Lh))throw u();O+="]",a++}else throw u();if(!O&&!P.length)throw u();return{css:O||void 0,functions:P}}function j(){let O="",P=1;for(;!_()&&((S()||E())&&P++,w()&&P--,!!P);)O+=i[a++].toSource();return O}const I=H();if(!_())throw u();if(I.some(O=>typeof O!="object"||!("simples"in O)))throw new $t(`Error while parsing css selector "${n}". Did you mean to CSS.escape it?`);return{selector:I,names:Array.from(o)}}const Rh=new Set(["internal:has","internal:has-not","internal:and","internal:or","internal:chain","left-of","right-of","above","below","near"]),f_=new Set(["left-of","right-of","above","below","near"]),B0=new Set(["not","is","where","has","scope","light","visible","text","text-matches","text-is","has-text","above","below","right-of","left-of","near","nth-match"]);function fl(n){const e=p_(n),i=[];for(const r of e.parts){if(r.name==="css"||r.name==="css:light"){r.name==="css:light"&&(r.body=":light("+r.body+")");const a=u_(r.body,B0);i.push({name:"css",body:a.selector,source:r.body});continue}if(Rh.has(r.name)){let a,o;try{const g=JSON.parse("["+r.body+"]");if(!Array.isArray(g)||g.length<1||g.length>2||typeof g[0]!="string")throw new $t(`Malformed selector: ${r.name}=`+r.body);if(a=g[0],g.length===2){if(typeof g[1]!="number"||!f_.has(r.name))throw new $t(`Malformed selector: ${r.name}=`+r.body);o=g[1]}}catch{throw new $t(`Malformed selector: ${r.name}=`+r.body)}const u={name:r.name,source:r.body,body:{parsed:fl(a),distance:o}},f=[...u.body.parsed.parts].reverse().find(g=>g.name==="internal:control"&&g.body==="enter-frame"),d=f?u.body.parsed.parts.indexOf(f):-1;d!==-1&&h_(u.body.parsed.parts.slice(0,d+1),i.slice(0,d+1))&&u.body.parsed.parts.splice(0,d+1),i.push(u);continue}i.push({...r,source:r.body})}if(Rh.has(i[0].name))throw new $t(`"${i[0].name}" selector cannot be first`);return{capture:e.capture,parts:i}}function h_(n,e){return It({parts:n})===It({parts:e})}function It(n,e){return typeof n=="string"?n:n.parts.map((i,r)=>{let a=!0;!e&&r!==n.capture&&(i.name==="css"||i.name==="xpath"&&i.source.startsWith("//")||i.source.startsWith(".."))&&(a=!1);const o=a?i.name+"=":"";return`${r===n.capture?"*":""}${o}${i.source}`}).join(" >> ")}function d_(n,e){const i=(r,a)=>{for(const o of r.parts)e(o,a),Rh.has(o.name)&&i(o.body.parsed,!0)};i(n,!1)}function p_(n){let e=0,i,r=0;const a={parts:[]},o=()=>{const f=n.substring(r,e).trim(),d=f.indexOf("=");let g,m;d!==-1&&f.substring(0,d).trim().match(/^[a-zA-Z_0-9-+:*]+$/)?(g=f.substring(0,d).trim(),m=f.substring(d+1)):f.length>1&&f[0]==='"'&&f[f.length-1]==='"'||f.length>1&&f[0]==="'"&&f[f.length-1]==="'"?(g="text",m=f):/^\(*\/\//.test(f)||f.startsWith("..")?(g="xpath",m=f):(g="css",m=f);let y=!1;if(g[0]==="*"&&(y=!0,g=g.substring(1)),a.parts.push({name:g,body:m}),y){if(a.capture!==void 0)throw new $t("Only one of the selectors can capture using * modifier");a.capture=a.parts.length-1}};if(!n.includes(">>"))return e=n.length,o(),a;const u=()=>{const d=n.substring(r,e).match(/^\s*text\s*=(.*)$/);return!!d&&!!d[1]};for(;e<n.length;){const f=n[e];f==="\\"&&e+1<n.length?e+=2:f===i?(i=void 0,e++):!i&&(f==='"'||f==="'"||f==="`")&&!u()?(i=f,e++):!i&&f===">"&&n[e+1]===">"?(o(),e+=2,r=e):e++}return o(),a}function Er(n,e){let i=0,r=n.length===0;const a=()=>n[i]||"",o=()=>{const _=a();return++i,r=i>=n.length,_},u=_=>{throw r?new $t(`Unexpected end of selector while parsing selector \`${n}\``):new $t(`Error while parsing selector \`${n}\` - unexpected symbol "${a()}" at position ${i}`+(_?" during "+_:""))};function f(){for(;!r&&/\s/.test(a());)o()}function d(_){return _>="€"||_>="0"&&_<="9"||_>="A"&&_<="Z"||_>="a"&&_<="z"||_>="0"&&_<="9"||_==="_"||_==="-"}function g(){let _="";for(f();!r&&d(a());)_+=o();return _}function m(_){let A=o();for(A!==_&&u("parsing quoted string");!r&&a()!==_;)a()==="\\"&&o(),A+=o();return a()!==_&&u("parsing quoted string"),A+=o(),A}function y(){o()!=="/"&&u("parsing regular expression");let _="",A=!1;for(;!r;){if(a()==="\\")_+=o(),r&&u("parsing regular expression");else if(A&&a()==="]")A=!1;else if(!A&&a()==="[")A=!0;else if(!A&&a()==="/")break;_+=o()}o()!=="/"&&u("parsing regular expression");let C="";for(;!r&&a().match(/[dgimsuy]/);)C+=o();try{return new RegExp(_,C)}catch(H){throw new $t(`Error while parsing selector \`${n}\`: ${H.message}`)}}function S(){let _="";return f(),a()==="'"||a()==='"'?_=m(a()).slice(1,-1):_=g(),_||u("parsing property path"),_}function w(){f();let _="";return r||(_+=o()),!r&&_!=="="&&(_+=o()),["=","*=","^=","$=","|=","~="].includes(_)||u("parsing operator"),_}function E(){o();const _=[];for(_.push(S()),f();a()===".";)o(),_.push(S()),f();if(a()==="]")return o(),{name:_.join("."),jsonPath:_,op:"<truthy>",value:null,caseSensitive:!1};const A=w();let C,H=!0;if(f(),a()==="/"){if(A!=="=")throw new $t(`Error while parsing selector \`${n}\` - cannot use ${A} in attribute with regular expression`);C=y()}else if(a()==="'"||a()==='"')C=m(a()).slice(1,-1),f(),a()==="i"||a()==="I"?(H=!1,o()):(a()==="s"||a()==="S")&&(H=!0,o());else{for(C="";!r&&(d(a())||a()==="+"||a()===".");)C+=o();C==="true"?C=!0:C==="false"&&(C=!1)}if(f(),a()!=="]"&&u("parsing attribute value"),o(),A!=="="&&typeof C!="string")throw new $t(`Error while parsing selector \`${n}\` - cannot use ${A} in attribute with non-string matching value - ${C}`);return{name:_.join("."),jsonPath:_,op:A,value:C,caseSensitive:H}}const x={name:"",attributes:[]};for(x.name=g(),f();a()==="[";)x.attributes.push(E()),f();if(r||u(void 0),!x.name&&!x.attributes.length)throw new $t(`Error while parsing selector \`${n}\` - selector cannot be empty`);return x}function vc(n,e="'"){const i=JSON.stringify(n),r=i.substring(1,i.length-1).replace(/\\"/g,'"');if(e==="'")return e+r.replace(/[']/g,"\\'")+e;if(e==='"')return e+r.replace(/["]/g,'\\"')+e;if(e==="`")return e+r.replace(/[`]/g,"\\`")+e;throw new Error("Invalid escape char")}function ac(n){return n.charAt(0).toUpperCase()+n.substring(1)}function q0(n){return n.replace(/([a-z0-9])([A-Z])/g,"$1_$2").replace(/([A-Z])([A-Z][a-z])/g,"$1_$2").toLowerCase()}function gr(n){return`"${n.replace(/["\\]/g,e=>"\\"+e)}"`}let ss;function g_(){ss=new Map}function pt(n){let e=ss==null?void 0:ss.get(n);return e===void 0&&(e=n.replace(/[\u200b\u00ad]/g,"").trim().replace(/\s+/g," "),ss==null||ss.set(n,e)),e}function Sc(n){return n.replace(/(^|[^\\])(\\\\)*\\(['"`])/g,"$1$2$3")}function $0(n){return n.unicode||n.unicodeSets?String(n):String(n).replace(/(^|[^\\])(\\\\)*(["'`])/g,"$1$2\\$3").replace(/>>/g,"\\>\\>")}function Vt(n,e){return typeof n!="string"?$0(n):`${JSON.stringify(n)}${e?"s":"i"}`}function Ze(n,e){return typeof n!="string"?$0(n):`"${n.replace(/\\/g,"\\\\").replace(/["]/g,'\\"')}"${e?"s":"i"}`}function m_(n,e,i=""){if(n.length<=e)return n;const r=[...n];return r.length>e?r.slice(0,e-i.length).join("")+i:r.join("")}function hb(n,e){return m_(n,e,"…")}function lc(n){return n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function y_(n,e){const i=n.length,r=e.length;let a=0,o=0;const u=Array(i+1).fill(null).map(()=>Array(r+1).fill(0));for(let f=1;f<=i;f++)for(let d=1;d<=r;d++)n[f-1]===e[d-1]&&(u[f][d]=u[f-1][d-1]+1,u[f][d]>a&&(a=u[f][d],o=f));return n.slice(o-a,o)}function I0(n,e){try{const i=fl(e),r=b_(i);return r||os(new G0[n],i,!1,1)[0]}catch{return e}}function b_(n){const e=n.parts[n.parts.length-1];if((e==null?void 0:e.name)==="internal:describe"){const i=JSON.parse(e.body);if(typeof i=="string")return i}}function Ri(n,e,i=!1){return V0(n,e,i,1)[0]}function V0(n,e,i=!1,r=20,a){try{return os(new G0[n](a),fl(e),i,r)}catch{return[e]}}function os(n,e,i=!1,r=20){const a=[...e.parts],o=[];let u=i?"frame-locator":"page";for(let f=0;f<a.length;f++){const d=a[f],g=u;if(u="locator",d.name==="internal:describe")continue;if(d.name==="nth"){d.body==="0"?o.push([n.generateLocator(g,"first",""),n.generateLocator(g,"nth","0")]):d.body==="-1"?o.push([n.generateLocator(g,"last",""),n.generateLocator(g,"nth","-1")]):o.push([n.generateLocator(g,"nth",d.body)]);continue}if(d.name==="visible"){o.push([n.generateLocator(g,"visible",d.body),n.generateLocator(g,"default",`visible=${d.body}`)]);continue}if(d.name==="internal:text"){const{exact:E,text:x}=Ra(d.body);o.push([n.generateLocator(g,"text",x,{exact:E})]);continue}if(d.name==="internal:has-text"){const{exact:E,text:x}=Ra(d.body);if(!E){o.push([n.generateLocator(g,"has-text",x,{exact:E})]);continue}}if(d.name==="internal:has-not-text"){const{exact:E,text:x}=Ra(d.body);if(!E){o.push([n.generateLocator(g,"has-not-text",x,{exact:E})]);continue}}if(d.name==="internal:has"){const E=os(n,d.body.parsed,!1,r);o.push(E.map(x=>n.generateLocator(g,"has",x)));continue}if(d.name==="internal:has-not"){const E=os(n,d.body.parsed,!1,r);o.push(E.map(x=>n.generateLocator(g,"hasNot",x)));continue}if(d.name==="internal:and"){const E=os(n,d.body.parsed,!1,r);o.push(E.map(x=>n.generateLocator(g,"and",x)));continue}if(d.name==="internal:or"){const E=os(n,d.body.parsed,!1,r);o.push(E.map(x=>n.generateLocator(g,"or",x)));continue}if(d.name==="internal:chain"){const E=os(n,d.body.parsed,!1,r);o.push(E.map(x=>n.generateLocator(g,"chain",x)));continue}if(d.name==="internal:label"){const{exact:E,text:x}=Ra(d.body);o.push([n.generateLocator(g,"label",x,{exact:E})]);continue}if(d.name==="internal:role"){const E=Er(d.body),x={attrs:[]};for(const _ of E.attributes)if(_.name==="name"){if(x.exact!==void 0&&x.exact!==_.caseSensitive)throw new Error(`Conflicting exactness in internal:role selector: ${It({parts:[d]})}`);x.exact=_.caseSensitive,x.name=_.value}else if(_.name==="description"){if(x.exact!==void 0&&x.exact!==_.caseSensitive)throw new Error(`Conflicting exactness in internal:role selector: ${It({parts:[d]})}`);x.exact=_.caseSensitive,x.description=_.value}else _.name==="level"&&typeof _.value=="string"&&(_.value=+_.value),x.attrs.push({name:_.name==="include-hidden"?"includeHidden":_.name,value:_.value});o.push([n.generateLocator(g,"role",E.name,x)]);continue}if(d.name==="internal:testid"){const E=Er(d.body),{value:x}=E.attributes[0];o.push([n.generateLocator(g,"test-id",x)]);continue}if(d.name==="internal:attr"){const E=Er(d.body),{name:x,value:_,caseSensitive:A}=E.attributes[0],C=_,H=!!A;if(x==="placeholder"){o.push([n.generateLocator(g,"placeholder",C,{exact:H})]);continue}if(x==="alt"){o.push([n.generateLocator(g,"alt",C,{exact:H})]);continue}if(x==="title"){o.push([n.generateLocator(g,"title",C,{exact:H})]);continue}}if(d.name==="internal:control"&&d.body==="enter-frame"){const E=o[o.length-1],x=a[f-1],_=E.map(A=>n.chainLocators([A,n.generateLocator(g,"frame","")]));["xpath","css"].includes(x.name)&&_.push(n.generateLocator(g,"frame-locator",It({parts:[x]})),n.generateLocator(g,"frame-locator",It({parts:[x]},!0))),E.splice(0,E.length,..._),u="frame-locator";continue}const m=a[f+1],y=It({parts:[d]}),S=n.generateLocator(g,"default",y);if(m&&["internal:has-text","internal:has-not-text"].includes(m.name)){const{exact:E,text:x}=Ra(m.body);if(!E){const _=n.generateLocator("locator",m.name==="internal:has-text"?"has-text":"has-not-text",x,{exact:E}),A={};m.name==="internal:has-text"?A.hasText=x:A.hasNotText=x;const C=n.generateLocator(g,"default",y,A);o.push([n.chainLocators([S,_]),C]),f++;continue}}let w;if(["xpath","css"].includes(d.name)){const E=It({parts:[d]},!0);w=n.generateLocator(g,"default",E)}o.push([S,w].filter(Boolean))}return v_(n,o,r)}function v_(n,e,i){const r=e.map(()=>""),a=[],o=u=>{if(u===e.length)return a.push(n.chainLocators(r)),a.length<i;for(const f of e[u])if(r[u]=f,!o(u+1))return!1;return!0};return o(0),a}function Ra(n){let e=!1;const i=n.match(/^\/(.*)\/([igm]*)$/);return i?{text:new RegExp(i[1],i[2])}:(n.endsWith('"')?(n=JSON.parse(n),e=!0):n.endsWith('"s')?(n=JSON.parse(n.substring(0,n.length-1)),e=!0):n.endsWith('"i')&&(n=JSON.parse(n.substring(0,n.length-1)),e=!1),{exact:e,text:n})}class S_{constructor(e){this.preferredQuote=e}generateLocator(e,i,r,a={}){switch(i){case"default":return a.hasText!==void 0?`locator(${this.quote(r)}, { hasText: ${this.toHasText(a.hasText)} })`:a.hasNotText!==void 0?`locator(${this.quote(r)}, { hasNotText: ${this.toHasText(a.hasNotText)} })`:`locator(${this.quote(r)})`;case"frame-locator":return`frameLocator(${this.quote(r)})`;case"frame":return"contentFrame()";case"nth":return`nth(${r})`;case"first":return"first()";case"last":return"last()";case"visible":return`filter({ visible: ${r==="true"?"true":"false"} })`;case"role":const o=[];We(a.name)?o.push(`name: ${this.regexToSourceString(a.name)}`):typeof a.name=="string"&&o.push(`name: ${this.quote(a.name)}`),We(a.description)?o.push(`description: ${this.regexToSourceString(a.description)}`):typeof a.description=="string"&&o.push(`description: ${this.quote(a.description)}`),a.exact&&(typeof a.name=="string"||typeof a.description=="string")&&o.push("exact: true");for(const{name:f,value:d}of a.attrs)o.push(`${f}: ${typeof d=="string"?this.quote(d):d}`);const u=o.length?`, { ${o.join(", ")} }`:"";return`getByRole(${this.quote(r)}${u})`;case"has-text":return`filter({ hasText: ${this.toHasText(r)} })`;case"has-not-text":return`filter({ hasNotText: ${this.toHasText(r)} })`;case"has":return`filter({ has: ${r} })`;case"hasNot":return`filter({ hasNot: ${r} })`;case"and":return`and(${r})`;case"or":return`or(${r})`;case"chain":return`locator(${r})`;case"test-id":return`getByTestId(${this.toTestIdValue(r)})`;case"text":return this.toCallWithExact("getByText",r,!!a.exact);case"alt":return this.toCallWithExact("getByAltText",r,!!a.exact);case"placeholder":return this.toCallWithExact("getByPlaceholder",r,!!a.exact);case"label":return this.toCallWithExact("getByLabel",r,!!a.exact);case"title":return this.toCallWithExact("getByTitle",r,!!a.exact);default:throw new Error("Unknown selector kind "+i)}}chainLocators(e){return e.join(".")}regexToSourceString(e){return Sc(String(e))}toCallWithExact(e,i,r){return We(i)?`${e}(${this.regexToSourceString(i)})`:r?`${e}(${this.quote(i)}, { exact: true })`:`${e}(${this.quote(i)})`}toHasText(e){return We(e)?this.regexToSourceString(e):this.quote(e)}toTestIdValue(e){return We(e)?this.regexToSourceString(e):this.quote(e)}quote(e){return vc(e,this.preferredQuote??"'")}}class w_{generateLocator(e,i,r,a={}){switch(i){case"default":return a.hasText!==void 0?`locator(${this.quote(r)}, has_text=${this.toHasText(a.hasText)})`:a.hasNotText!==void 0?`locator(${this.quote(r)}, has_not_text=${this.toHasText(a.hasNotText)})`:`locator(${this.quote(r)})`;case"frame-locator":return`frame_locator(${this.quote(r)})`;case"frame":return"content_frame";case"nth":return`nth(${r})`;case"first":return"first";case"last":return"last";case"visible":return`filter(visible=${r==="true"?"True":"False"})`;case"role":const o=[];We(a.name)?o.push(`name=${this.regexToString(a.name)}`):typeof a.name=="string"&&o.push(`name=${this.quote(a.name)}`),We(a.description)?o.push(`description=${this.regexToString(a.description)}`):typeof a.description=="string"&&o.push(`description=${this.quote(a.description)}`),a.exact&&(typeof a.name=="string"||typeof a.description=="string")&&o.push("exact=True");for(const{name:f,value:d}of a.attrs){let g=typeof d=="string"?this.quote(d):d;typeof d=="boolean"&&(g=d?"True":"False"),o.push(`${q0(f)}=${g}`)}const u=o.length?`, ${o.join(", ")}`:"";return`get_by_role(${this.quote(r)}${u})`;case"has-text":return`filter(has_text=${this.toHasText(r)})`;case"has-not-text":return`filter(has_not_text=${this.toHasText(r)})`;case"has":return`filter(has=${r})`;case"hasNot":return`filter(has_not=${r})`;case"and":return`and_(${r})`;case"or":return`or_(${r})`;case"chain":return`locator(${r})`;case"test-id":return`get_by_test_id(${this.toTestIdValue(r)})`;case"text":return this.toCallWithExact("get_by_text",r,!!a.exact);case"alt":return this.toCallWithExact("get_by_alt_text",r,!!a.exact);case"placeholder":return this.toCallWithExact("get_by_placeholder",r,!!a.exact);case"label":return this.toCallWithExact("get_by_label",r,!!a.exact);case"title":return this.toCallWithExact("get_by_title",r,!!a.exact);default:throw new Error("Unknown selector kind "+i)}}chainLocators(e){return e.join(".")}regexToString(e){const i=e.flags.includes("i")?", re.IGNORECASE":"";return`re.compile(r"${Sc(e.source).replace(/\\\//,"/").replace(/"/g,'\\"')}"${i})`}toCallWithExact(e,i,r){return We(i)?`${e}(${this.regexToString(i)})`:r?`${e}(${this.quote(i)}, exact=True)`:`${e}(${this.quote(i)})`}toHasText(e){return We(e)?this.regexToString(e):`${this.quote(e)}`}toTestIdValue(e){return We(e)?this.regexToString(e):this.quote(e)}quote(e){return vc(e,'"')}}class x_{generateLocator(e,i,r,a={}){let o;switch(e){case"page":o="Page";break;case"frame-locator":o="FrameLocator";break;case"locator":o="Locator";break}switch(i){case"default":return a.hasText!==void 0?`locator(${this.quote(r)}, new ${o}.LocatorOptions().setHasText(${this.toHasText(a.hasText)}))`:a.hasNotText!==void 0?`locator(${this.quote(r)}, new ${o}.LocatorOptions().setHasNotText(${this.toHasText(a.hasNotText)}))`:`locator(${this.quote(r)})`;case"frame-locator":return`frameLocator(${this.quote(r)})`;case"frame":return"contentFrame()";case"nth":return`nth(${r})`;case"first":return"first()";case"last":return"last()";case"visible":return`filter(new ${o}.FilterOptions().setVisible(${r==="true"?"true":"false"}))`;case"role":const u=[];We(a.name)?u.push(`.setName(${this.regexToString(a.name)})`):typeof a.name=="string"&&u.push(`.setName(${this.quote(a.name)})`),We(a.description)?u.push(`.setDescription(${this.regexToString(a.description)})`):typeof a.description=="string"&&u.push(`.setDescription(${this.quote(a.description)})`),a.exact&&(typeof a.name=="string"||typeof a.description=="string")&&u.push(".setExact(true)");for(const{name:d,value:g}of a.attrs)u.push(`.set${ac(d)}(${typeof g=="string"?this.quote(g):g})`);const f=u.length?`, new ${o}.GetByRoleOptions()${u.join("")}`:"";return`getByRole(AriaRole.${q0(r).toUpperCase()}${f})`;case"has-text":return`filter(new ${o}.FilterOptions().setHasText(${this.toHasText(r)}))`;case"has-not-text":return`filter(new ${o}.FilterOptions().setHasNotText(${this.toHasText(r)}))`;case"has":return`filter(new ${o}.FilterOptions().setHas(${r}))`;case"hasNot":return`filter(new ${o}.FilterOptions().setHasNot(${r}))`;case"and":return`and(${r})`;case"or":return`or(${r})`;case"chain":return`locator(${r})`;case"test-id":return`getByTestId(${this.toTestIdValue(r)})`;case"text":return this.toCallWithExact(o,"getByText",r,!!a.exact);case"alt":return this.toCallWithExact(o,"getByAltText",r,!!a.exact);case"placeholder":return this.toCallWithExact(o,"getByPlaceholder",r,!!a.exact);case"label":return this.toCallWithExact(o,"getByLabel",r,!!a.exact);case"title":return this.toCallWithExact(o,"getByTitle",r,!!a.exact);default:throw new Error("Unknown selector kind "+i)}}chainLocators(e){return e.join(".")}regexToString(e){const i=e.flags.includes("i")?", Pattern.CASE_INSENSITIVE":"";return`Pattern.compile(${this.quote(Sc(e.source))}${i})`}toCallWithExact(e,i,r,a){return We(r)?`${i}(${this.regexToString(r)})`:a?`${i}(${this.quote(r)}, new ${e}.${ac(i)}Options().setExact(true))`:`${i}(${this.quote(r)})`}toHasText(e){return We(e)?this.regexToString(e):this.quote(e)}toTestIdValue(e){return We(e)?this.regexToString(e):this.quote(e)}quote(e){return vc(e,'"')}}class __{generateLocator(e,i,r,a={}){switch(i){case"default":return a.hasText!==void 0?`Locator(${this.quote(r)}, new() { ${this.toHasText(a.hasText)} })`:a.hasNotText!==void 0?`Locator(${this.quote(r)}, new() { ${this.toHasNotText(a.hasNotText)} })`:`Locator(${this.quote(r)})`;case"frame-locator":return`FrameLocator(${this.quote(r)})`;case"frame":return"ContentFrame";case"nth":return`Nth(${r})`;case"first":return"First";case"last":return"Last";case"visible":return`Filter(new() { Visible = ${r==="true"?"true":"false"} })`;case"role":const o=[];We(a.name)?o.push(`NameRegex = ${this.regexToString(a.name)}`):typeof a.name=="string"&&o.push(`Name = ${this.quote(a.name)}`),We(a.description)?o.push(`DescriptionRegex = ${this.regexToString(a.description)}`):typeof a.description=="string"&&o.push(`Description = ${this.quote(a.description)}`),a.exact&&(typeof a.name=="string"||typeof a.description=="string")&&o.push("Exact = true");for(const{name:f,value:d}of a.attrs)o.push(`${ac(f)} = ${typeof d=="string"?this.quote(d):d}`);const u=o.length?`, new() { ${o.join(", ")} }`:"";return`GetByRole(AriaRole.${ac(r)}${u})`;case"has-text":return`Filter(new() { ${this.toHasText(r)} })`;case"has-not-text":return`Filter(new() { ${this.toHasNotText(r)} })`;case"has":return`Filter(new() { Has = ${r} })`;case"hasNot":return`Filter(new() { HasNot = ${r} })`;case"and":return`And(${r})`;case"or":return`Or(${r})`;case"chain":return`Locator(${r})`;case"test-id":return`GetByTestId(${this.toTestIdValue(r)})`;case"text":return this.toCallWithExact("GetByText",r,!!a.exact);case"alt":return this.toCallWithExact("GetByAltText",r,!!a.exact);case"placeholder":return this.toCallWithExact("GetByPlaceholder",r,!!a.exact);case"label":return this.toCallWithExact("GetByLabel",r,!!a.exact);case"title":return this.toCallWithExact("GetByTitle",r,!!a.exact);default:throw new Error("Unknown selector kind "+i)}}chainLocators(e){return e.join(".")}regexToString(e){const i=e.flags.includes("i")?", RegexOptions.IgnoreCase":"";return`new Regex(${this.quote(Sc(e.source))}${i})`}toCallWithExact(e,i,r){return We(i)?`${e}(${this.regexToString(i)})`:r?`${e}(${this.quote(i)}, new() { Exact = true })`:`${e}(${this.quote(i)})`}toHasText(e){return We(e)?`HasTextRegex = ${this.regexToString(e)}`:`HasText = ${this.quote(e)}`}toTestIdValue(e){return We(e)?this.regexToString(e):this.quote(e)}toHasNotText(e){return We(e)?`HasNotTextRegex = ${this.regexToString(e)}`:`HasNotText = ${this.quote(e)}`}quote(e){return vc(e,'"')}}class E_{generateLocator(e,i,r,a={}){return JSON.stringify({kind:i,body:r,options:a})}chainLocators(e){const i=e.map(r=>JSON.parse(r));for(let r=0;r<i.length-1;++r)i[r].next=i[r+1];return JSON.stringify(i[0])}}const G0={javascript:S_,python:w_,java:x_,csharp:__,jsonl:E_};function We(n){return n instanceof RegExp}const db=new Map;function T_({name:n,rootItem:e,render:i,title:r,icon:a,isError:o,isVisible:u,selectedItem:f,onAccepted:d,onSelected:g,onHighlighted:m,treeState:y,setTreeState:S,noItemsMessage:w,dataTestId:E,autoExpandDepth:x,revealSelectedKey:_}){const A=R.useMemo(()=>A_(e,f,y.expandedItems,x||0,u),[e,f,y,x,u]),C=R.useRef(null),[H,V]=R.useState();R.useEffect(()=>{m==null||m(H)},[m,H]),R.useEffect(()=>{const j=C.current;if(!j)return;const I=()=>{db.set(n,j.scrollTop)};return j.addEventListener("scroll",I,{passive:!0}),()=>j.removeEventListener("scroll",I)},[n]),R.useEffect(()=>{C.current&&(C.current.scrollTop=db.get(n)||0)},[n]),R.useEffect(()=>{var I;if(_===void 0)return;const j=(I=C.current)==null?void 0:I.querySelector('[aria-selected="true"]');j&&td(j)},[_]);const K=R.useCallback(j=>{const{expanded:I}=A.get(j);if(I){for(let O=f;O;O=O.parent)if(O===j){g==null||g(j);break}y.expandedItems.set(j.id,!1)}else y.expandedItems.set(j.id,!0);S({...y})},[A,f,g,y,S]),Q=R.useCallback(j=>{const{expanded:I}=A.get(j),O=[j];for(;O.length;){const P=O.pop();O.push(...P.children),y.expandedItems.set(P.id,!I)}S({...y})},[A,y,S]);return b.jsx("div",{className:ut("tree-view vbox",n+"-tree-view"),"data-testid":E||n+"-tree",children:b.jsxs("div",{className:ut("tree-view-content"),role:A.size>0?"tree":void 0,tabIndex:0,onKeyDown:j=>{if(f&&j.key==="Enter"){d==null||d(f);return}if(j.key!=="ArrowDown"&&j.key!=="ArrowUp"&&j.key!=="ArrowLeft"&&j.key!=="ArrowRight")return;if(j.stopPropagation(),j.preventDefault(),f&&j.key==="ArrowLeft"){const{expanded:O,parent:P}=A.get(f);O?(y.expandedItems.set(f.id,!1),S({...y})):P&&(g==null||g(P));return}if(f&&j.key==="ArrowRight"){f.children.length&&(y.expandedItems.set(f.id,!0),S({...y}));return}let I=f;if(j.key==="ArrowDown"&&(f?I=A.get(f).next:A.size&&(I=[...A.keys()][0])),j.key==="ArrowUp"){if(f)I=A.get(f).prev;else if(A.size){const O=[...A.keys()];I=O[O.length-1]}}m==null||m(void 0),I&&(g==null||g(I)),V(void 0)},ref:C,children:[w&&A.size===0&&b.jsx("div",{className:"tree-view-empty",children:w}),e.children.map(j=>A.get(j)&&b.jsx(K0,{item:j,treeItems:A,selectedItem:f,onSelected:g,onAccepted:d,isError:o,toggleExpanded:K,toggleSubtree:Q,highlightedItem:H,setHighlightedItem:V,render:i,icon:a,title:r},j.id))]})})}function K0({item:n,treeItems:e,selectedItem:i,onSelected:r,highlightedItem:a,setHighlightedItem:o,isError:u,onAccepted:f,toggleExpanded:d,toggleSubtree:g,render:m,title:y,icon:S}){const w=R.useId(),E=R.useRef(null);R.useEffect(()=>{(i==null?void 0:i.id)===n.id&&E.current&&td(E.current)},[n.id,i==null?void 0:i.id]);const x=e.get(n),_=x.depth,A=x.expanded;let C="codicon-blank";typeof A=="boolean"&&(C=A?"codicon-chevron-down":"codicon-chevron-right");const H=m(n),V=A&&n.children.length?n.children:[],K=y==null?void 0:y(n),Q=(S==null?void 0:S(n))||"codicon-blank";return b.jsxs("div",{ref:E,role:"treeitem","aria-selected":n===i,"aria-expanded":A,"aria-controls":w,title:K,className:"vbox",style:{flex:"none"},children:[b.jsxs("div",{onDoubleClick:()=>f==null?void 0:f(n),className:ut("tree-view-entry",i===n&&"selected",a===n&&"highlighted",(u==null?void 0:u(n))&&"error"),onClick:()=>r==null?void 0:r(n),onMouseEnter:()=>o(n),onMouseLeave:()=>o(void 0),children:[_?new Array(_).fill(0).map((j,I)=>b.jsx("div",{className:"tree-view-indent"},"indent-"+I)):void 0,b.jsx("div",{"aria-hidden":"true",className:"codicon "+C,style:{minWidth:16,marginRight:4},onDoubleClick:j=>{j.preventDefault(),j.stopPropagation()},onClick:j=>{j.stopPropagation(),j.preventDefault(),j.altKey?g(n):d(n)}}),S&&b.jsx("div",{className:"codicon "+Q,style:{minWidth:16,marginRight:4},"aria-label":"["+Q.replace("codicon","icon")+"]"}),typeof H=="string"?b.jsx("div",{style:{textOverflow:"ellipsis",overflow:"hidden"},children:H}):H]}),!!V.length&&b.jsx("div",{id:w,role:"group",children:V.map(j=>e.get(j)&&b.jsx(K0,{item:j,treeItems:e,selectedItem:i,onSelected:r,onAccepted:f,isError:u,toggleExpanded:d,toggleSubtree:g,highlightedItem:a,setHighlightedItem:o,render:m,title:y,icon:S},j.id))})]})}function Dh(n,e,i){const r=i.get(n.id);if(r!==void 0)return r;const a=e(n),o=a==="if-needed"?n.children.some(u=>Dh(u,e,i)):a;return i.set(n.id,o),o}function A_(n,e,i,r,a=()=>!0){const o=new Map;if(!Dh(n,a,o))return new Map;const u=new Map,f=new Set;for(let m=e==null?void 0:e.parent;m;m=m.parent)f.add(m.id);let d=null;const g=(m,y)=>{for(const S of m.children){if(!Dh(S,a,o))continue;const w=f.has(S.id)||i.get(S.id),E=r>y&&u.size<25&&w!==!1,x=S.children.length?w??E:void 0,_={depth:y,expanded:x,parent:n===m?null:m,next:null,prev:d};d&&(u.get(d).next=S),d=S,u.set(S,_),x&&g(S,y+1)}};return g(n,0),u}const ct=R.forwardRef(function({children:e,title:i="",icon:r,disabled:a=!1,toggled:o=!1,onClick:u=()=>{},style:f,testId:d,className:g,ariaLabel:m,errorBadge:y},S){const w=R.useId();return b.jsxs("button",{ref:S,className:ut(g,"toolbar-button",r,o&&"toggled"),onMouseDown:pb,onClick:u,onDoubleClick:pb,title:i,disabled:!!a,style:f,"data-testid":d,"aria-label":m||i,"aria-describedby":y?w:void 0,children:[r&&b.jsx("span",{className:`codicon codicon-${r}`,style:e?{marginRight:5}:{}}),e,y&&b.jsx("span",{id:w,className:"toolbar-button-error-badge",title:y,"aria-label":y})]})}),pb=n=>{n.stopPropagation(),n.preventDefault()};function X0(n){return n==="scheduled"?"codicon-clock":n==="running"?"codicon-loading":n==="failed"?"codicon-error":n==="passed"?"codicon-check":n==="skipped"?"codicon-circle-slash":"codicon-circle-outline"}function C_(n){return n==="scheduled"?"Pending":n==="running"?"Running":n==="failed"?"Failed":n==="passed"?"Passed":n==="skipped"?"Skipped":"Did not run"}const N_=T_,k_=({actions:n,selectedAction:e,selectedTime:i,setSelectedTime:r,treeState:a,setTreeState:o,sdkLanguage:u,onSelected:f,onHighlighted:d,revealConsole:g,revealActionAttachment:m,isLive:y,actionFilterText:S})=>{const{rootItem:w,itemMap:E}=R.useMemo(()=>v0(n),[n]),{selectedItem:x}=R.useMemo(()=>({selectedItem:e?E.get(e.callId):void 0}),[E,e]),_=R.useCallback(O=>{var P;return!!((P=O.action.error)!=null&&P.message)},[]),A=R.useCallback(O=>r({minimum:O.action.startTime,maximum:O.action.endTime}),[r]),C=R.useCallback(O=>{var J;const P=!!m&&!!((J=O.action.attachments)!=null&&J.length);return od(O.action,{sdkLanguage:u,revealConsole:g,revealActionAttachment:()=>m==null?void 0:m(O.action.callId),isLive:y,showDuration:!0,showBadges:!0,showAttachments:P})},[y,g,m,u]),H=R.useCallback(O=>{if(!(!i||!O.action||O.action.startTime<=i.maximum&&O.action.endTime>=i.minimum))return!1;const J=cd(O.action).title;return S?J.toLowerCase().includes(S.toLowerCase())?!0:"if-needed":!0},[i,S]),V=R.useCallback(O=>{f==null||f(O.action)},[f]),K=R.useCallback(O=>{d==null||d(O==null?void 0:O.action)},[d]),[Q,j]=R.useState(),I=R.useCallback(()=>{r(void 0),j(O=>(O??0)+1)},[r]);return b.jsxs("div",{className:"vbox action-list-container",children:[i&&b.jsxs("div",{className:"action-list-show-all",onClick:I,children:[b.jsx("span",{className:"codicon codicon-triangle-left"}),"Show all"]}),b.jsx(N_,{name:"actions",rootItem:w,treeState:a,setTreeState:o,selectedItem:x,onSelected:V,onHighlighted:K,onAccepted:A,isError:_,isVisible:H,render:C,autoExpandDepth:S!=null&&S.trim()?5:0,revealSelectedKey:Q})]})},od=(n,e)=>{var _;const{sdkLanguage:i,revealConsole:r,revealActionAttachment:a,isLive:o,showDuration:u,showBadges:f,showAttachments:d}=e,{errors:g,warnings:m}=Kx(n),y=n.params.selector?I0(i||"javascript",n.params.selector):void 0,S=n.class==="Test"&&n.method==="test.step"&&((_=n.annotations)==null?void 0:_.some(A=>A.type==="skip"));let w="";n.endTime?w=yt(n.endTime-n.startTime):n.error?w="Timed out":o||(w="-");const{elements:E,title:x}=cd(n);return b.jsxs("div",{className:"action-title vbox",children:[b.jsxs("div",{className:"hbox",children:[b.jsx("span",{className:"action-title-method",title:x,children:E}),(u||f||d||S)&&b.jsx("div",{className:"spacer"}),d&&b.jsx(ct,{icon:"attach",title:"Open Attachment",onClick:()=>a==null?void 0:a()}),u&&!S&&b.jsx("div",{className:"action-duration",children:w||b.jsx("span",{className:"codicon codicon-loading"})}),S&&b.jsx("span",{className:ut("action-skipped","codicon",X0("skipped")),title:"skipped"}),f&&b.jsxs("div",{className:"action-icons",onClick:()=>r==null?void 0:r(),children:[!!g&&b.jsxs("div",{className:"action-icon",children:[b.jsx("span",{className:"codicon codicon-error"}),b.jsx("span",{className:"action-icon-value",children:g})]}),!!m&&b.jsxs("div",{className:"action-icon",children:[b.jsx("span",{className:"codicon codicon-warning"}),b.jsx("span",{className:"action-icon-value",children:m})]})]})]}),y&&b.jsx("div",{className:"action-title-selector",title:y,children:y})]})};function cd(n,e){var g;let i=n.title??((g=id({type:n.class,method:n.method}))==null?void 0:g.title)??n.method;i=i.replace(/\n/g," ");const r=[],a=[];let o=0;const u=/\{([^}]+)\}/g;let f;for(;(f=u.exec(i))!==null;){const[m,y]=f,S=i.slice(o,f.index);r.push(S),a.push(S);const w=g0(n.params,y);w===void 0?(r.push(m),a.push(m)):f.index===0?(r.push(w),a.push(w)):(r.push(b.jsx("span",{className:"action-title-param",children:w},r.length)),a.push(w)),o=f.index+m.length}if(o<i.length){const m=i.slice(o);r.push(m),a.push(m)}const d=n.params.selector?I0("javascript",n.params.selector):void 0;return d&&(a.push(" "),a.push(d)),{elements:r,title:a.join("")}}const ud=({value:n,description:e})=>{const[i,r]=R.useState("copy"),a=R.useCallback(()=>{(typeof n=="function"?n():Promise.resolve(n)).then(u=>{navigator.clipboard.writeText(u).then(()=>{r("check"),setTimeout(()=>{r("copy")},3e3)},()=>{r("close")})},()=>{r("close")})},[n]);return b.jsx(ct,{title:e||"Copy",icon:i,onClick:a})},Po=({value:n,description:e,copiedDescription:i=e,style:r})=>{const[a,o]=R.useState(!1),u=R.useCallback(async()=>{const f=typeof n=="function"?await n():n;await navigator.clipboard.writeText(f),o(!0),setTimeout(()=>o(!1),3e3)},[n]);return b.jsx(ct,{style:r,title:e,onClick:u,className:"copy-to-clipboard-text-button",children:a?i:e})},ai=({text:n})=>b.jsx("div",{className:"fill",style:{display:"flex",alignItems:"center",justifyContent:"center",fontSize:24,fontWeight:"bold",opacity:.5},children:n}),M_=({action:n,startTimeOffset:e,sdkLanguage:i})=>{const r=R.useMemo(()=>Object.keys((n==null?void 0:n.params)??{}).filter(f=>f!=="info"),[n]);if(!n)return b.jsx(ai,{text:"No action selected"});const a=n.startTime-e,o=yt(a),{title:u}=cd(n);return b.jsxs("div",{className:"call-tab",children:[b.jsx("div",{className:"call-line",children:u}),b.jsx("div",{className:"call-section",children:"Time"}),Do({name:"start",type:"literal",text:o}),Do({name:"duration",type:"literal",text:O_(n)}),!!r.length&&b.jsxs(b.Fragment,{children:[b.jsx("div",{className:"call-section",children:"Parameters"}),r.map(f=>Do(gb(n,f,n.params[f],i)))]}),!!n.result&&b.jsxs(b.Fragment,{children:[b.jsx("div",{className:"call-section",children:"Return value"}),Object.keys(n.result).map(f=>Do(gb(n,f,n.result[f],i)))]})]})};function O_(n){return n.endTime?yt(n.endTime-n.startTime):n.error?"Timed Out":"Running"}function Do(n){let e=n.text;return e.length>1e3&&(e=e.slice(0,1e3)+"…"),e=e.replace(/\n/g,"↵"),n.type==="string"&&(e=`"${e}"`),b.jsxs("div",{className:"call-line",children:[n.name,":",b.jsx("span",{className:ut("call-value",n.type),title:e,children:e}),["literal","string","number","object","locator"].includes(n.type)&&b.jsx(ud,{value:n.text})]},n.name)}function gb(n,e,i,r){const a=n.method.includes("eval")||n.method==="waitForFunction";if(e==="files")return{text:"<files>",type:"string",name:e};if((e==="eventInit"||e==="expectedValue"||e==="arg"&&a)&&(i=Qa(i.value,new Array(10).fill({handle:"<handle>"}))),e==="value"&&a&&(i=Qa(i,new Array(10).fill({handle:"<handle>"}))),e==="received"&&n.method==="expect"){const f=i&&typeof i=="object"&&("value"in i||"ariaSnapshot"in i)?i.value:i;i=f!==void 0?Qa(f,new Array(10).fill({handle:"<handle>"})):void 0}if(e==="selector")return{text:Ri(r||"javascript",n.params.selector),type:"locator",name:"locator"};const o=typeof i;return o!=="object"||i===null?{text:String(i),type:o,name:e}:i.guid?{text:"<handle>",type:"handle",name:e}:{text:JSON.stringify(i),type:"object",name:e}}function Qa(n,e){if(n.n!==void 0)return n.n;if(n.s!==void 0)return n.s;if(n.b!==void 0)return n.b;if(n.v!==void 0){if(n.v==="undefined")return;if(n.v==="null")return null;if(n.v==="NaN")return NaN;if(n.v==="Infinity")return 1/0;if(n.v==="-Infinity")return-1/0;if(n.v==="-0")return-0}if(n.d!==void 0)return new Date(n.d);if(n.r!==void 0)return new RegExp(n.r.p,n.r.f);if(n.a!==void 0)return n.a.map(i=>Qa(i,e));if(n.o!==void 0){const i={};for(const{k:r,v:a}of n.o)i[r]=Qa(a,e);return i}return n.h!==void 0?e===void 0?"<object>":e[n.h]:"<object>"}const mb=new Map;function hl({name:n,items:e=[],id:i,render:r,icon:a,isError:o,isWarning:u,isInfo:f,selectedItem:d,onAccepted:g,onSelected:m,onHighlighted:y,onIconClicked:S,noItemsMessage:w,dataTestId:E,notSelectable:x,ariaLabel:_}){const A=R.useRef(null),[C,H]=R.useState();return R.useEffect(()=>{y==null||y(C)},[y,C]),R.useEffect(()=>{const V=A.current;if(!V)return;const K=()=>{mb.set(n,V.scrollTop)};return V.addEventListener("scroll",K,{passive:!0}),()=>V.removeEventListener("scroll",K)},[n]),R.useEffect(()=>{A.current&&(A.current.scrollTop=mb.get(n)||0)},[n]),b.jsx("div",{className:ut("list-view vbox",n+"-list-view"),role:e.length>0?"listbox":void 0,"aria-label":_,children:b.jsxs("div",{className:ut("list-view-content",x&&"not-selectable"),tabIndex:0,onKeyDown:V=>{var I;if(d&&V.key==="Enter"){g==null||g(d,e.indexOf(d));return}if(V.key!=="ArrowDown"&&V.key!=="ArrowUp")return;V.stopPropagation(),V.preventDefault();const K=d?e.indexOf(d):-1;let Q=K;V.key==="ArrowDown"&&(K===-1?Q=0:Q=Math.min(K+1,e.length-1)),V.key==="ArrowUp"&&(K===-1?Q=e.length-1:Q=Math.max(K-1,0));const j=(I=A.current)==null?void 0:I.children.item(Q);td(j||void 0),y==null||y(void 0),m==null||m(e[Q],Q),H(void 0)},ref:A,children:[w&&e.length===0&&b.jsx("div",{className:"list-view-empty",children:w}),e.map((V,K)=>{const Q=r(V,K);return b.jsxs("div",{onDoubleClick:()=>g==null?void 0:g(V,K),role:"option",className:ut("list-view-entry",d===V&&"selected",!x&&C===V&&"highlighted",(o==null?void 0:o(V,K))&&"error",(u==null?void 0:u(V,K))&&"warning",(f==null?void 0:f(V,K))&&"info"),"aria-selected":d===V,onClick:()=>m==null?void 0:m(V,K),onMouseEnter:()=>H(V),onMouseLeave:()=>H(void 0),children:[a&&b.jsx("div",{className:"codicon "+(a(V,K)||"codicon-blank"),style:{minWidth:16,marginRight:4},onDoubleClick:j=>{j.preventDefault(),j.stopPropagation()},onClick:j=>{j.stopPropagation(),j.preventDefault(),S==null||S(V,K)}}),typeof Q=="string"?b.jsx("div",{style:{textOverflow:"ellipsis",overflow:"hidden"},children:Q}):Q]},(i==null?void 0:i(V,K))||K)})]})})}const j_=hl,L_=({action:n,isLive:e})=>{const i=R.useMemo(()=>{var u;if(!n||!n.log.length)return[];const r=n.log,a=n.context.wallTime-n.context.startTime,o=[];for(let f=0;f<r.length;++f){let d="";if(r[f].time!==-1){const g=(u=r[f])==null?void 0:u.time;f+1<r.length?d=yt(r[f+1].time-g):n.endTime>0?d=yt(n.endTime-g):e?d=yt(Date.now()-a-g):d="-"}o.push({message:r[f].message,time:d})}return o},[n,e]);return i.length?b.jsx(j_,{name:"log",ariaLabel:"Log entries",items:i,render:r=>b.jsxs("div",{className:"log-list-item",children:[b.jsx("span",{className:"log-list-duration",children:r.time}),r.message]}),notSelectable:!0}):b.jsx(ai,{text:"No log entries"})};function sl(n,e){const i=/(\x1b\[(\d+(;\d+)*)m)|([^\x1b]+)/g,r=[];let a,o={},u=!1,f=e==null?void 0:e.fg,d=e==null?void 0:e.bg;for(;(a=i.exec(n))!==null;){const[,,g,,m]=a;if(g)for(const y of g.split(";")){const S=+y;switch(S){case 0:o={};break;case 1:o["font-weight"]="bold";break;case 2:o.opacity="0.8";break;case 3:o["font-style"]="italic";break;case 4:o["text-decoration"]="underline";break;case 7:u=!0;break;case 8:o.display="none";break;case 9:o["text-decoration"]="line-through";break;case 22:delete o["font-weight"],delete o["font-style"],delete o.opacity,delete o["text-decoration"];break;case 23:delete o["font-weight"],delete o["font-style"],delete o.opacity;break;case 24:delete o["text-decoration"];break;case 27:u=!1;break;case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:f=yb[S-30];break;case 39:f=e==null?void 0:e.fg;break;case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:d=yb[S-40];break;case 49:d=e==null?void 0:e.bg;break;case 53:o["text-decoration"]="overline";break;case 90:case 91:case 92:case 93:case 94:case 95:case 96:case 97:f=bb[S-90];break;case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:d=bb[S-100];break}}else if(m){const y={...o},S=u?d:f;S!==void 0&&(y.color=S),u&&f&&(y["background-color"]=f),r.push(`<span style="${D_(y)}">${R_(m)}</span>`)}}return r.join("")}const yb={0:"var(--vscode-terminal-ansiBlack)",1:"var(--vscode-terminal-ansiRed)",2:"var(--vscode-terminal-ansiGreen)",3:"var(--vscode-terminal-ansiYellow)",4:"var(--vscode-terminal-ansiBlue)",5:"var(--vscode-terminal-ansiMagenta)",6:"var(--vscode-terminal-ansiCyan)",7:"var(--vscode-terminal-ansiWhite)"},bb={0:"var(--vscode-terminal-ansiBrightBlack)",1:"var(--vscode-terminal-ansiBrightRed)",2:"var(--vscode-terminal-ansiBrightGreen)",3:"var(--vscode-terminal-ansiBrightYellow)",4:"var(--vscode-terminal-ansiBrightBlue)",5:"var(--vscode-terminal-ansiBrightMagenta)",6:"var(--vscode-terminal-ansiBrightCyan)",7:"var(--vscode-terminal-ansiBrightWhite)"};function R_(n){return n.replace(/[&"<>]/g,e=>({"&":"&amp;",'"':"&quot;","<":"&lt;",">":"&gt;"})[e])}function D_(n){return Object.entries(n).map(([e,i])=>`${e}: ${i}`).join("; ")}const z_=({error:n})=>{const e=R.useMemo(()=>sl(n,{bg:"var(--vscode-editor-background)",fg:"var(--vscode-editor-foreground)"}),[n]);return b.jsx("div",{className:"error-message",dangerouslySetInnerHTML:{__html:e||""}})},Y0=({cursor:n,onPaneMouseMove:e,onPaneMouseUp:i,onPaneDoubleClick:r})=>(Et.useEffect(()=>{const a=document.createElement("div");return a.style.position="fixed",a.style.top="0",a.style.right="0",a.style.bottom="0",a.style.left="0",a.style.zIndex="9999",a.style.cursor=n,document.body.appendChild(a),e&&a.addEventListener("mousemove",e),i&&a.addEventListener("mouseup",i),r&&document.body.addEventListener("dblclick",r),()=>{e&&a.removeEventListener("mousemove",e),i&&a.removeEventListener("mouseup",i),r&&document.body.removeEventListener("dblclick",r),document.body.removeChild(a)}},[n,e,i,r]),b.jsx(b.Fragment,{})),U_={position:"absolute",top:0,right:0,bottom:0,left:0},F0=({orientation:n,offsets:e,setOffsets:i,resizerColor:r,resizerWidth:a,minColumnWidth:o})=>{const u=o||0,[f,d]=Et.useState(null),[g,m]=gs(),y={position:"absolute",right:n==="horizontal"?void 0:0,bottom:n==="horizontal"?0:void 0,width:n==="horizontal"?7:void 0,height:n==="horizontal"?void 0:7,borderTopWidth:n==="horizontal"?void 0:(7-a)/2,borderRightWidth:n==="horizontal"?(7-a)/2:void 0,borderBottomWidth:n==="horizontal"?void 0:(7-a)/2,borderLeftWidth:n==="horizontal"?(7-a)/2:void 0,borderColor:"transparent",borderStyle:"solid",cursor:n==="horizontal"?"ew-resize":"ns-resize"};return b.jsxs("div",{style:{position:"absolute",top:0,right:0,bottom:0,left:-(7-a)/2,zIndex:100,pointerEvents:"none"},ref:m,children:[!!f&&b.jsx(Y0,{cursor:n==="horizontal"?"ew-resize":"ns-resize",onPaneMouseUp:()=>d(null),onPaneMouseMove:S=>{if(!S.buttons)d(null);else if(f){const w=n==="horizontal"?S.clientX-f.clientX:S.clientY-f.clientY,E=f.offset+w,x=f.index>0?e[f.index-1]:0,_=n==="horizontal"?g.width:g.height,A=Math.min(Math.max(x+u,E),_-u)-e[f.index];for(let C=f.index;C<e.length;++C)e[C]=e[C]+A;i([...e])}}}),e.map((S,w)=>b.jsx("div",{style:{...y,top:n==="horizontal"?0:S,left:n==="horizontal"?S:0,pointerEvents:"initial"},onMouseDown:E=>d({clientX:E.clientX,clientY:E.clientY,offset:S,index:w}),children:b.jsx("div",{style:{...U_,background:r}})},w))]})};async function fh(n){const e=new Image;return n&&(e.src=n,await new Promise((i,r)=>{e.onload=i,e.onerror=i})),e}const zh={backgroundImage:`linear-gradient(45deg, #80808020 25%, transparent 25%),
                    linear-gradient(-45deg, #80808020 25%, transparent 25%),
                    linear-gradient(45deg, transparent 75%, #80808020 75%),
                    linear-gradient(-45deg, transparent 75%, #80808020 75%)`,backgroundSize:"20px 20px",backgroundPosition:"0 0, 0 10px, 10px -10px, -10px 0px",boxShadow:`rgb(0 0 0 / 10%) 0px 1.8px 1.9px,
              rgb(0 0 0 / 15%) 0px 6.1px 6.3px,
              rgb(0 0 0 / 10%) 0px -2px 4px,
              rgb(0 0 0 / 15%) 0px -6.1px 12px,
              rgb(0 0 0 / 25%) 0px 6px 12px`},H_=({diff:n,noTargetBlank:e,hideDetails:i})=>{const[r,a]=R.useState(n.diff?"diff":"actual"),[o,u]=R.useState(!1),[f,d]=R.useState(null),[g,m]=R.useState("Expected"),[y,S]=R.useState(null),[w,E]=R.useState(null),[x,_]=gs();R.useEffect(()=>{(async()=>{var O,P,J,$;d(await fh((O=n.expected)==null?void 0:O.attachment.path)),m(((P=n.expected)==null?void 0:P.title)||"Expected"),S(await fh((J=n.actual)==null?void 0:J.attachment.path)),E(await fh(($=n.diff)==null?void 0:$.attachment.path))})()},[n]);const A=f&&y&&w,C=A?Math.max(f.naturalWidth,y.naturalWidth,200):500,H=A?Math.max(f.naturalHeight,y.naturalHeight,200):500,V=Math.min(1,(x.width-30)/C),K=Math.min(1,(x.width-50)/C/2),Q=C*V,j=H*V,I={flex:"none",margin:"0 10px",cursor:"pointer",userSelect:"none"};return b.jsx("div",{"data-testid":"test-result-image-mismatch",style:{display:"flex",flexDirection:"column",alignItems:"center",flex:"auto"},ref:_,children:A&&b.jsxs(b.Fragment,{children:[b.jsxs("div",{"data-testid":"test-result-image-mismatch-tabs",style:{display:"flex",margin:"10px 0 20px"},children:[n.diff&&b.jsx("div",{style:{...I,fontWeight:r==="diff"?600:"initial"},onClick:()=>a("diff"),children:"Diff"}),b.jsx("div",{style:{...I,fontWeight:r==="actual"?600:"initial"},onClick:()=>a("actual"),children:"Actual"}),b.jsx("div",{style:{...I,fontWeight:r==="expected"?600:"initial"},onClick:()=>a("expected"),children:g}),b.jsx("div",{style:{...I,fontWeight:r==="sxs"?600:"initial"},onClick:()=>a("sxs"),children:"Side by side"}),b.jsx("div",{style:{...I,fontWeight:r==="slider"?600:"initial"},onClick:()=>a("slider"),children:"Slider"})]}),b.jsxs("div",{style:{display:"flex",justifyContent:"center",flex:"auto",minHeight:j+60},children:[n.diff&&r==="diff"&&b.jsx(ei,{image:w,alt:"Diff",hideSize:i,canvasWidth:Q,canvasHeight:j,scale:V}),n.diff&&r==="actual"&&b.jsx(ei,{image:y,alt:"Actual",hideSize:i,canvasWidth:Q,canvasHeight:j,scale:V}),n.diff&&r==="expected"&&b.jsx(ei,{image:f,alt:g,hideSize:i,canvasWidth:Q,canvasHeight:j,scale:V}),n.diff&&r==="slider"&&b.jsx(B_,{expectedImage:f,actualImage:y,hideSize:i,canvasWidth:Q,canvasHeight:j,scale:V,expectedTitle:g}),n.diff&&r==="sxs"&&b.jsxs("div",{style:{display:"flex"},children:[b.jsx(ei,{image:f,title:g,hideSize:i,canvasWidth:K*C,canvasHeight:K*H,scale:K}),b.jsx(ei,{image:o?w:y,title:o?"Diff":"Actual",onClick:()=>u(!o),hideSize:i,canvasWidth:K*C,canvasHeight:K*H,scale:K})]}),!n.diff&&r==="actual"&&b.jsx(ei,{image:y,title:"Actual",hideSize:i,canvasWidth:Q,canvasHeight:j,scale:V}),!n.diff&&r==="expected"&&b.jsx(ei,{image:f,title:g,hideSize:i,canvasWidth:Q,canvasHeight:j,scale:V}),!n.diff&&r==="sxs"&&b.jsxs("div",{style:{display:"flex"},children:[b.jsx(ei,{image:f,title:g,canvasWidth:K*C,canvasHeight:K*H,scale:K}),b.jsx(ei,{image:y,title:"Actual",canvasWidth:K*C,canvasHeight:K*H,scale:K})]})]}),!i&&b.jsxs("div",{style:{alignSelf:"start",lineHeight:"18px",marginLeft:"15px"},children:[b.jsx("div",{children:n.diff&&b.jsx("a",{target:"_blank",href:n.diff.attachment.path,rel:"noreferrer",children:n.diff.attachment.name})}),b.jsx("div",{children:b.jsx("a",{target:e?"":"_blank",href:n.actual.attachment.path,rel:"noreferrer",children:n.actual.attachment.name})}),b.jsx("div",{children:b.jsx("a",{target:e?"":"_blank",href:n.expected.attachment.path,rel:"noreferrer",children:n.expected.attachment.name})})]})]})})},B_=({expectedImage:n,actualImage:e,canvasWidth:i,canvasHeight:r,scale:a,expectedTitle:o,hideSize:u})=>{const f={position:"absolute",top:0,left:0},[d,g]=R.useState(i/2),m=n.naturalWidth===e.naturalWidth&&n.naturalHeight===e.naturalHeight;return b.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center",flexDirection:"column",userSelect:"none"},children:[!u&&b.jsxs("div",{style:{margin:5},children:[!m&&b.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"Actual "}),!m&&b.jsx("span",{children:e.naturalWidth}),!m&&b.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),!m&&b.jsx("span",{children:e.naturalHeight}),!m&&b.jsxs("span",{style:{flex:"none",margin:"0 5px 0 15px"},children:[o," "]}),b.jsx("span",{children:n.naturalWidth}),b.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),b.jsx("span",{children:n.naturalHeight})]}),b.jsxs("div",{style:{position:"relative",width:i,height:r,margin:15,...zh},children:[b.jsx(F0,{orientation:"horizontal",offsets:[d],setOffsets:y=>g(y[0]),resizerColor:"#57606a80",resizerWidth:6}),b.jsx("img",{alt:o,style:{width:n.naturalWidth*a,height:n.naturalHeight*a},draggable:"false",src:n.src}),b.jsx("div",{style:{...f,bottom:0,overflow:"hidden",width:d,...zh},children:b.jsx("img",{alt:"Actual",style:{width:e.naturalWidth*a,height:e.naturalHeight*a},draggable:"false",src:e.src})})]})]})},ei=({image:n,title:e,alt:i,hideSize:r,canvasWidth:a,canvasHeight:o,scale:u,onClick:f})=>b.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center",flexDirection:"column"},children:[!r&&b.jsxs("div",{style:{margin:5},children:[e&&b.jsx("span",{style:{flex:"none",margin:"0 5px"},children:e}),b.jsx("span",{children:n.naturalWidth}),b.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),b.jsx("span",{children:n.naturalHeight})]}),b.jsx("div",{style:{display:"flex",flex:"none",width:a,height:o,margin:15,...zh},children:b.jsx("img",{width:n.naturalWidth*u,height:n.naturalHeight*u,alt:e||i,style:{cursor:f?"pointer":"initial"},draggable:"false",src:n.src,onClick:f})})]}),q_="modulepreload",$_=function(n,e){return new URL(n,e).href},vb={},I_=function(e,i,r){let a=Promise.resolve();if(i&&i.length>0){let u=function(m){return Promise.all(m.map(y=>Promise.resolve(y).then(S=>({status:"fulfilled",value:S}),S=>({status:"rejected",reason:S}))))};const f=document.getElementsByTagName("link"),d=document.querySelector("meta[property=csp-nonce]"),g=(d==null?void 0:d.nonce)||(d==null?void 0:d.getAttribute("nonce"));a=u(i.map(m=>{if(m=$_(m,r),m in vb)return;vb[m]=!0;const y=m.endsWith(".css"),S=y?'[rel="stylesheet"]':"";if(!!r)for(let x=f.length-1;x>=0;x--){const _=f[x];if(_.href===m&&(!y||_.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${m}"]${S}`))return;const E=document.createElement("link");if(E.rel=y?"stylesheet":q_,y||(E.as="script"),E.crossOrigin="",E.href=m,g&&E.setAttribute("nonce",g),document.head.appendChild(E),y)return new Promise((x,_)=>{E.addEventListener("load",x),E.addEventListener("error",()=>_(new Error(`Unable to preload CSS for ${m}`)))})}))}function o(u){const f=new Event("vite:preloadError",{cancelable:!0});if(f.payload=u,window.dispatchEvent(f),!f.defaultPrevented)throw u}return a.then(u=>{for(const f of u||[])f.status==="rejected"&&o(f.reason);return e().catch(o)})},V_=20,ds=({text:n,highlighter:e,mimeType:i,linkify:r,readOnly:a,highlight:o,revealLine:u,lineNumbers:f,isFocused:d,focusOnChange:g,wrapLines:m,onChange:y,dataTestId:S,placeholder:w})=>{const[E,x]=gs(),[_]=R.useState(I_(()=>import("./codeMirrorModule-LEHpjmcn.js"),__vite__mapDeps([0,1,2]),import.meta.url).then(V=>V.default)),A=R.useRef(null),[C,H]=R.useState();return R.useEffect(()=>{(async()=>{var I,O;const V=await _;K_(V);const K=x.current;if(!K)return;const Q=Y_(e)||X_(i)||(r?"text/linkified":"");if(A.current&&Q===A.current.cm.getOption("mode")&&!!a===A.current.cm.getOption("readOnly")&&f===A.current.cm.getOption("lineNumbers")&&m===A.current.cm.getOption("lineWrapping")&&w===A.current.cm.getOption("placeholder"))return;(O=(I=A.current)==null?void 0:I.cm)==null||O.getWrapperElement().remove();const j=V(K,{value:"",mode:Q,readOnly:!!a,lineNumbers:f,lineWrapping:m,placeholder:w,matchBrackets:!0,autoCloseBrackets:!0,extraKeys:{"Ctrl-F":"findPersistent","Cmd-F":"findPersistent"}});return A.current={cm:j},d&&j.focus(),H(j),j})()},[_,C,x,e,i,r,f,m,a,d,w]),R.useEffect(()=>{A.current&&A.current.cm.setSize(E.width,E.height)},[E]),R.useLayoutEffect(()=>{var Q;if(!C)return;let V=!1;if(C.getValue()!==n&&(C.setValue(n),V=!0,g&&(C.execCommand("selectAll"),C.focus())),V||JSON.stringify(o)!==JSON.stringify(A.current.highlight)){for(const O of A.current.highlight||[])C.removeLineClass(O.line-1,"wrap");for(const O of o||[])C.addLineClass(O.line-1,"wrap",`source-line-${O.type}`);for(const O of A.current.widgets||[])C.removeLineWidget(O);for(const O of A.current.markers||[])O.clear();const j=[],I=[];for(const O of o||[]){if(O.type!=="subtle-error"&&O.type!=="error")continue;const P=(Q=A.current)==null?void 0:Q.cm.getLine(O.line-1);if(P){const J={};J.title=O.message||"",I.push(C.markText({line:O.line-1,ch:0},{line:O.line-1,ch:O.column||P.length},{className:"source-line-error-underline",attributes:J}))}if(O.type==="error"){const J=document.createElement("div");J.innerHTML=sl(O.message||"",{bg:"var(--vscode-inputValidation-errorBackground)",fg:"var(--vscode-editor-foreground)"}),J.className="source-line-error-widget",j.push(C.addLineWidget(O.line,J,{above:!0,coverGutter:!1}))}}A.current.highlight=o,A.current.widgets=j,A.current.markers=I}typeof u=="number"&&A.current.cm.lineCount()>=u&&C.scrollIntoView({line:Math.max(0,u-1),ch:0},50);let K;return y&&(K=()=>y(C.getValue()),C.on("change",K)),()=>{K&&C.off("change",K)}},[C,n,o,u,g,y]),b.jsx("div",{"data-testid":S,className:"cm-wrapper",ref:x,onClick:G_})};function G_(n){var i;if(!(n.target instanceof HTMLElement))return;let e;n.target.classList.contains("cm-linkified")?e=n.target.textContent:n.target.classList.contains("cm-link")&&((i=n.target.nextElementSibling)!=null&&i.classList.contains("cm-url"))&&(e=n.target.nextElementSibling.textContent.slice(1,-1)),e&&(n.preventDefault(),n.stopPropagation(),window.open(e,"_blank"))}let Sb=!1;function K_(n){Sb||(Sb=!0,n.defineSimpleMode("text/linkified",{start:[{regex:h0,token:"linkified"}]}))}function X_(n){if(n){if(n.includes("javascript")||n.includes("json"))return"javascript";if(n.includes("python"))return"python";if(n.includes("csharp"))return"text/x-csharp";if(n.includes("java"))return"text/x-java";if(n.includes("markdown"))return"markdown";if(n.includes("html")||n.includes("svg"))return"htmlmixed";if(n.includes("css"))return"css"}}function Y_(n){if(n)return{javascript:"javascript",jsonl:"javascript",python:"python",csharp:"text/x-csharp",java:"text/x-java",markdown:"markdown",html:"htmlmixed",css:"css",yaml:"yaml"}[n]}function F_(n){return!!n.match(/^(application\/json|application\/.*?\+json|text\/(x-)?json)(;\s*charset=.*)?$/)}function Q_(n){return!!n.match(/^(application\/xml|application\/.*?\+xml|text\/xml)(;\s*charset=.*)?$/)}function P_(n){return!!n.match(/^(text\/.*?|application\/(json|(x-)?javascript|xml.*?|ecmascript|graphql|x-www-form-urlencoded)|image\/svg(\+xml)?|application\/.*?(\+json|\+xml))(;\s*charset=.*)?$/)}const Q0=({title:n,children:e,setExpanded:i,expanded:r,expandOnTitleClick:a,className:o})=>{const u=R.useId(),f=R.useId(),d=R.useCallback(()=>i(!r),[r,i]),g=b.jsx("div",{className:ut("codicon",r?"codicon-chevron-down":"codicon-chevron-right"),style:{cursor:"pointer",color:"var(--vscode-foreground)",marginLeft:"5px"},onClick:a?void 0:d});return b.jsxs("div",{className:ut("expandable",r&&"expanded",o),children:[a?b.jsxs("div",{id:u,role:"button","aria-expanded":r,"aria-controls":f,className:"expandable-title",onClick:d,children:[g,n]}):b.jsxs("div",{className:"expandable-title",children:[g,n]}),r&&b.jsx("div",{id:f,"aria-labelledby":u,role:"region",className:"expandable-content",children:e})]})};function P0(n){const e=[];let i=0,r;for(;(r=h0.exec(n))!==null;){const o=n.substring(i,r.index);o&&e.push(o);const u=r[0];e.push(J_(u)),i=r.index+u.length}const a=n.substring(i);return a&&e.push(a),e}function J_(n){let e=n;return e.startsWith("www.")&&(e="https://"+e),b.jsx("a",{href:e,target:"_blank",rel:"noopener noreferrer",children:n})}const J0=R.createContext(void 0),Ln=()=>R.useContext(J0),Z_=({attachment:n,reveal:e})=>{const i=Ln(),[r,a]=R.useState(!1),[o,u]=R.useState(null),[f,d]=R.useState(null),[g,m]=_x(),y=R.useRef(null),S=P_(n.contentType),w=!!n.sha1||!!n.path;R.useEffect(()=>{var _;if(e)return(_=y.current)==null||_.scrollIntoView({behavior:"smooth"}),m()},[e,m]),R.useEffect(()=>{r&&o===null&&f===null&&(d("Loading ..."),fetch(wc(i,n)).then(_=>_.text()).then(_=>{u(_),d(null)}).catch(_=>{d("Failed to load: "+_.message)}))},[i,r,o,f,n]);const E=R.useMemo(()=>{const _=o?o.split(`
`).length:0;return Math.min(Math.max(5,_),20)*V_},[o]),x=b.jsxs("span",{style:{marginLeft:5},ref:y,"aria-label":n.name,children:[b.jsx("span",{children:P0(n.name)}),w&&b.jsx("a",{style:{marginLeft:5},href:Jo(i,n),children:"download"})]});return!S||!w?b.jsx("div",{style:{marginLeft:20},children:x}):b.jsxs("div",{className:ut(g&&"yellow-flash"),children:[b.jsx(Q0,{title:x,expanded:r,setExpanded:a,expandOnTitleClick:!0,children:f&&b.jsx("i",{children:f})}),r&&o!==null&&b.jsx("div",{className:"vbox",style:{height:E},children:b.jsx(ds,{text:o,readOnly:!0,mimeType:n.contentType,linkify:!0,lineNumbers:!0,wrapLines:!1})})]})},W_=({revealedAttachmentCallId:n})=>{const e=Ln(),{diffMap:i,screenshots:r,attachments:a}=R.useMemo(()=>{const o=new Set((e==null?void 0:e.visibleAttachments)??[]),u=new Set,f=new Map;for(const d of o){if(!d.path&&!d.sha1)continue;const g=d.name.match(/^(.*)-(expected|actual|diff)\.png$/);if(g){const m=g[1],y=g[2],S=f.get(m)||{expected:void 0,actual:void 0,diff:void 0};S[y]=d,f.set(m,S),o.delete(d)}else d.contentType.startsWith("image/")&&(u.add(d),o.delete(d))}return{diffMap:f,attachments:o,screenshots:u}},[e]);return!i.size&&!r.size&&!a.size?b.jsx(ai,{text:"No attachments"}):b.jsxs("div",{className:"attachments-tab",children:[[...i.values()].map(({expected:o,actual:u,diff:f})=>b.jsxs(b.Fragment,{children:[o&&u&&b.jsx("div",{className:"attachments-section",children:"Image diff"}),o&&u&&b.jsx(H_,{noTargetBlank:!0,diff:{name:"Image diff",expected:{attachment:{...o,path:Jo(e,o)},title:"Expected"},actual:{attachment:{...u,path:Jo(e,u)}},diff:f?{attachment:{...f,path:Jo(e,f)}}:void 0}})]})),r.size?b.jsx("div",{className:"attachments-section",children:"Screenshots"}):void 0,[...r.values()].map((o,u)=>{const f=wc(e,o);return b.jsxs("div",{className:"attachment-item",children:[b.jsx("div",{children:b.jsx("img",{draggable:"false",src:f})}),b.jsx("div",{children:b.jsx("a",{target:"_blank",href:f,rel:"noreferrer",children:o.name})})]},`screenshot-${u}`)}),a.size?b.jsx("div",{className:"attachments-section",children:"Attachments"}):void 0,[...a.values()].map((o,u)=>b.jsx("div",{className:"attachment-item",children:b.jsx(Z_,{attachment:o,reveal:n&&o.callId===n.callId?n:void 0})},eE(o,u)))]})};function wc(n,e){return n&&e.sha1?n.createRelativeUrl(`sha1/${e.sha1}`):`file?path=${encodeURIComponent(e.path)}`}function Jo(n,e){let i=e.contentType?`&dn=${encodeURIComponent(e.name)}`:"";return e.contentType&&(i+=`&dct=${encodeURIComponent(e.contentType)}`),wc(n,e)+i}function eE(n,e){return e+"-"+(n.sha1?"sha1-"+n.sha1:"path-"+n.path)}const tE=({prompt:n})=>b.jsx(Po,{value:n,description:"Copy prompt",copiedDescription:b.jsxs(b.Fragment,{children:["Copied ",b.jsx("span",{className:"codicon codicon-copy",style:{marginLeft:"5px"}})]}),style:{width:"120px",justifyContent:"center"}});function nE(n){return R.useMemo(()=>{if(!n)return{errors:new Map};const e=new Map;for(const i of n.errorDescriptors)e.set(i.message,i);return{errors:e}},[n])}function iE({message:n,error:e,sdkLanguage:i,revealInSource:r}){var f;let a,o;const u=(f=e.stack)==null?void 0:f[0];return u&&(a=u.file.replace(/.*[/\\](.*)/,"$1")+":"+u.line,o=u.file+":"+u.line),b.jsxs("div",{style:{display:"flex",flexDirection:"column",overflowX:"clip"},children:[b.jsxs("div",{className:"hbox",style:{alignItems:"center",padding:"5px 10px",minHeight:36,fontWeight:"bold",color:"var(--vscode-errorForeground)",flex:0},children:[e.action&&od(e.action,{sdkLanguage:i}),a&&b.jsxs("div",{className:"action-location",children:["@ ",b.jsx("span",{title:o,onClick:()=>r(e),children:a})]})]}),b.jsx(z_,{error:n})]})}const sE=({errorsModel:n,sdkLanguage:e,revealInSource:i,wallTime:r,testRunMetadata:a})=>{const o=Ln(),u=yc(async()=>{const f=o==null?void 0:o.attachments.find(g=>g.name==="error-context");if(!f)return;let d=await fetch(wc(o,f)).then(g=>g.text());if(d)return a!=null&&a.gitDiff&&(d+=`
# Local changes
\`\`\`diff
`+a.gitDiff+"\n```"),d},[o,a],void 0);return n.errors.size?b.jsxs("div",{className:"fill",style:{overflow:"auto"},children:[b.jsx("span",{style:{position:"absolute",right:"5px",top:"5px",zIndex:1},children:u&&b.jsx(tE,{prompt:u})}),[...n.errors.entries()].map(([f,d])=>{const g=`error-${r}-${f}`;return b.jsx(iE,{message:f,error:d,revealInSource:i,sdkLanguage:e},g)})]}):b.jsx(ai,{text:"No errors"})},rE=hl,Da={log:{bg:"var(--vscode-editor-background)",fg:"var(--vscode-editor-foreground)"},warning:{fg:"var(--vscode-list-warningForeground)",bg:"var(--vscode-inputValidation-warningBackground)"},error:{fg:"var(--vscode-list-errorForeground)",bg:"var(--vscode-inputValidation-errorBackground)"}};function aE(n,e,i){const{entries:r}=R.useMemo(()=>{if(!n)return{entries:[]};const o=[];function u(d){var y,S,w,E,x,_;const g=o[o.length-1];g&&((y=d.browserMessage)==null?void 0:y.bodyString)===((S=g.browserMessage)==null?void 0:S.bodyString)&&((w=d.browserMessage)==null?void 0:w.location)===((E=g.browserMessage)==null?void 0:E.location)&&d.browserError===g.browserError&&((x=d.nodeMessage)==null?void 0:x.html)===((_=g.nodeMessage)==null?void 0:_.html)&&d.isError===g.isError&&d.isWarning===g.isWarning&&d.timestamp-g.timestamp<1e3?g.repeat++:o.push({...d,repeat:1})}const f=[...n.events,...n.stdio].sort((d,g)=>{const m="time"in d?d.time:d.timestamp,y="time"in g?g.time:g.timestamp;return m-y});for(const d of f){if(d.type==="console"){const g=d.messageType==="error"?Da.error:d.messageType==="warning"?Da.warning:Da.log,m=d.args&&d.args.length?oE(d.args,g):Z0(d.text,g),y=d.location.url,w=`${y?y.substring(y.lastIndexOf("/")+1):"<anonymous>"}:${d.location.lineNumber}`;u({browserMessage:{body:m,bodyString:d.text,location:w},isError:d.messageType==="error",isWarning:d.messageType==="warning",timestamp:d.time})}if(d.type==="event"&&d.method==="pageError"&&u({browserError:d.params.error,isError:!0,isWarning:!1,timestamp:d.time}),d.type==="stderr"||d.type==="stdout"){let g="";const m=d.type==="stderr"?Da.error:Da.log;d.text&&(g=sl(d.text.trim(),m)||""),d.base64&&(g=sl(atob(d.base64).trim(),m)||""),u({nodeMessage:{html:g},isError:d.type==="stderr",isWarning:!1,timestamp:d.timestamp})}}return{entries:o}},[n,i]);return{entries:R.useMemo(()=>e?r.filter(o=>o.timestamp>=e.minimum&&o.timestamp<=e.maximum):r,[r,e])}}const lE=({consoleModel:n,boundaries:e,onEntryHovered:i,onAccepted:r})=>n.entries.length?b.jsx("div",{className:"console-tab",children:b.jsx(rE,{name:"console",onAccepted:r,onHighlighted:a=>i==null?void 0:i(a?{minimum:a.timestamp,maximum:a.timestamp}:void 0),items:n.entries,isError:a=>a.isError,isWarning:a=>a.isWarning,render:a=>{const o=yt(a.timestamp-e.minimum),u=b.jsx("span",{className:"console-time",children:o}),f=a.isError?"status-error":a.isWarning?"status-warning":"status-none",d=a.browserMessage||a.browserError?b.jsx("span",{className:ut("codicon","codicon-browser",f),title:"Browser message"}):b.jsx("span",{className:ut("codicon","codicon-file",f),title:"Runner message"});let g,m,y,S;const{browserMessage:w,browserError:E,nodeMessage:x}=a;if(w&&(g=w.location,m=w.body),E){const{error:_,value:A}=E;_?(m=_.message,S=_.stack):m=String(A)}return x&&(y=x.html),b.jsxs("div",{className:"console-line",children:[u,d,g&&b.jsx("span",{className:"console-location",children:g}),a.repeat>1&&b.jsx("span",{className:"console-repeat",children:a.repeat}),m&&b.jsx("span",{className:"console-line-message",children:m}),y&&b.jsx("span",{className:"console-line-message",dangerouslySetInnerHTML:{__html:y}}),S&&b.jsx("div",{className:"console-stack",children:S})]})}})}):b.jsx(ai,{text:"No console entries"});function oE(n,e){if(n.length===1)return Z0(n[0].preview,e);const i=typeof n[0].value=="string"&&n[0].value.includes("%"),r=i?n[0].value:"",a=i?n.slice(1):n;let o=0;const u=/%([%sdifoOc])/g;let f;const d=[];let g=[];d.push(b.jsx("span",{children:g},d.length+1));let m=0;for(;(f=u.exec(r))!==null;){const y=r.substring(m,f.index);g.push(b.jsx("span",{children:y},g.length+1)),m=f.index+2;const S=f[0][1];if(S==="%")g.push(b.jsx("span",{children:"%"},g.length+1));else if(S==="s"||S==="o"||S==="O"||S==="d"||S==="i"||S==="f"){const w=a[o++],E={};typeof(w==null?void 0:w.value)!="string"&&(E.color="var(--vscode-debugTokenExpression-number)"),g.push(b.jsx("span",{style:E,children:(w==null?void 0:w.preview)||""},g.length+1))}else if(S==="c"){g=[];const w=a[o++],E=w?cE(w.preview):{};d.push(b.jsx("span",{style:E,children:g},d.length+1))}}for(m<r.length&&g.push(b.jsx("span",{children:r.substring(m)},g.length+1));o<a.length;o++){const y=a[o],S={};g.length&&g.push(b.jsx("span",{children:" "},g.length+1)),typeof(y==null?void 0:y.value)!="string"&&(S.color="var(--vscode-debugTokenExpression-number)"),g.push(b.jsx("span",{style:S,children:(y==null?void 0:y.preview)||""},g.length+1))}return d}function Z0(n,e){return[b.jsx("span",{dangerouslySetInnerHTML:{__html:sl(n.trim(),e)}})]}function cE(n){try{const e={},i=n.split(";");for(const r of i){const a=r.trim();if(!a)continue;let[o,u]=a.split(":");if(o=o.trim(),u=u.trim(),!uE(o))continue;const f=o.replace(/-([a-z])/g,d=>d[1].toUpperCase());e[f]=u}return e}catch{return{}}}function uE(n){return["background","border","color","font","line","margin","padding","text"].some(i=>n.startsWith(i))}const dl=({noShadow:n,children:e,noMinHeight:i,className:r,sidebarBackground:a,onClick:o})=>b.jsx("div",{className:ut("toolbar",n&&"no-shadow",i&&"no-min-height",r,a&&"toolbar-sidebar-background"),onClick:o,children:e}),oc=({tabs:n,selectedTab:e,setSelectedTab:i,leftToolbar:r,rightToolbar:a,dataTestId:o,mode:u})=>{const f=R.useId(),d=R.useRef(null);e||(e=n[0].id),u||(u="default");const g=m=>{var E;const y=Array.from(((E=d.current)==null?void 0:E.querySelectorAll('[role="tab"]'))??[]),S=y.findIndex(x=>x===document.activeElement);if(S===-1)return;let w=S;if(m.key==="ArrowRight")w=(S+1)%y.length;else if(m.key==="ArrowLeft")w=(S-1+y.length)%y.length;else if(m.key==="Home")w=0;else if(m.key==="End")w=y.length-1;else return;m.preventDefault(),y[w].focus(),i==null||i(n[w].id)};return b.jsx("div",{className:"tabbed-pane","data-testid":o,children:b.jsxs("div",{className:"vbox",children:[b.jsxs(dl,{children:[r&&b.jsxs("div",{style:{flex:"none",display:"flex",margin:"0 4px",alignItems:"center"},children:[...r]}),u==="default"&&b.jsx("div",{style:{flex:"auto",display:"flex",height:"100%",overflow:"hidden"},role:"tablist",onKeyDown:g,ref:d,children:[...n.map(m=>b.jsx(W0,{id:m.id,ariaControls:`${f}-${m.id}`,title:m.title,count:m.count,errorCount:m.errorCount,selected:e===m.id,onSelect:i,tabIndex:e===m.id?0:-1},m.id))]}),u==="select"&&b.jsx("div",{style:{flex:"auto",display:"flex",height:"100%",overflow:"hidden"},role:"tablist",children:b.jsx("select",{style:{width:"100%",background:"none",cursor:"pointer"},value:e,onChange:m=>{i==null||i(n[m.currentTarget.selectedIndex].id)},children:n.map(m=>{let y="";return m.count&&(y=` (${m.count})`),m.errorCount&&(y=` (${m.errorCount})`),b.jsxs("option",{value:m.id,role:"tab","aria-controls":`${f}-${m.id}`,children:[m.title,y]},m.id)})})}),a&&b.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center"},children:[...a]})]}),n.map(m=>{const y="tab-content tab-"+m.id;if(m.component)return b.jsx("div",{id:`${f}-${m.id}`,role:"tabpanel","aria-label":m.title,className:y,style:{display:e===m.id?"inherit":"none"},children:m.component},m.id);if(e===m.id)return b.jsx("div",{id:`${f}-${m.id}`,role:"tabpanel","aria-label":m.title,className:y,children:m.render()},m.id)})]})})},W0=({id:n,title:e,count:i,errorCount:r,selected:a,onSelect:o,ariaControls:u,tabIndex:f})=>b.jsxs("div",{className:ut("tabbed-pane-tab",a&&"selected"),onClick:()=>o==null?void 0:o(n),role:"tab",title:e,tabIndex:f??(a?0:-1),"aria-controls":u,"aria-selected":a,children:[b.jsx("div",{className:"tabbed-pane-tab-label",children:e}),!!i&&b.jsx("div",{className:"tabbed-pane-tab-counter",children:i}),!!r&&b.jsx("div",{className:"tabbed-pane-tab-counter error",children:r})]});async function fE(n,e){const i=navigator.platform.includes("Win")?"win":"unix";let r=[];const a=new Set(["accept-encoding","host","method","path","scheme","version","authority","protocol"]);function o(S){return'^"'+S.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/[^a-zA-Z0-9\s_\-:=+~'\/.',?;()*`]/g,"^$&").replace(/%(?=[a-zA-Z0-9_])/g,"%^").replace(/[^ -~\r\n]/g," ").replace(/\r?\n|\r/g,`^
`)+'^"'}function u(S){function w(E){let _=E.charCodeAt(0).toString(16);for(;_.length<4;)_="0"+_;return"\\u"+_}return/[\0-\x1F\x7F-\x9F!]|\'/.test(S)?"$'"+S.replace(/\\/g,"\\\\").replace(/\'/g,"\\'").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\0-\x1F\x7F-\x9F!]/g,w)+"'":"'"+S+"'"}const f=i==="win"?o:u;r.push(f(e.request.url).replace(/[[{}\]]/g,"\\$&"));let d="GET";const g=[],m=await ev(n,e);m&&(g.push("--data-raw "+f(m)),a.add("content-length"),d="POST"),e.request.method!==d&&r.push("-X "+f(e.request.method));const y=e.request.headers;for(let S=0;S<y.length;S++){const w=y[S],E=w.name.replace(/^:/,"");if(a.has(E.toLowerCase()))continue;const x=w.value;x.trim()?E.toLowerCase()==="cookie"?r.push("-b "+f(x)):r.push("-H "+f(E+": "+x)):r.push("-H "+f(E+";"))}return r=r.concat(g),"curl "+r.join(r.length>=3?i==="win"?` ^
  `:` \\
  `:" ")}async function hE(n,e,i=0){const r=new Set(["method","path","scheme","version","accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","cookie","cookie2","date","dnt","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via","user-agent"]),a=new Set(["cookie","authorization"]),o=JSON.stringify(e.request.url),u=e.request.headers,f=u.reduce((x,_)=>{const A=_.name;return!r.has(A.toLowerCase())&&!A.includes(":")&&x.append(A,_.value),x},new Headers),d={};for(const x of f)d[x[0]]=x[1];const g=e.request.cookies.length||u.some(({name:x})=>a.has(x.toLowerCase()))?"include":"omit",m=u.find(({name:x})=>x.toLowerCase()==="referer"),y=m?m.value:void 0,S=await ev(n,e),w={headers:Object.keys(d).length?d:void 0,referrer:y,body:S,method:e.request.method,mode:"cors"};if(i===1){const x=u.find(A=>A.name.toLowerCase()==="cookie"),_={};delete w.mode,x&&(_.cookie=x.value),y&&(delete w.referrer,_.Referer=y),Object.keys(_).length&&(w.headers={...d,..._})}else w.credentials=g;const E=JSON.stringify(w,null,2);return`fetch(${o}, ${E});`}async function ev(n,e){var i,r;return n&&((i=e.request.postData)!=null&&i._sha1)?await fetch(n.createRelativeUrl(`sha1/${e.request.postData._sha1}`)).then(a=>a.text()):(r=e.request.postData)==null?void 0:r.text}class dE{generatePlaywrightRequestCall(e,i){let r=e.method.toLowerCase();const a=new URL(e.url),o=`${a.origin}${a.pathname}`,u={};["delete","get","head","post","put","patch"].includes(r)||(u.method=r,r="fetch"),a.searchParams.size&&(u.params=Object.fromEntries(a.searchParams.entries())),i&&(u.data=i),e.headers.length&&(u.headers=Object.fromEntries(e.headers.map(g=>[g.name,g.value])));const f=[`'${o}'`];return Object.keys(u).length>0&&f.push(this.prettyPrintObject(u)),`await page.request.${r}(${f.join(", ")});`}prettyPrintObject(e,i=2,r=0){if(e===null)return"null";if(e===void 0)return"undefined";if(typeof e!="object")return typeof e=="string"?this.stringLiteral(e):String(e);if(Array.isArray(e)){if(e.length===0)return"[]";const f=" ".repeat(r*i),d=" ".repeat((r+1)*i);return`[
${e.map(m=>`${d}${this.prettyPrintObject(m,i,r+1)}`).join(`,
`)}
${f}]`}if(Object.keys(e).length===0)return"{}";const a=" ".repeat(r*i),o=" ".repeat((r+1)*i);return`{
${Object.entries(e).map(([f,d])=>{const g=this.prettyPrintObject(d,i,r+1),m=/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(f)?f:this.stringLiteral(f);return`${o}${m}: ${g}`}).join(`,
`)}
${a}}`}stringLiteral(e){return e=e.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),e.includes(`
`)||e.includes("\r")||e.includes("    ")?"`"+e+"`":`'${e}'`}}class pE{generatePlaywrightRequestCall(e,i){const r=new URL(e.url),o=[`"${`${r.origin}${r.pathname}`}"`];let u=e.method.toLowerCase();["delete","get","head","post","put","patch"].includes(u)||(o.push(`method="${u}"`),u="fetch"),r.searchParams.size&&o.push(`params=${this.prettyPrintObject(Object.fromEntries(r.searchParams.entries()))}`),i&&o.push(`data=${this.prettyPrintObject(i)}`),e.headers.length&&o.push(`headers=${this.prettyPrintObject(Object.fromEntries(e.headers.map(d=>[d.name,d.value])))}`);const f=o.length===1?o[0]:`
${o.map(d=>this.indent(d,2)).join(`,
`)}
`;return`await page.request.${u}(${f})`}indent(e,i){return e.split(`
`).map(r=>" ".repeat(i)+r).join(`
`)}prettyPrintObject(e,i=2,r=0){if(e===null||e===void 0)return"None";if(typeof e!="object")return typeof e=="string"?this.stringLiteral(e):typeof e=="boolean"?e?"True":"False":String(e);if(Array.isArray(e)){if(e.length===0)return"[]";const f=" ".repeat(r*i),d=" ".repeat((r+1)*i);return`[
${e.map(m=>`${d}${this.prettyPrintObject(m,i,r+1)}`).join(`,
`)}
${f}]`}if(Object.keys(e).length===0)return"{}";const a=" ".repeat(r*i),o=" ".repeat((r+1)*i);return`{
${Object.entries(e).map(([f,d])=>{const g=this.prettyPrintObject(d,i,r+1);return`${o}${this.stringLiteral(f)}: ${g}`}).join(`,
`)}
${a}}`}stringLiteral(e){return JSON.stringify(e)}}class gE{generatePlaywrightRequestCall(e,i){const r=new URL(e.url),a=`${r.origin}${r.pathname}`,o={},u=[];let f=e.method.toLowerCase();["delete","get","head","post","put","patch"].includes(f)||(o.Method=f,f="fetch"),r.searchParams.size&&(o.Params=Object.fromEntries(r.searchParams.entries())),i&&(o.Data=i),e.headers.length&&(o.Headers=Object.fromEntries(e.headers.map(m=>[m.name,m.value])));const d=[`"${a}"`];return Object.keys(o).length>0&&d.push(this.prettyPrintObject(o)),`${u.join(`
`)}${u.length?`
`:""}await request.${this.toFunctionName(f)}(${d.join(", ")});`}toFunctionName(e){return e[0].toUpperCase()+e.slice(1)+"Async"}prettyPrintObject(e,i=2,r=0){if(e===null||e===void 0)return"null";if(typeof e!="object")return typeof e=="string"?this.stringLiteral(e):typeof e=="boolean"?e?"true":"false":String(e);if(Array.isArray(e)){if(e.length===0)return"new object[] {}";const f=" ".repeat(r*i),d=" ".repeat((r+1)*i);return`new object[] {
${e.map(m=>`${d}${this.prettyPrintObject(m,i,r+1)}`).join(`,
`)}
${f}}`}if(Object.keys(e).length===0)return"new {}";const a=" ".repeat(r*i),o=" ".repeat((r+1)*i);return`new() {
${Object.entries(e).map(([f,d])=>{const g=this.prettyPrintObject(d,i,r+1),m=r===0?f:`[${this.stringLiteral(f)}]`;return`${o}${m} = ${g}`}).join(`,
`)}
${a}}`}stringLiteral(e){return JSON.stringify(e)}}class mE{generatePlaywrightRequestCall(e,i){const r=new URL(e.url),a=[`"${r.origin}${r.pathname}"`],o=[];let u=e.method.toLowerCase();["delete","get","head","post","put","patch"].includes(u)||(o.push(`setMethod("${u}")`),u="fetch");for(const[f,d]of r.searchParams)o.push(`setQueryParam(${this.stringLiteral(f)}, ${this.stringLiteral(d)})`);i&&o.push(`setData(${this.stringLiteral(i)})`);for(const f of e.headers)o.push(`setHeader(${this.stringLiteral(f.name)}, ${this.stringLiteral(f.value)})`);return o.length>0&&a.push(`RequestOptions.create()
  .${o.join(`
  .`)}
`),`request.${u}(${a.join(", ")});`}stringLiteral(e){return JSON.stringify(e)}}function yE(n){if(n==="javascript")return new dE;if(n==="python")return new pE;if(n==="csharp")return new gE;if(n==="java")return new mE;throw new Error("Unsupported language: "+n)}const bE=({resource:n,sdkLanguage:e,startTimeOffset:i,onClose:r})=>{const[a,o]=R.useState("headers"),u=Ln(),f=yc(async()=>{if(u&&n.request.postData){const d=n.request.headers.find(m=>m.name.toLowerCase()==="content-type"),g=d?d.value:"";return n.request.postData._sha1?{text:await(await fetch(u.createRelativeUrl(`sha1/${n.request.postData._sha1}`))).text(),mimeType:g}:{text:n.request.postData.text,mimeType:g}}else return null},[n],null);return b.jsx(oc,{leftToolbar:[b.jsx(ct,{icon:"close",title:"Close",onClick:r},"close")],rightToolbar:[b.jsx(vE,{requestBody:f,resource:n,sdkLanguage:e},"dropdown")],tabs:[{id:"headers",title:"Headers",render:()=>b.jsx(tv,{resource:n,startTimeOffset:i})},{id:"payload",title:"Payload",render:()=>b.jsx(SE,{resource:n,requestBody:f})},{id:"response",title:"Response",render:()=>b.jsx(wE,{resource:n})}],selectedTab:a,setSelectedTab:o})},vE=({resource:n,sdkLanguage:e,requestBody:i})=>{const r=Ln(),a=b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"codicon codicon-check",style:{marginRight:"5px"}})," Copied "]}),o=async()=>yE(e).generatePlaywrightRequestCall(n.request,i==null?void 0:i.text);return b.jsxs("div",{className:"copy-request-dropdown",children:[b.jsxs(ct,{className:"copy-request-dropdown-toggle",children:[b.jsx("span",{className:"codicon codicon-copy",style:{marginRight:"5px"}}),"Copy request",b.jsx("span",{className:"codicon codicon-chevron-down",style:{marginLeft:"5px"}})]}),b.jsxs("div",{className:"copy-request-dropdown-menu",children:[b.jsx(Po,{description:"Copy as cURL",copiedDescription:a,value:()=>fE(r,n)}),b.jsx(Po,{description:"Copy as Fetch",copiedDescription:a,value:()=>hE(r,n)}),b.jsx(Po,{description:"Copy as Playwright",copiedDescription:a,value:o})]})]})},fd=({toggled:n,error:e,onToggle:i})=>b.jsx(ct,{icon:"json",title:"Pretty print",toggled:n,errorBadge:e?"Formatting failed":void 0,onClick:r=>{r.stopPropagation(),i()}}),Pa=({title:n,data:e,showCount:i,children:r,titleChildren:a,className:o})=>{const[u,f]=jt(`trace-viewer-network-details-${n.replaceAll(" ","-")}`,!0);return b.jsxs(Q0,{expanded:u,setExpanded:f,expandOnTitleClick:!0,title:b.jsxs(b.Fragment,{children:[b.jsxs("span",{className:"network-request-details-header",children:[n,i&&b.jsxs("span",{className:"network-request-details-header-count",children:[" Ã— ",(e==null?void 0:e.length)??0]})]}),a]}),className:o,children:[e&&b.jsx("table",{className:"network-request-details-table",children:b.jsx("tbody",{children:e.map(({name:d,value:g},m)=>g!==null&&b.jsxs("tr",{children:[b.jsx("td",{children:d}),b.jsx("td",{children:g})]},m))})}),r]})},tv=({resource:n,startTimeOffset:e})=>{const i=R.useMemo(()=>Object.entries({URL:n.request.url,Method:n.request.method,"Status Code":n.response.status===-1?"canceled":n.response.status>0&&b.jsxs("span",{className:kE(n.response.status),children:[" ",n.response.status," ",n.response.statusText]}),Start:yt(e),Duration:yt(n.time)}).map(([r,a])=>({name:r,value:a})),[n,e]);return b.jsxs("div",{className:"vbox network-request-details-tab",children:[b.jsx(Pa,{title:"General",data:i}),b.jsx(Pa,{title:"Request Headers",showCount:!0,data:n.request.headers}),b.jsx(Pa,{title:"Response Headers",showCount:!0,data:n.response.headers})]})},SE=({resource:n,requestBody:e})=>{const[i,r]=jt("trace-viewer-network-details-show-formatted-payload",!0),a=n.request.queryString.length>0,o=!!(e||n.request.postData),u=hd(e,i);return b.jsxs("div",{className:"vbox network-request-details-tab",children:[!a&&!o&&b.jsx("em",{className:"network-request-no-payload",children:"No payload for this request."}),a&&b.jsx(Pa,{title:"Query String Parameters",showCount:!0,data:n.request.queryString}),e&&b.jsx(Pa,{title:"Request Body",className:"network-request-request-body",titleChildren:b.jsxs(b.Fragment,{children:[b.jsx("div",{style:{margin:"auto"}}),b.jsx(fd,{toggled:i,error:u.error,onToggle:()=>r(!i)})]}),children:b.jsx(ds,{text:u.text,mimeType:e.mimeType,readOnly:!0,lineNumbers:!0})})]})},wE=({resource:n})=>{const e=Ln(),[i,r]=R.useState(null);R.useEffect(()=>{(async()=>{if(e&&n.response.content._sha1){const d=n.response.content.mimeType.includes("image"),g=n.response.content.mimeType.includes("font"),m=await fetch(e.createRelativeUrl(`sha1/${n.response.content._sha1}`));if(d){const y=await m.blob(),S=new FileReader,w=new Promise(E=>S.onload=E);S.readAsDataURL(y),r({dataUrl:(await w).target.result})}else if(g){const y=await m.arrayBuffer();r({font:y})}else r({text:await m.text(),mimeType:n.response.content.mimeType})}else r(null)})()},[n,e]);const[a,o]=jt("trace-viewer-network-details-show-formatted-response",!0),u=hd(i,a);return b.jsxs("div",{className:"vbox network-request-details-tab",children:[!n.response.content._sha1&&b.jsx("div",{children:"Response body is not available for this request."}),i&&i.font&&b.jsx(xE,{font:i.font}),i&&i.dataUrl&&b.jsx("div",{children:b.jsx("img",{draggable:"false",src:i.dataUrl})}),i&&i.text!==void 0&&b.jsxs("div",{className:"vbox network-response-body",children:[b.jsx(ds,{text:u.text,mimeType:i.mimeType,readOnly:!0,lineNumbers:!0}),b.jsxs(dl,{noShadow:!0,noMinHeight:!0,className:"network-response-toolbar",children:[b.jsx("div",{style:{margin:"auto"}}),b.jsx(fd,{toggled:a,error:u.error,onToggle:()=>o(!a)})]})]})]})},xE=({font:n})=>{const[e,i]=R.useState(!1);return R.useEffect(()=>{let r;try{r=new FontFace("font-preview",n),r.status==="loaded"&&document.fonts.add(r),r.status==="error"&&i(!0)}catch{i(!0)}return()=>{document.fonts.delete(r)}},[n]),e?b.jsx("div",{className:"network-font-preview-error",children:"Could not load font preview"}):b.jsxs("div",{className:"network-font-preview",children:["ABCDEFGHIJKLM",b.jsx("br",{}),"NOPQRSTUVWXYZ",b.jsx("br",{}),"abcdefghijklm",b.jsx("br",{}),"nopqrstuvwxyz",b.jsx("br",{}),"1234567890"]})},_E=({resource:n,startTimeOffset:e,onClose:i})=>{const[r,a]=R.useState("messages");return b.jsx(oc,{leftToolbar:[b.jsx(ct,{icon:"close",title:"Close",onClick:i},"close")],tabs:[{id:"headers",title:"Headers",render:()=>b.jsx(tv,{resource:n,startTimeOffset:e})},{id:"messages",title:"Messages",render:()=>b.jsx(EE,{resource:n})}],selectedTab:r,setSelectedTab:a})},EE=({resource:n})=>{const e=Ln(),i=yc(async()=>{if(n._webSocketMessages)return n._webSocketMessages.map((d,g)=>({...d,index:g,byteLength:Uh(d)}));if(e&&n.response.content._sha1)try{const d=await fetch(e.createRelativeUrl(`sha1/${n.response.content._sha1}`));return d.ok?(await d.text()).split(`
`).filter(Boolean).map(y=>JSON.parse(y)).map((y,S)=>({...y,index:S,byteLength:Uh(y)})):[]}catch{return[]}return[]},[n,e],void 0),[r,a]=R.useState(void 0),o=r!==void 0?i==null?void 0:i[r]:void 0,u=R.useMemo(()=>{if(i){for(const d of i)if(d.time>0)return d.time}},[i]);if(i===void 0)return b.jsx(ai,{text:"Loading..."});if(i.length===0)return b.jsx(ai,{text:"No messages captured"});const f=b.jsx(TE,{name:"network-websocket-messages",ariaLabel:"WebSocket messages",items:i,id:d=>String(d.index),selectedItem:o,onSelected:d=>a(d.index),render:d=>CE(d,u)});return o?b.jsx(il,{sidebarSize:200,orientation:"vertical",sidebarIsFirst:!1,settingName:"networkWebSocketMessageDetails",main:f,sidebar:b.jsx(AE,{message:o})}):f},TE=hl,AE=({message:n})=>{const[e,i]=jt("trace-viewer-network-details-show-formatted-message",!0),r=R.useMemo(()=>{if(n.opcode===1){const o=n.data;let u;try{JSON.parse(o),u="application/json"}catch{u="text/plain"}return{text:o,mimeType:u}}if(n.opcode===8||n.opcode===9||n.opcode===10){if(!n.data)return{text:""};try{return{text:LE(n.data),mimeType:"text/plain"}}catch{return{text:wb(n.data)}}}return{text:wb(n.data)}},[n]),a=hd(r,e);return b.jsxs("div",{className:"vbox network-websocket-message-detail",children:[b.jsxs(dl,{noShadow:!0,noMinHeight:!0,className:"network-websocket-message-detail-toolbar",children:[b.jsxs("span",{className:"network-websocket-message-detail-summary",children:[n.type==="send"?"Sent":"Received"," Â· ",nv(n.opcode)," Â· ",bc(Uh(n))]}),b.jsx("div",{style:{margin:"auto"}}),b.jsx(fd,{toggled:e,error:a.error,onToggle:()=>i(!e)})]}),b.jsx("div",{className:"vbox network-websocket-message-detail-body",children:b.jsx(ds,{text:a.text,mimeType:r.mimeType,readOnly:!0,lineNumbers:!0})})]})};function CE(n,e){const i=n.type==="send"?"codicon-arrow-up":"codicon-arrow-down",r=n.type==="send"?"Sent":"Received",a=nv(n.opcode),o=n.time>0&&e!==void 0?yt(n.time-e):"-",u=NE(n);return b.jsxs("div",{className:"network-websocket-message-row",children:[b.jsx("span",{className:`network-websocket-message-direction-${n.type} codicon ${i}`,title:r}),b.jsx("span",{className:"network-websocket-message-preview",title:u,children:u}),b.jsx("span",{className:"network-websocket-message-opcode",title:`Opcode ${n.opcode}`,children:a}),b.jsx("span",{className:"network-websocket-message-length",title:`${n.byteLength} bytes`,children:bc(n.byteLength)}),b.jsx("span",{className:"network-websocket-message-time",children:o})]})}function nv(n){switch(n){case 0:return"Continuation";case 1:return"Text";case 2:return"Binary";case 8:return"Close";case 9:return"Ping";case 10:return"Pong";default:return`Opcode ${n}`}}function Uh(n){return n.opcode===1?new TextEncoder().encode(n.data).length:iv(n.data)}function NE(n){if(n.opcode===1){const e=n.data.replace(/\s+/g," ");return e.length>200?e.substring(0,200)+"…":e}return n.opcode===8?"(close)":n.opcode===9?"(ping)":n.opcode===10?"(pong)":`(binary, ${bc(iv(n.data))})`}function kE(n){return n<300||n===304?"green-circle":n<400?"yellow-circle":"red-circle"}const ME=/<[^>]+>[^<]*<\//;function OE(n,e="  "){let i=0;const r=[],a=n.replace(/>\s*</g,`>
<`).split(`
`);for(const o of a){const u=o.trim();u&&(u.startsWith("</")?(i=Math.max(i-1,0),r.push(e.repeat(i)+u)):u.endsWith("/>")||u.startsWith("<?")||ME.test(u)?r.push(e.repeat(i)+u):u.startsWith("<")?(r.push(e.repeat(i)+u),i++):r.push(e.repeat(i)+u))}return r.join(`
`)}function jE(n,e){return!n.trim()||!e?n:F_(e)?JSON.stringify(JSON.parse(n),null,2):Q_(e)?OE(n):e.includes("application/x-www-form-urlencoded")?decodeURIComponent(n):n}const hd=(n,e)=>R.useMemo(()=>{if((n==null?void 0:n.text)===void 0)return{text:""};if(!e)return{text:n.text};try{return{text:jE(n.text,n.mimeType)}}catch{return{text:n.text,error:!0}}},[n,e]);function iv(n){if(!n)return 0;const e=n[n.length-2]==="="?2:n[n.length-1]==="="?1:0;return Math.max(0,Math.floor(n.length*3/4)-e)}function LE(n){const e=atob(n),i=new Uint8Array(e.length);for(let r=0;r<e.length;++r)i[r]=e.charCodeAt(r);return new TextDecoder("utf-8",{fatal:!1}).decode(i)}function wb(n){if(!n)return"";const e=atob(n),i=[];for(let r=0;r<e.length;r+=16){const a=Math.min(16,e.length-r),o=[],u=[];for(let f=0;f<16;++f){if(f<a){const d=e.charCodeAt(r+f);o.push(d.toString(16).padStart(2,"0")),u.push(d>=32&&d<127?e[r+f]:".")}else o.push("  ");f===7&&o.push("")}i.push(`${r.toString(16).padStart(8,"0")}  ${o.join(" ")}  ${u.join("")}`)}return i.join(`
`)}function RE(n){const[e,i]=R.useState([]);R.useEffect(()=>{const o=[];for(let u=0;u<n.columns.length-1;++u){const f=n.columns[u];o[u]=(o[u-1]||0)+n.columnWidths.get(f)}i(o)},[n.columns,n.columnWidths]);function r(o){const u=new Map(n.columnWidths.entries());for(let f=0;f<o.length;++f){const d=o[f]-(o[f-1]||0),g=n.columns[f];u.set(g,d)}n.setColumnWidths(u)}const a=R.useCallback(o=>{var u,f;(f=n.setSorting)==null||f.call(n,{by:o,negate:((u=n.sorting)==null?void 0:u.by)===o?!n.sorting.negate:!1})},[n]);return b.jsxs("div",{className:`grid-view ${n.name}-grid-view`,children:[b.jsx(F0,{orientation:"horizontal",offsets:e,setOffsets:r,resizerColor:"var(--vscode-panel-border)",resizerWidth:1,minColumnWidth:25}),b.jsxs("div",{className:"vbox",children:[b.jsx("div",{className:"grid-view-header",children:n.columns.map((o,u)=>b.jsxs("div",{className:"grid-view-header-cell "+DE(o,n.sorting),style:{width:u<n.columns.length-1?n.columnWidths.get(o):void 0},onClick:()=>n.setSorting&&a(o),children:[b.jsx("span",{className:"grid-view-header-cell-title",children:n.columnTitle(o)}),b.jsx("span",{className:"codicon codicon-triangle-up"}),b.jsx("span",{className:"codicon codicon-triangle-down"})]},n.columnTitle(o)))}),b.jsx(hl,{name:n.name,items:n.items,ariaLabel:n.ariaLabel,id:n.id,render:(o,u)=>b.jsx(b.Fragment,{children:n.columns.map((f,d)=>{const{body:g,title:m}=n.render(o,f,u);return b.jsx("div",{className:`grid-view-cell grid-view-column-${String(f)}`,title:m,style:{width:d<n.columns.length-1?n.columnWidths.get(f):void 0},children:g},n.columnTitle(f))})}),icon:n.icon,isError:n.isError,isWarning:n.isWarning,isInfo:n.isInfo,selectedItem:n.selectedItem,onAccepted:n.onAccepted,onSelected:n.onSelected,onHighlighted:n.onHighlighted,onIconClicked:n.onIconClicked,noItemsMessage:n.noItemsMessage,dataTestId:n.dataTestId,notSelectable:n.notSelectable})]})]})}function DE(n,e){return n===(e==null?void 0:e.by)?" filter-"+(e.negate?"negative":"positive"):""}const zE=["Fetch","HTML","JS","CSS","Font","Image","WS"],UE={searchValue:"",resourceTypes:new Set},HE=({filterState:n,onFilterStateChange:e})=>b.jsxs("div",{className:"network-filters",children:[b.jsx("input",{type:"search",placeholder:"Filter network",spellCheck:!1,value:n.searchValue,onChange:i=>e({...n,searchValue:i.target.value})}),b.jsxs("div",{className:"network-filters-resource-types",role:"tablist","aria-multiselectable":"true",children:[b.jsx("div",{title:"All",onClick:()=>e({...n,resourceTypes:new Set}),className:`network-filters-resource-type ${n.resourceTypes.size===0?"selected":""}`,children:"All"}),zE.map(i=>b.jsx("div",{title:i,onClick:r=>{let a;r.ctrlKey||r.metaKey?a=n.resourceTypes.symmetricDifference(new Set([i])):a=new Set([i]),e({...n,resourceTypes:a})},className:`network-filters-resource-type ${n.resourceTypes.has(i)?"selected":""}`,role:"tab","aria-selected":n.resourceTypes.has(i),children:i},i))]})]}),BE=RE;function qE(n,e,i){const r=R.useMemo(()=>((n==null?void 0:n.resources)||[]).filter(f=>e?!!f._monotonicTime&&f._monotonicTime>=e.minimum&&f._monotonicTime<=e.maximum:!0),[n,e,i]),a=R.useMemo(()=>new XE(n),[n]);return{resources:r,contextIdMap:a}}const $E=({boundaries:n,networkModel:e,onResourceHovered:i,sdkLanguage:r})=>{const[a,o]=R.useState(void 0),[u,f]=R.useState(void 0),[d,g]=R.useState(UE),{renderedEntries:m}=R.useMemo(()=>{const _=e.resources.map(A=>YE(A,n,e.contextIdMap)).filter(WE(d));return a&&PE(_,a),{renderedEntries:_}},[e.resources,e.contextIdMap,d,a,n]),y=R.useMemo(()=>u?m.find(_=>_.resource.id===u):void 0,[u,m]),[S,w]=R.useState(()=>new Map(sv().map(_=>[_,VE(_)]))),E=R.useCallback(_=>{g(_),f(void 0)},[]);if(!e.resources.length)return b.jsx(ai,{text:"No network calls"});const x=b.jsx(BE,{name:"network",ariaLabel:"Network requests",items:m,selectedItem:y,onSelected:_=>f(_.resource.id),onHighlighted:_=>i==null?void 0:i(_?FE(_.resource):void 0),columns:GE(!!y,m),columnTitle:IE,columnWidths:S,setColumnWidths:w,isError:_=>_.status.code>=400||_.status.code===-1,isInfo:_=>!!_.route,render:(_,A)=>KE(_,A),sorting:a,setSorting:o});return b.jsxs(b.Fragment,{children:[b.jsx(HE,{filterState:d,onFilterStateChange:E}),!y&&x,y&&b.jsx(il,{sidebarSize:S.get("name"),sidebarIsFirst:!0,orientation:"horizontal",settingName:"networkResourceDetails",main:y.resource._resourceType==="websocket"?b.jsx(_E,{resource:y.resource,startTimeOffset:y.start,onClose:()=>f(void 0)}):b.jsx(bE,{resource:y.resource,sdkLanguage:r,startTimeOffset:y.start,onClose:()=>f(void 0)}),sidebar:x})]})},IE=n=>n==="contextId"?"Source":n==="name"?"Name":n==="method"?"Method":n==="status"?"Status":n==="contentType"?"Content Type":n==="duration"?"Duration":n==="size"?"Size":n==="start"?"Start":n==="route"?"Route":"",VE=n=>n==="name"?200:n==="method"||n==="status"?60:n==="contentType"?200:n==="contextId"?60:100;function GE(n,e){if(n){const r=["name"];return xb(e)&&r.unshift("contextId"),r}let i=sv();return xb(e)||(i=i.filter(r=>r!=="contextId")),i}function sv(){return["contextId","name","method","status","contentType","duration","size","start","route"]}const KE=(n,e)=>e==="contextId"?{body:n.contextId,title:n.name.url}:e==="name"?{body:n.name.name,title:n.name.url}:e==="method"?{body:n.method}:e==="status"?{body:n.status.code===-1?"canceled":n.status.code>0?n.status.code:"",title:n.status.code===-1?"canceled":n.status.text}:e==="contentType"?{body:n.contentType}:e==="duration"?{body:yt(n.duration)}:e==="size"?{body:bc(n.size)}:e==="start"?{body:yt(n.start)}:e==="route"?{body:n.route}:{body:""};class XE{constructor(e){this._pagerefToShortId=new Map,this._contextToId=new Map,this._lastPageId=0,this._lastApiRequestContextId=0}contextId(e){return e.pageref?this._pageId(e.pageref):e._apiRequest?this._apiRequestContextId(e):""}_pageId(e){let i=this._pagerefToShortId.get(e);return i||(++this._lastPageId,i="page#"+this._lastPageId,this._pagerefToShortId.set(e,i)),i}_apiRequestContextId(e){const i=S0(e);if(!i)return"";let r=this._contextToId.get(i);return r||(++this._lastApiRequestContextId,r="api#"+this._lastApiRequestContextId,this._contextToId.set(i,r)),r}}function xb(n){const e=new Set;for(const i of n)if(e.add(i.contextId),e.size>1)return!0;return!1}const YE=(n,e,i)=>{const r=QE(n);let a;try{const u=new URL(n.request.url);a=u.pathname.substring(u.pathname.lastIndexOf("/")+1),a||(a=u.host),u.search&&(a+=u.search)}catch{a=n.request.url}let o;if(n._resourceType==="websocket")o="websocket";else{o=n.response.content.mimeType;const u=o.match(/^(.*);\s*charset=.*$/);u&&(o=u[1])}return{name:{name:a,url:n.request.url},method:n.request.method,status:{code:n.response.status,text:n.response.statusText},contentType:o,duration:n.time,size:n.response._transferSize>0?n.response._transferSize:n.response.bodySize,start:n._monotonicTime-e.minimum,route:r,resource:n,contextId:i.contextId(n)}};function FE(n){if(n._monotonicTime)return{minimum:n._monotonicTime,maximum:n._monotonicTime+n.time}}function QE(n){return n._wasAborted?"aborted":n._wasContinued?"continued":n._wasFulfilled?"fulfilled":n._apiRequest?"api":""}function PE(n,e){const i=JE(e==null?void 0:e.by);i&&n.sort(i),e.negate&&n.reverse()}function JE(n){if(n==="start")return(e,i)=>e.start-i.start;if(n==="duration")return(e,i)=>e.duration-i.duration;if(n==="status")return(e,i)=>e.status.code-i.status.code;if(n==="method")return(e,i)=>{const r=e.method,a=i.method;return r.localeCompare(a)};if(n==="size")return(e,i)=>e.size-i.size;if(n==="contentType")return(e,i)=>e.contentType.localeCompare(i.contentType);if(n==="name")return(e,i)=>e.name.name.localeCompare(i.name.name);if(n==="route")return(e,i)=>e.route.localeCompare(i.route);if(n==="contextId")return(e,i)=>e.contextId.localeCompare(i.contextId)}const ZE={Fetch:n=>n.contentType==="application/json",HTML:n=>n.contentType==="text/html",CSS:n=>n.contentType==="text/css",JS:n=>n.contentType.includes("javascript"),Font:n=>n.contentType.includes("font"),Image:n=>n.contentType.includes("image"),WS:n=>n.resource._resourceType==="websocket"};function WE({searchValue:n,resourceTypes:e}){return i=>(e.size===0||Array.from(e).some(a=>ZE[a](i)))&&i.name.url.toLowerCase().includes(n.toLowerCase())}function eT(n,e){if(n.role!==e.role||n.name!==e.name||!tT(n,e)||cc(n)!==cc(e))return!1;const i=Object.keys(n.props),r=Object.keys(e.props);return i.length===r.length&&i.every(a=>n.props[a]===e.props[a])}function cc(n){return n.box.cursor==="pointer"}function tT(n,e){return n.active===e.active&&n.checked===e.checked&&n.disabled===e.disabled&&n.expanded===e.expanded&&n.invalid===e.invalid&&n.selected===e.selected&&n.level===e.level&&n.pressed===e.pressed}function dd(n,e,i={}){var S;const r=new n.LineCounter,a={keepSourceTokens:!0,lineCounter:r,...i},o=n.parseDocument(e,a),u=[],f=w=>[r.linePos(w[0]),r.linePos(w[1])],d=w=>{u.push({message:w.message,range:[r.linePos(w.pos[0]),r.linePos(w.pos[1])]})},g=(w,E)=>{for(const x of E.items){if(x instanceof n.Scalar&&typeof x.value=="string"){const C=uc.parse(x,a,u);C&&(w.children=w.children||[],w.children.push(C));continue}if(x instanceof n.YAMLMap){m(w,x);continue}u.push({message:"Sequence items should be strings or maps",range:f(x.range||E.range)})}},m=(w,E)=>{for(const x of E.items){if(w.children=w.children||[],!(x.key instanceof n.Scalar&&typeof x.key.value=="string")){u.push({message:"Only string keys are supported",range:f(x.key.range||E.range)});continue}const A=x.key,C=x.value;if(A.value==="text"){if(!(C instanceof n.Scalar&&typeof C.value=="string")){u.push({message:"Text value should be a string",range:f(x.value.range||E.range)});continue}w.children.push({kind:"text",text:hh(C.value)});continue}if(A.value==="/children"){if(!(C instanceof n.Scalar&&typeof C.value=="string")||C.value!=="contain"&&C.value!=="equal"&&C.value!=="deep-equal"){u.push({message:'Strict value should be "contain", "equal" or "deep-equal"',range:f(x.value.range||E.range)});continue}w.containerMode=C.value;continue}if(A.value.startsWith("/")){if(!(C instanceof n.Scalar&&typeof C.value=="string")){u.push({message:"Property value should be a string",range:f(x.value.range||E.range)});continue}w.props=w.props??{},w.props[A.value.slice(1)]=hh(C.value);continue}const H=uc.parse(A,a,u);if(!H)continue;if(C instanceof n.Scalar){const Q=typeof C.value;if(Q!=="string"&&Q!=="number"&&Q!=="boolean"){u.push({message:"Node value should be a string or a sequence",range:f(x.value.range||E.range)});continue}w.children.push({...H,children:[{kind:"text",text:hh(String(C.value))}]});continue}if(C instanceof n.YAMLSeq){w.children.push(H),g(H,C);continue}u.push({message:"Map values should be strings or sequences",range:f(x.value.range||E.range)})}},y={kind:"role",role:"fragment"};return o.errors.forEach(d),u.length?{errors:u,fragment:y}:(o.contents instanceof n.YAMLSeq||u.push({message:'Aria snapshot must be a YAML sequence, elements starting with " -"',range:o.contents?f(o.contents.range):[{line:0,col:0},{line:0,col:0}]}),u.length?{errors:u,fragment:y}:(g(y,o.contents),u.length?{errors:u,fragment:nT}:((S=y.children)==null?void 0:S.length)===1&&(!y.containerMode||y.containerMode==="contain")?{fragment:y.children[0],errors:[]}:{fragment:y,errors:[]}))}const nT={kind:"role",role:"fragment"};function rv(n){return n.replace(/[\u200b\u00ad]/g,"").replace(/[\r\n\s\t]+/g," ").trim()}function hh(n){return{raw:n,normalized:rv(n)}}class uc{static parse(e,i,r){try{return new uc(e.value)._parse()}catch(a){if(a instanceof _b){const o=i.prettyErrors===!1?a.message:a.message+`:
`+e.value+`
`+" ".repeat(a.pos)+`^
`;return r.push({message:o,range:[i.lineCounter.linePos(e.range[0]),i.lineCounter.linePos(e.range[0]+a.pos)]}),null}throw a}}constructor(e){this._input=e,this._pos=0,this._length=e.length}_peek(){return this._input[this._pos]||""}_next(){return this._pos<this._length?this._input[this._pos++]:null}_eof(){return this._pos>=this._length}_isWhitespace(){return!this._eof()&&/\s/.test(this._peek())}_skipWhitespace(){for(;this._isWhitespace();)this._pos++}_readIdentifier(e){this._eof()&&this._throwError(`Unexpected end of input when expecting ${e}`);const i=this._pos;for(;!this._eof()&&/[a-zA-Z]/.test(this._peek());)this._pos++;return this._input.slice(i,this._pos)}_readString(){let e="",i=!1;for(;!this._eof();){const r=this._next();if(i)e+=r,i=!1;else if(r==="\\")i=!0;else{if(r==='"')return e;e+=r}}this._throwError("Unterminated string")}_throwError(e,i=0){throw new _b(e,i||this._pos)}_readRegex(){let e="",i=!1,r=!1;for(;!this._eof();){const a=this._next();if(i)e+=a,i=!1;else if(a==="\\")i=!0,e+=a;else{if(a==="/"&&!r)return{pattern:e};a==="["?(r=!0,e+=a):a==="]"&&r?(e+=a,r=!1):e+=a}}this._throwError("Unterminated regex")}_readStringOrRegex(){const e=this._peek();return e==='"'?(this._next(),rv(this._readString())):e==="/"?(this._next(),this._readRegex()):null}_readAttributes(e){let i=this._pos;for(;this._skipWhitespace(),this._peek()==="[";){this._next(),this._skipWhitespace(),i=this._pos;const r=this._readIdentifier("attribute");this._skipWhitespace();let a="";if(this._peek()==="=")for(this._next(),this._skipWhitespace(),i=this._pos;this._peek()!=="]"&&!this._isWhitespace()&&!this._eof();)a+=this._next();this._skipWhitespace(),this._peek()!=="]"&&this._throwError("Expected ]"),this._next(),this._applyAttribute(e,r,a||"true",i)}}_parse(){this._skipWhitespace();const e=this._readIdentifier("role");this._skipWhitespace();const i=this._readStringOrRegex()||"",r={kind:"role",role:e,name:i};return this._readAttributes(r),this._skipWhitespace(),this._eof()||this._throwError("Unexpected input"),r}_applyAttribute(e,i,r,a){if(i==="checked"){this._assert(r==="true"||r==="false"||r==="mixed",'Value of "checked" attribute must be a boolean or "mixed"',a),e.checked=r==="true"?!0:r==="false"?!1:"mixed";return}if(i==="disabled"){this._assert(r==="true"||r==="false",'Value of "disabled" attribute must be a boolean',a),e.disabled=r==="true";return}if(i==="expanded"){this._assert(r==="true"||r==="false",'Value of "expanded" attribute must be a boolean',a),e.expanded=r==="true";return}if(i==="active"){this._assert(r==="true"||r==="false",'Value of "active" attribute must be a boolean',a),e.active=r==="true";return}if(i==="invalid"){this._assert(r==="true"||r==="false"||r==="grammar"||r==="spelling",'Value of "invalid" attribute must be a boolean, "grammar" or "spelling"',a),e.invalid=r==="true"?!0:r==="false"?!1:r;return}if(i==="level"){this._assert(!isNaN(Number(r)),'Value of "level" attribute must be a number',a),e.level=Number(r);return}if(i==="pressed"){this._assert(r==="true"||r==="false"||r==="mixed",'Value of "pressed" attribute must be a boolean or "mixed"',a),e.pressed=r==="true"?!0:r==="false"?!1:"mixed";return}if(i==="selected"){this._assert(r==="true"||r==="false",'Value of "selected" attribute must be a boolean',a),e.selected=r==="true";return}this._assert(!1,`Unsupported attribute [${i}]`,a)}_assert(e,i,r){e||this._throwError(i||"Assertion error",r)}}class _b extends Error{constructor(e,i){super(e),this.pos=i}}function iT(n,e){var u,f;function i(d,g,m){let y=1,S=m+y;for(const w of d.children||[])typeof w=="string"?(y++,S++):(y+=i(w,g,S),S+=y);if(!["none","presentation","fragment","iframe","generic"].includes(d.role)&&d.name){let w=g.get(d.role);w||(w=new Map,g.set(d.role,w));const E=w.get(d.name),x=y*100-m;(!E||E.sizeAndPosition<x)&&w.set(d.name,{node:d,sizeAndPosition:x})}return y}const r=new Map;n&&i(n,r,0);const a=new Map;i(e,a,0);const o=[];for(const[d,g]of a)for(const[m,y]of g)((u=r.get(d))==null?void 0:u.get(m))||o.push(y);return o.sort((d,g)=>g.sizeAndPosition-d.sizeAndPosition),(f=o[0])==null?void 0:f.node}function pd(n,e,i){return`internal:attr=[${n}=${Ze(e,(i==null?void 0:i.exact)||!1)}]`}function av(n){return n.split(",")}function lv(n){return n.includes(",")?JSON.stringify(n):n}function sT(n,e){return`internal:testid=[${lv(n)}=${Ze(e,!0)}]`}function rT(n,e){return"internal:label="+Vt(n,!!(e!=null&&e.exact))}function aT(n,e){return pd("alt",n,e)}function lT(n,e){return pd("title",n,e)}function oT(n,e){return pd("placeholder",n,e)}function cT(n,e){return"internal:text="+Vt(n,!!(e!=null&&e.exact))}function uT(n,e={}){const i=[];return e.checked!==void 0&&i.push(["checked",String(e.checked)]),e.disabled!==void 0&&i.push(["disabled",String(e.disabled)]),e.selected!==void 0&&i.push(["selected",String(e.selected)]),e.expanded!==void 0&&i.push(["expanded",String(e.expanded)]),e.includeHidden!==void 0&&i.push(["include-hidden",String(e.includeHidden)]),e.level!==void 0&&i.push(["level",String(e.level)]),e.name!==void 0&&i.push(["name",Ze(e.name,!!e.exact)]),e.description!==void 0&&i.push(["description",Ze(e.description,!!e.exact)]),e.pressed!==void 0&&i.push(["pressed",String(e.pressed)]),`internal:role=${n}${i.map(([r,a])=>`[${r}=${a}]`).join("")}`}function fT(n){return ov(n)?"'"+n.replace(/'/g,"''")+"'":n}function dh(n){return ov(n)?'"'+n.replace(/[\\"\x00-\x1f\x7f-\x9f]/g,e=>{switch(e){case"\\":return"\\\\";case'"':return'\\"';case"\b":return"\\b";case"\f":return"\\f";case`
`:return"\\n";case"\r":return"\\r";case"    ":return"\\t";default:return"\\x"+e.charCodeAt(0).toString(16).padStart(2,"0")}})+'"':n}function ov(n){return!!(n.length===0||/^\s|\s$/.test(n)||/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f-\x9f]/.test(n)||/^-/.test(n)||/[\n:](\s|$)/.test(n)||/\s#/.test(n)||/[\n\r]/.test(n)||/^[&*\],?!>|@"'#%]/.test(n)||/[{}`]/.test(n)||/^\[/.test(n)||!isNaN(Number(n))||["y","n","yes","no","true","false","on","off","null"].includes(n.toLowerCase()))}let cv={};function hT(n){cv=n}function Hh(n,e){for(;e;){if(n.contains(e))return!0;e=fv(e)}return!1}function Ct(n){if(n.parentElement)return n.parentElement;if(n.parentNode&&n.parentNode.nodeType===11&&n.parentNode.host)return n.parentNode.host}function uv(n){let e=n;for(;e.parentNode;)e=e.parentNode;if(e.nodeType===11||e.nodeType===9)return e}function fv(n){for(;n.parentElement;)n=n.parentElement;return Ct(n)}function Va(n,e,i){for(;n;){const r=n.closest(e);if(i&&r!==i&&(r!=null&&r.contains(i)))return;if(r)return r;n=fv(n)}}function Ui(n,e){const i=e==="::before"?md:e==="::after"?yd:gd;if(i&&i.has(n))return i.get(n);const r=n.ownerDocument&&n.ownerDocument.defaultView?n.ownerDocument.defaultView.getComputedStyle(n,e):void 0;return i==null||i.set(n,r),r}function hv(n,e){if(e=e??Ui(n),!e)return!0;if(Element.prototype.checkVisibility&&cv.browserNameForWorkarounds!=="webkit"){if(!n.checkVisibility())return!1}else{const i=n.closest("details,summary");if(i!==n&&(i==null?void 0:i.nodeName)==="DETAILS"&&!i.open)return!1}return e.visibility==="visible"}function fc(n){const e=Ui(n);if(!e)return{visible:!0,inline:!1};const i=e.cursor;if(e.display==="contents"){for(let a=n.firstChild;a;a=a.nextSibling){if(a.nodeType===1&&ii(a))return{visible:!0,inline:!1,cursor:i};if(a.nodeType===3&&dv(a))return{visible:!0,inline:!0,cursor:i}}return{visible:!1,inline:!1,cursor:i}}if(!hv(n,e))return{cursor:i,visible:!1,inline:!1};const r=n.getBoundingClientRect();return{cursor:i,visible:r.width>0&&r.height>0,inline:e.display==="inline"}}function ii(n){return fc(n).visible}function dv(n){const e=n.ownerDocument.createRange();e.selectNode(n);const i=e.getBoundingClientRect();return i.width>0&&i.height>0}function et(n){const e=n.tagName;return typeof e=="string"?e.toUpperCase():n instanceof HTMLFormElement?"FORM":n.tagName.toUpperCase()}let gd,md,yd,pv=0;function bd(){++pv,gd??(gd=new Map),md??(md=new Map),yd??(yd=new Map)}function vd(){--pv||(gd=void 0,md=void 0,yd=void 0)}function Eb(n){return n.hasAttribute("aria-label")||n.hasAttribute("aria-labelledby")}const Tb="article:not([role]), aside:not([role]), main:not([role]), nav:not([role]), section:not([role]), [role=article], [role=complementary], [role=main], [role=navigation], [role=region]",dT=[["aria-atomic",void 0],["aria-busy",void 0],["aria-controls",void 0],["aria-current",void 0],["aria-describedby",void 0],["aria-details",void 0],["aria-dropeffect",void 0],["aria-flowto",void 0],["aria-grabbed",void 0],["aria-hidden",void 0],["aria-keyshortcuts",void 0],["aria-label",["caption","code","deletion","emphasis","generic","insertion","paragraph","presentation","strong","subscript","superscript"]],["aria-labelledby",["caption","code","deletion","emphasis","generic","insertion","paragraph","presentation","strong","subscript","superscript"]],["aria-live",void 0],["aria-owns",void 0],["aria-relevant",void 0],["aria-roledescription",["generic"]]];function gv(n,e){return dT.some(([i,r])=>!(r!=null&&r.includes(e||""))&&n.hasAttribute(i))}function mv(n){return!Number.isNaN(Number(String(n.getAttribute("tabindex"))))}function pT(n){return!kv(n)&&(gT(n)||mv(n))}function gT(n){const e=et(n);return["BUTTON","DETAILS","SELECT","TEXTAREA"].includes(e)?!0:e==="A"||e==="AREA"?n.hasAttribute("href"):e==="INPUT"?!n.hidden:!1}const ph={A:n=>n.hasAttribute("href")?"link":null,AREA:n=>n.hasAttribute("href")?"link":null,ARTICLE:()=>"article",ASIDE:()=>"complementary",BLOCKQUOTE:()=>"blockquote",BUTTON:()=>"button",CAPTION:()=>"caption",CODE:()=>"code",DATALIST:()=>"listbox",DD:()=>"definition",DEL:()=>"deletion",DETAILS:()=>"group",DFN:()=>"term",DIALOG:()=>"dialog",DT:()=>"term",EM:()=>"emphasis",FIELDSET:()=>"group",FIGURE:()=>"figure",FOOTER:n=>Va(n,Tb)?null:"contentinfo",FORM:n=>Eb(n)?"form":null,H1:()=>"heading",H2:()=>"heading",H3:()=>"heading",H4:()=>"heading",H5:()=>"heading",H6:()=>"heading",HEADER:n=>Va(n,Tb)?null:"banner",HR:()=>"separator",HTML:()=>"document",IMG:n=>n.getAttribute("alt")===""&&!n.getAttribute("title")&&!gv(n)&&!mv(n)?"presentation":"img",INPUT:n=>{const e=n.type.toLowerCase();if(e==="search")return n.hasAttribute("list")?"combobox":"searchbox";if(["email","tel","text","url",""].includes(e)){const i=jr(n,n.getAttribute("list"))[0];return i&&et(i)==="DATALIST"?"combobox":"textbox"}return e==="hidden"?null:e==="file"?"button":OT[e]||"textbox"},INS:()=>"insertion",LI:()=>"listitem",MAIN:()=>"main",MARK:()=>"mark",MATH:()=>"math",MENU:()=>"list",METER:()=>"meter",NAV:()=>"navigation",OL:()=>"list",OPTGROUP:()=>"group",OPTION:()=>"option",OUTPUT:()=>"status",P:()=>"paragraph",PROGRESS:()=>"progressbar",SEARCH:()=>"search",SECTION:n=>Eb(n)?"region":null,SELECT:n=>n.hasAttribute("multiple")||n.size>1?"listbox":"combobox",STRONG:()=>"strong",SUB:()=>"subscript",SUP:()=>"superscript",SVG:()=>"img",TABLE:()=>"table",TBODY:()=>"rowgroup",TD:n=>{const e=Va(n,"table"),i=e?Sd(e):"";return i==="grid"||i==="treegrid"?"gridcell":"cell"},TEXTAREA:()=>"textbox",TFOOT:()=>"rowgroup",TH:n=>{const e=n.getAttribute("scope");if(e==="col"||e==="colgroup")return"columnheader";if(e==="row"||e==="rowgroup")return"rowheader";const i=n.nextElementSibling,r=n.previousElementSibling,a=n.parentElement&&et(n.parentElement)==="TR"?n.parentElement:void 0;if(!i&&!r){if(a){const o=Va(a,"table");if(o&&o.rows.length<=1)return null}return"columnheader"}return Ab(i)&&Ab(r)?"columnheader":Cb(i)||Cb(r)?"rowheader":"columnheader"},THEAD:()=>"rowgroup",TIME:()=>"time",TR:()=>"row",UL:()=>"list"};function Ab(n){return!!n&&et(n)==="TH"}function Cb(n){var e;return!n||et(n)!=="TD"?!1:!!((e=n.textContent)!=null&&e.trim()||n.children.length>0)}const mT={DD:["DL","DIV"],DIV:["DL"],DT:["DL","DIV"],LI:["OL","UL"],TBODY:["TABLE"],TD:["TR"],TFOOT:["TABLE"],TH:["TR"],THEAD:["TABLE"],TR:["THEAD","TBODY","TFOOT","TABLE"]};function Nb(n){var r;const e=((r=ph[et(n)])==null?void 0:r.call(ph,n))||"";if(!e)return null;let i=n;for(;i;){const a=Ct(i),o=mT[et(i)];if(!o||!a||!o.includes(et(a)))break;const u=Sd(a);if((u==="none"||u==="presentation")&&!yv(a,u))return u;i=a}return e}const yT=["alert","alertdialog","application","article","banner","blockquote","button","caption","cell","checkbox","code","columnheader","combobox","complementary","contentinfo","definition","deletion","dialog","directory","document","emphasis","feed","figure","form","generic","grid","gridcell","group","heading","img","insertion","link","list","listbox","listitem","log","main","mark","marquee","math","meter","menu","menubar","menuitem","menuitemcheckbox","menuitemradio","navigation","none","note","option","paragraph","presentation","progressbar","radio","radiogroup","region","row","rowgroup","rowheader","scrollbar","search","searchbox","separator","slider","spinbutton","status","strong","subscript","superscript","switch","tab","table","tablist","tabpanel","term","textbox","time","timer","toolbar","tooltip","tree","treegrid","treeitem"];function Sd(n){return(n.getAttribute("role")||"").split(" ").map(i=>i.trim()).find(i=>yT.includes(i))||null}function yv(n,e){return gv(n,e)||pT(n)}function Tt(n){const e=Sd(n);if(!e)return Nb(n);if(e==="none"||e==="presentation"){const i=Nb(n);if(yv(n,i))return i}return e}function bv(n){return n===null?void 0:n.toLowerCase()==="true"}function vv(n){return["STYLE","SCRIPT","NOSCRIPT","TEMPLATE"].includes(et(n))}function gn(n){if(vv(n))return!0;const e=Ui(n),i=n.nodeName==="SLOT";if((e==null?void 0:e.display)==="contents"&&!i){for(let a=n.firstChild;a;a=a.nextSibling)if(a.nodeType===1&&!gn(a)||a.nodeType===3&&dv(a))return!1;return!0}return!(n.nodeName==="OPTION"&&!!n.closest("select"))&&!i&&!hv(n,e)?!0:Sv(n)}function Sv(n){let e=ji==null?void 0:ji.get(n);if(e===void 0){if(e=!1,n.parentElement&&n.parentElement.shadowRoot&&!n.assignedSlot&&(e=!0),!e){const i=Ui(n);e=!i||i.display==="none"||bv(n.getAttribute("aria-hidden"))===!0}if(!e){const i=Ct(n);i&&(e=Sv(i))}ji==null||ji.set(n,e)}return e}function jr(n,e){if(!e)return[];const i=uv(n);if(!i)return[];try{const r=e.split(" ").filter(o=>!!o),a=[];for(const o of r){const u=i.querySelector("#"+CSS.escape(o));u&&!a.includes(u)&&a.push(u)}return a}catch{return[]}}function ti(n){return n.trim()}function Ja(n){return n.split(" ").map(e=>e.replace(/\r\n/g,`
`).replace(/[\u200b\u00ad]/g,"").replace(/\s\s*/g," ")).join(" ").trim()}function kb(n,e){const i=[...n.querySelectorAll(e)];for(const r of jr(n,n.getAttribute("aria-owns")))r.matches(e)&&i.push(r),i.push(...r.querySelectorAll(e));return i}function Za(n,e){const i=e==="::before"?jd:e==="::after"?Ld:Od;if(i!=null&&i.has(n))return i==null?void 0:i.get(n);const r=Ui(n,e);let a;if(r){const o=r.content;o&&o!=="none"&&o!=="normal"&&r.display!=="none"&&r.visibility!=="hidden"&&(a=bT(n,o,!!e))}return e&&a!==void 0&&((r==null?void 0:r.display)||"inline")!=="inline"&&(a=" "+a+" "),i&&i.set(n,a),a}function bT(n,e,i){if(!(!e||e==="none"||e==="normal"))try{let r=w0(e).filter(f=>!(f instanceof rc));const a=r.findIndex(f=>f instanceof _t&&f.value==="/");if(a!==-1)r=r.slice(a+1);else if(!i)return;const o=[];let u=0;for(;u<r.length;)if(r[u]instanceof ld)o.push(r[u].value),u++;else if(u+2<r.length&&r[u]instanceof Fa&&r[u].value==="attr"&&r[u+1]instanceof ad&&r[u+2]instanceof rd){const f=r[u+1].value;o.push(n.getAttribute(f)||""),u+=3}else return;return o.join("")}catch{}}function wv(n){const e=n.getAttribute("aria-labelledby");if(e===null)return null;const i=jr(n,e);return i.length?i:null}function vT(n,e){const i=["button","cell","checkbox","columnheader","gridcell","heading","link","menuitem","menuitemcheckbox","menuitemradio","option","radio","row","rowheader","switch","tab","tooltip","treeitem"].includes(n),r=e&&["","caption","code","contentinfo","definition","deletion","emphasis","insertion","list","listitem","mark","none","paragraph","presentation","region","row","rowgroup","section","strong","subscript","superscript","table","term","time"].includes(n);return i||r}function rl(n,e){const i=e?Nd:Cd;let r=i==null?void 0:i.get(n);return r===void 0&&(r="",["caption","code","definition","deletion","emphasis","generic","insertion","mark","paragraph","presentation","strong","subscript","suggestion","superscript","term","time"].includes(Tt(n)||"")||(r=Ja(_n(n,{includeHidden:e,visitedElements:new Set,embeddedInTargetElement:"self"}))),i==null||i.set(n,r)),r}function al(n,e){const i=e?Md:kd;let r=i==null?void 0:i.get(n);if(r===void 0){if(r="",n.hasAttribute("aria-describedby")){const a=jr(n,n.getAttribute("aria-describedby"));r=Ja(a.map(o=>_n(o,{includeHidden:e,visitedElements:new Set,embeddedInDescribedBy:{element:o,hidden:gn(o)}})).join(" "))}else n.hasAttribute("aria-description")?r=Ja(n.getAttribute("aria-description")||""):r=Ja(n.getAttribute("title")||"");i==null||i.set(n,r)}return r}const ST=["application","checkbox","columnheader","combobox","gridcell","listbox","radiogroup","rowheader","searchbox","slider","spinbutton","switch","textbox","tree"];function xv(n){const e=n.getAttribute("aria-invalid");return!e||e.trim()===""||e.toLocaleLowerCase()==="false"?"false":e==="true"||e==="grammar"||e==="spelling"?e:"true"}function wT(n){if("validity"in n){const e=n.validity;return(e==null?void 0:e.valid)===!1}return!1}function xT(n){const e=yr;let i=yr==null?void 0:yr.get(n);if(i===void 0){i="";const r=xv(n)!=="false",a=wT(n);if(r||a){const o=n.getAttribute("aria-errormessage");i=jr(n,o).map(d=>Ja(_n(d,{visitedElements:new Set,embeddedInDescribedBy:{element:d,hidden:gn(d)}}))).join(" ").trim()}e==null||e.set(n,i)}return i}function _n(n,e){var d,g,m,y;if(e.visitedElements.has(n))return"";const i={...e,embeddedInTargetElement:e.embeddedInTargetElement==="self"?"descendant":e.embeddedInTargetElement};if(!e.includeHidden){const S=!!((d=e.embeddedInLabelledBy)!=null&&d.hidden)||!!((g=e.embeddedInDescribedBy)!=null&&g.hidden)||!!((m=e.embeddedInNativeTextAlternative)!=null&&m.hidden)||!!((y=e.embeddedInLabel)!=null&&y.hidden);if(vv(n)||!S&&gn(n))return e.visitedElements.add(n),""}const r=wv(n);if(!e.embeddedInLabelledBy){const S=(r||[]).map(w=>_n(w,{...e,embeddedInLabelledBy:{element:w,hidden:gn(w)},embeddedInDescribedBy:void 0,embeddedInTargetElement:void 0,embeddedInLabel:void 0,embeddedInNativeTextAlternative:void 0})).join(" ");if(S)return S}const a=Tt(n)||"",o=et(n);if(e.embeddedInLabel||e.embeddedInLabelledBy||e.embeddedInTargetElement==="descendant"){const S=[...n.labels||[]].includes(n),w=(r||[]).includes(n);if(!S&&!w){if(a==="textbox")return e.visitedElements.add(n),o==="INPUT"||o==="TEXTAREA"?n.value:n.textContent||"";if(["combobox","listbox"].includes(a)){e.visitedElements.add(n);let E;if(o==="SELECT")E=[...n.selectedOptions],!E.length&&n.options.length&&E.push(n.options[0]);else{const x=a==="combobox"?kb(n,"*").find(_=>Tt(_)==="listbox"):n;E=x?kb(x,'[aria-selected="true"]').filter(_=>Tt(_)==="option"):[]}return!E.length&&o==="INPUT"?n.value:E.map(x=>_n(x,i)).join(" ")}if(["progressbar","scrollbar","slider","spinbutton","meter"].includes(a))return e.visitedElements.add(n),n.hasAttribute("aria-valuetext")?n.getAttribute("aria-valuetext")||"":n.hasAttribute("aria-valuenow")?n.getAttribute("aria-valuenow")||"":n.getAttribute("value")||"";if(["menu"].includes(a))return e.visitedElements.add(n),""}}const u=n.getAttribute("aria-label")||"";if(ti(u))return e.visitedElements.add(n),u;if(!["presentation","none"].includes(a)){if(o==="INPUT"&&["button","submit","reset"].includes(n.type)){e.visitedElements.add(n);const S=n.value||"";return ti(S)?S:n.type==="submit"?"Submit":n.type==="reset"?"Reset":n.getAttribute("title")||""}if(o==="INPUT"&&n.type==="file"){e.visitedElements.add(n);const S=n.labels||[];return S.length&&!e.embeddedInLabelledBy?za(S,e):"Choose File"}if(o==="INPUT"&&n.type==="image"){e.visitedElements.add(n);const S=n.labels||[];if(S.length&&!e.embeddedInLabelledBy)return za(S,e);const w=n.getAttribute("alt")||"";if(ti(w))return w;const E=n.getAttribute("title")||"";return ti(E)?E:"Submit"}if(!r&&o==="BUTTON"){e.visitedElements.add(n);const S=n.labels||[];if(S.length)return za(S,e)}if(!r&&o==="OUTPUT"){e.visitedElements.add(n);const S=n.labels||[];return S.length?za(S,e):n.getAttribute("title")||""}if(!r&&(o==="TEXTAREA"||o==="SELECT"||o==="INPUT")){e.visitedElements.add(n);const S=n.labels||[];if(S.length)return za(S,e);const w=o==="INPUT"&&["text","password","search","tel","email","url"].includes(n.type)||o==="TEXTAREA",E=n.getAttribute("placeholder")||"",x=n.getAttribute("title")||"";return!w||x?x:E}if(!r&&o==="FIELDSET"){e.visitedElements.add(n);for(let w=n.firstElementChild;w;w=w.nextElementSibling)if(et(w)==="LEGEND")return _n(w,{...i,embeddedInNativeTextAlternative:{element:w,hidden:gn(w)}});return n.getAttribute("title")||""}if(!r&&o==="FIGURE"){e.visitedElements.add(n);for(let w=n.firstElementChild;w;w=w.nextElementSibling)if(et(w)==="FIGCAPTION")return _n(w,{...i,embeddedInNativeTextAlternative:{element:w,hidden:gn(w)}});return n.getAttribute("title")||""}if(o==="IMG"){e.visitedElements.add(n);const S=n.getAttribute("alt")||"";return ti(S)?S:n.getAttribute("title")||""}if(o==="TABLE"){e.visitedElements.add(n);for(let w=n.firstElementChild;w;w=w.nextElementSibling)if(et(w)==="CAPTION")return _n(w,{...i,embeddedInNativeTextAlternative:{element:w,hidden:gn(w)}});const S=n.getAttribute("summary")||"";if(S)return S}if(o==="AREA"){e.visitedElements.add(n);const S=n.getAttribute("alt")||"";return ti(S)?S:n.getAttribute("title")||""}if(o==="SVG"||n.ownerSVGElement){e.visitedElements.add(n);for(let S=n.firstElementChild;S;S=S.nextElementSibling)if(et(S)==="TITLE"&&S.ownerSVGElement)return _n(S,{...i,embeddedInLabelledBy:{element:S,hidden:gn(S)}})}if(n.ownerSVGElement&&o==="A"){const S=n.getAttribute("xlink:title")||"";if(ti(S))return e.visitedElements.add(n),S}}const f=o==="SUMMARY"&&!["presentation","none"].includes(a);if(vT(a,e.embeddedInTargetElement==="descendant")||f||e.embeddedInLabelledBy||e.embeddedInDescribedBy||e.embeddedInLabel||e.embeddedInNativeTextAlternative){e.visitedElements.add(n);const S=_T(n,i);if(e.embeddedInTargetElement==="self"?ti(S):S)return S}if(!["presentation","none"].includes(a)||o==="IFRAME"){e.visitedElements.add(n);const S=n.getAttribute("title")||"";if(ti(S))return S}return e.visitedElements.add(n),""}function _T(n,e){const i=[],r=(o,u)=>{var f;if(!(u&&o.assignedSlot))if(o.nodeType===1){const d=((f=Ui(o))==null?void 0:f.display)||"inline";let g=_n(o,e);(d!=="inline"||o.nodeName==="BR")&&(g=" "+g+" "),i.push(g)}else o.nodeType===3&&i.push(o.textContent||"")};i.push(Za(n,"::before")||"");const a=Za(n);if(a!==void 0)i.push(a);else{const o=n.nodeName==="SLOT"?n.assignedNodes():[];if(o.length)for(const u of o)r(u,!1);else{for(let u=n.firstChild;u;u=u.nextSibling)r(u,!0);if(n.shadowRoot)for(let u=n.shadowRoot.firstChild;u;u=u.nextSibling)r(u,!0);for(const u of jr(n,n.getAttribute("aria-owns")))r(u,!0)}}return i.push(Za(n,"::after")||""),i.join("")}const wd=["gridcell","option","row","tab","rowheader","columnheader","treeitem"];function _v(n){return et(n)==="OPTION"?n.selected:wd.includes(Tt(n)||"")?bv(n.getAttribute("aria-selected"))===!0:!1}const xd=["checkbox","menuitemcheckbox","option","radio","switch","menuitemradio","treeitem"];function Ev(n){const e=_d(n,!0);return e==="error"?!1:e}function ET(n){return _d(n,!0)}function TT(n){return _d(n,!1)}function _d(n,e){const i=et(n);if(e&&i==="INPUT"&&n.indeterminate)return"mixed";if(i==="INPUT"&&["checkbox","radio"].includes(n.type))return n.checked;if(xd.includes(Tt(n)||"")){const r=n.getAttribute("aria-checked");return r==="true"?!0:e&&r==="mixed"?"mixed":!1}return"error"}const AT=["checkbox","combobox","grid","gridcell","listbox","radiogroup","slider","spinbutton","textbox","columnheader","rowheader","searchbox","switch","treegrid"];function CT(n){const e=et(n);return["INPUT","TEXTAREA","SELECT"].includes(e)?n.hasAttribute("readonly"):AT.includes(Tt(n)||"")?n.getAttribute("aria-readonly")==="true":n.isContentEditable?!1:"error"}const Ed=["button"];function Tv(n){if(Ed.includes(Tt(n)||"")){const e=n.getAttribute("aria-pressed");if(e==="true")return!0;if(e==="mixed")return"mixed"}return!1}const Td=["application","button","checkbox","combobox","gridcell","link","listbox","menuitem","row","rowheader","tab","treeitem","columnheader","menuitemcheckbox","menuitemradio","rowheader","switch"];function Av(n){if(et(n)==="DETAILS")return n.open;if(Td.includes(Tt(n)||"")){const e=n.getAttribute("aria-expanded");return e===null?void 0:e==="true"}}const Ad=["heading","listitem","row","treeitem"];function Cv(n){const e={H1:1,H2:2,H3:3,H4:4,H5:5,H6:6}[et(n)];if(e)return e;if(Ad.includes(Tt(n)||"")){const i=n.getAttribute("aria-level"),r=i===null?Number.NaN:Number(i);if(Number.isInteger(r)&&r>=1)return r}return 0}const Nv=["application","button","composite","gridcell","group","input","link","menuitem","scrollbar","separator","tab","checkbox","columnheader","combobox","grid","listbox","menu","menubar","menuitemcheckbox","menuitemradio","option","radio","radiogroup","row","rowheader","searchbox","select","slider","spinbutton","switch","tablist","textbox","toolbar","tree","treegrid","treeitem"];function hc(n){return kv(n)||Mv(n)}function kv(n){return["BUTTON","INPUT","SELECT","TEXTAREA","OPTION","OPTGROUP"].includes(et(n))&&(n.hasAttribute("disabled")||NT(n)||kT(n))}function NT(n){return et(n)==="OPTION"&&!!n.closest("OPTGROUP[DISABLED]")}function kT(n){const e=n==null?void 0:n.closest("FIELDSET[DISABLED]");if(!e)return!1;const i=e.querySelector(":scope > LEGEND");return!i||!i.contains(n)}function Mv(n,e=!1){if(!n)return!1;if(e||Nv.includes(Tt(n)||"")){const i=(n.getAttribute("aria-disabled")||"").toLowerCase();return i==="true"?!0:i==="false"?!1:Mv(Ct(n),!0)}return!1}function za(n,e){return[...n].map(i=>_n(i,{...e,embeddedInLabel:{element:i,hidden:gn(i)},embeddedInNativeTextAlternative:void 0,embeddedInLabelledBy:void 0,embeddedInDescribedBy:void 0,embeddedInTargetElement:void 0})).filter(i=>!!i).join(" ")}function MT(n){const e=Rd;let i=n,r;const a=[];for(;i;i=Ct(i)){const o=e.get(i);if(o!==void 0){r=o;break}a.push(i);const u=Ui(i);if(!u){r=!0;break}const f=u.pointerEvents;if(f){r=f!=="none";break}}r===void 0&&(r=!0);for(const o of a)e.set(o,r);return r}let Cd,Nd,kd,Md,yr,ji,Od,jd,Ld,Rd,Ov=0;function xc(){bd(),++Ov,Cd??(Cd=new Map),Nd??(Nd=new Map),kd??(kd=new Map),Md??(Md=new Map),yr??(yr=new Map),ji??(ji=new Map),Od??(Od=new Map),jd??(jd=new Map),Ld??(Ld=new Map),Rd??(Rd=new Map)}function _c(){--Ov||(Cd=void 0,Nd=void 0,kd=void 0,Md=void 0,yr=void 0,ji=void 0,Od=void 0,jd=void 0,Ld=void 0,Rd=void 0),vd()}const OT={button:"button",checkbox:"checkbox",image:"button",number:"spinbutton",radio:"radio",range:"slider",reset:"button",submit:"button"};let jT=0;function jv(n){const e=n.boxes;return n.mode==="ai"?{visibility:"ariaOrVisible",refs:"interactable",refPrefix:n.refPrefix,includeGenericRole:!0,renderActive:!n.doNotRenderActive,renderCursorPointer:!0,renderBoxes:e}:n.mode==="autoexpect"?{visibility:"ariaAndVisible",refs:"none",renderBoxes:e}:n.mode==="codegen"?{visibility:"aria",refs:"none",renderStringsAsRegex:!0,renderBoxes:e}:{visibility:"aria",refs:"none",renderBoxes:e}}function br(n,e){const i=jv(e),r=new Set,a={root:{role:"fragment",name:"",children:[],props:{},box:fc(n),receivesPointerEvents:!0},elements:new Map,refs:new Map,iframeRefs:[]};Bh(a.root,n);const o=(f,d,g)=>{if(r.has(d))return;if(r.add(d),d.nodeType===Node.TEXT_NODE&&d.nodeValue){if(!g)return;const x=d.nodeValue;f.role!=="textbox"&&x&&f.children.push(d.nodeValue||"");return}if(d.nodeType!==Node.ELEMENT_NODE)return;const m=d,y=!gn(m);let S=y;if(i.visibility==="ariaOrVisible"&&(S=y||ii(m)),i.visibility==="ariaAndVisible"&&(S=y&&ii(m)),i.visibility==="aria"&&!S)return;const w=[];if(m.hasAttribute("aria-owns")){const x=m.getAttribute("aria-owns").split(/\s+/);for(const _ of x){const A=n.ownerDocument.getElementById(_);A&&w.push(A)}}const E=S?LT(m,i):null;E&&(E.ref&&(a.elements.set(E.ref,m),a.refs.set(m,E.ref),E.role==="iframe"&&a.iframeRefs.push(E.ref)),f.children.push(E)),u(E||f,m,w,S)};function u(f,d,g,m){var E;const S=(((E=Ui(d))==null?void 0:E.display)||"inline")!=="inline"||d.nodeName==="BR"?" ":"";S&&f.children.push(S),f.children.push(Za(d,"::before")||"");const w=d.nodeName==="SLOT"?d.assignedNodes():[];if(w.length)for(const x of w)o(f,x,m);else{for(let x=d.firstChild;x;x=x.nextSibling)x.assignedSlot||o(f,x,m);if(d.shadowRoot)for(let x=d.shadowRoot.firstChild;x;x=x.nextSibling)o(f,x,m)}for(const x of g)o(f,x,m);if(f.children.push(Za(d,"::after")||""),S&&f.children.push(S),f.children.length===1&&f.name===f.children[0]&&(f.children=[]),f.role==="link"&&d.hasAttribute("href")){const x=d.getAttribute("href");f.props.url=x}if(f.role==="textbox"&&d.hasAttribute("placeholder")&&d.getAttribute("placeholder")!==f.name){const x=d.getAttribute("placeholder");f.props.placeholder=x}}xc();try{o(a.root,n,!0)}finally{_c()}return DT(a.root),RT(a.root),a}function Mb(n,e){if(e.refs==="none"||e.refs==="interactable"&&(!n.box.visible||!n.receivesPointerEvents))return;const i=Ec(n);let r=i._ariaRef;(!r||r.role!==n.role||r.name!==n.name)&&(r={role:n.role,name:n.name,ref:(e.refPrefix??"")+"e"+ ++jT},i._ariaRef=r),n.ref=r.ref}function LT(n,e){const i=n.ownerDocument.activeElement===n;if(n.nodeName==="IFRAME"){const g={role:"iframe",name:"",children:[],props:{},box:fc(n),receivesPointerEvents:!0,active:i};return Bh(g,n),Mb(g,e),g}const r=e.includeGenericRole?"generic":null,a=Tt(n)??r;if(!a||a==="presentation"||a==="none")return null;const o=pt(rl(n,!1)||""),u=MT(n),f=fc(n);if(a==="generic"&&f.inline&&n.childNodes.length===1&&n.childNodes[0].nodeType===Node.TEXT_NODE)return null;const d={role:a,name:o,children:[],props:{},box:f,receivesPointerEvents:u,active:i};if(Bh(d,n),Mb(d,e),xd.includes(a)&&(d.checked=Ev(n)),Nv.includes(a)&&(d.disabled=hc(n)),Td.includes(a)&&(d.expanded=Av(n)),ST.includes(a)){const g=xv(n);d.invalid=g==="false"?!1:g==="true"?!0:g}return Ad.includes(a)&&(d.level=Cv(n)),Ed.includes(a)&&(d.pressed=Tv(n)),wd.includes(a)&&(d.selected=_v(n)),(n instanceof HTMLInputElement||n instanceof HTMLTextAreaElement)&&n.type!=="checkbox"&&n.type!=="radio"&&n.type!=="file"&&(d.children=[n.value]),d}function RT(n){const e=i=>{const r=[];for(const o of i.children||[]){if(typeof o=="string"){r.push(o);continue}const u=e(o);r.push(...u)}return i.role==="generic"&&!i.name&&r.length<=1&&r.every(o=>typeof o!="string"&&!!o.ref)?r:(i.children=r,[i])};e(n)}function DT(n){const e=(r,a)=>{if(!r.length)return;const o=pt(r.join(""));o&&a.push(o),r.length=0},i=r=>{const a=[],o=[];for(const u of r.children||[])typeof u=="string"?o.push(u):(e(o,a),i(u),a.push(u));e(o,a),r.children=a.length?a:[],r.children.length===1&&r.children[0]===r.name&&(r.children=[])};i(n)}function zT(n,e){return e?n?typeof e=="string"?n===e:!!n.match(new RegExp(e.pattern)):!1:!0}function Ob(n,e){if(!(e!=null&&e.normalized))return!0;if(!n)return!1;if(n===e.normalized||n===e.raw)return!0;const i=UT(e);return i?!!n.match(i):!1}const gh=Symbol("cachedRegex");function UT(n){if(n[gh]!==void 0)return n[gh];const{raw:e}=n,i=e.startsWith("/")&&e.endsWith("/")&&e.length>1;let r;try{r=i?new RegExp(e.slice(1,-1)):null}catch{r=null}return n[gh]=r,r}function jb(n,e){const i=br(n,{mode:"default"});return{matches:Lv(i.root,e,!1,!1),received:{raw:vr(i,{mode:"default"}).text,regex:vr(i,{mode:"codegen"}).text}}}function HT(n,e){const i=br(n,{mode:"default"}).root;return Lv(i,e,!0,!1).map(a=>Ec(a))}function Dd(n,e,i){var r;return typeof n=="string"&&e.kind==="text"?Ob(n,e.text):n===null||typeof n!="object"||e.kind!=="role"||e.role!=="fragment"&&e.role!==n.role||e.checked!==void 0&&e.checked!==n.checked||e.disabled!==void 0&&e.disabled!==n.disabled||e.expanded!==void 0&&e.expanded!==n.expanded||e.invalid!==void 0&&e.invalid!==n.invalid||e.level!==void 0&&e.level!==n.level||e.pressed!==void 0&&e.pressed!==n.pressed||e.selected!==void 0&&e.selected!==n.selected||!zT(n.name,e.name)||!Ob(n.props.url,(r=e.props)==null?void 0:r.url)?!1:e.containerMode==="contain"?Rb(n.children||[],e.children||[]):e.containerMode==="equal"?Lb(n.children||[],e.children||[],!1):e.containerMode==="deep-equal"||i?Lb(n.children||[],e.children||[],!0):Rb(n.children||[],e.children||[])}function Lb(n,e,i){if(e.length!==n.length)return!1;for(let r=0;r<e.length;++r)if(!Dd(n[r],e[r],i))return!1;return!0}function Rb(n,e){if(e.length>n.length)return!1;const i=n.slice(),r=e.slice();for(const a of r){let o=i.shift();for(;o&&!Dd(o,a,!1);)o=i.shift();if(!o)return!1}return!0}function Lv(n,e,i,r){const a=[],o=(u,f)=>{if(Dd(u,e,r)){const d=typeof u=="string"?f:u;return d&&a.push(d),!i}if(typeof u=="string")return!1;for(const d of u.children||[])if(o(d,u))return!0;return!1};return o(n,null),a}function Rv(n,e=new Map){n!=null&&n.ref&&e.set(n.ref,n);for(const i of(n==null?void 0:n.children)||[])typeof i!="string"&&Rv(i,e);return e}function BT(n,e){var o;const i=Rv(e==null?void 0:e.root),r=new Map,a=(u,f)=>{let d=u.children.length===(f==null?void 0:f.children.length)&&eT(u,f),g=d;for(let m=0;m<u.children.length;m++){const y=u.children[m],S=f==null?void 0:f.children[m];if(typeof y=="string")d&&(d=y===S),g&&(g=y===S);else{let w=typeof S!="string"?S:void 0;y.ref&&(w=i.get(y.ref));const E=a(y,w);(!w||!E&&!y.ref||w!==S)&&(g=!1),d&&(d=E&&w===S)}}return r.set(u,d?"same":g?"skip":"changed"),d};return a(n.root,i.get((o=e==null?void 0:e.root)==null?void 0:o.ref)),r}function qT(n,e){const i=[],r=a=>{const o=e.get(a);if(o!=="same")if(o==="skip")for(const u of a.children)typeof u!="string"&&r(u);else i.push(a)};for(const a of n)typeof a=="string"?i.push(a):r(a);return i}function zo(n){return"  ".repeat(n)}function vr(n,e,i){const r=jv(e),a=[],o={},u=r.renderStringsAsRegex?IT:()=>!0,f=r.renderStringsAsRegex?$T:E=>E;let d=n.root.role==="fragment"?n.root.children:[n.root];const g=BT(n,i);i&&(d=qT(d,g));const m=(E,x)=>{if(e.depth&&x>e.depth)return;const _=dh(f(E));_&&a.push(zo(x)+"- text: "+_)},y=(E,x)=>{let _=E.role;if(E.name&&E.name.length<=900){const A=f(E.name);if(A){const C=A.startsWith("/")&&A.endsWith("/")?A:JSON.stringify(A);_+=" "+C}}if(E.checked==="mixed"&&(_+=" [checked=mixed]"),E.checked===!0&&(_+=" [checked]"),E.disabled&&(_+=" [disabled]"),E.expanded&&(_+=" [expanded]"),E.active&&r.renderActive&&(_+=" [active]"),(E.invalid==="grammar"||E.invalid==="spelling")&&(_+=` [invalid=${E.invalid}]`),E.invalid===!0&&(_+=" [invalid]"),E.level&&(_+=` [level=${E.level}]`),E.pressed==="mixed"&&(_+=" [pressed=mixed]"),E.pressed===!0&&(_+=" [pressed]"),E.selected===!0&&(_+=" [selected]"),E.ref&&(_+=` [ref=${E.ref}]`,x&&cc(E)&&(_+=" [cursor=pointer]")),r.renderBoxes){const A=Ec(E);if(A){const C=A.getBoundingClientRect();_+=` [box=${Math.round(C.x)},${Math.round(C.y)},${Math.round(C.width)},${Math.round(C.height)}]`}}return _},S=E=>(E==null?void 0:E.children.length)===1&&typeof E.children[0]=="string"&&!Object.keys(E.props).length?E.children[0]:void 0,w=(E,x,_)=>{if(e.depth&&x>e.depth)return;if(E.role==="iframe"&&E.ref&&(o[E.ref]=x),g.get(E)==="same"&&E.ref){a.push(zo(x)+`- ref=${E.ref} [unchanged]`);return}const A=!!i&&!x,C=zo(x)+"- "+(A?"<changed> ":"")+fT(y(E,_)),H=S(E),V=!!e.depth&&x===e.depth;if(!H&&(!E.children.length||V)&&!Object.keys(E.props).length)a.push(C);else if(H!==void 0)u(E,H)?a.push(C+": "+dh(f(H))):a.push(C);else{a.push(C+":");for(const[j,I]of Object.entries(E.props))a.push(zo(x+1)+"- /"+j+": "+dh(I));const Q=!!E.ref&&_&&cc(E);for(const j of E.children)typeof j=="string"?m(u(E,j)?j:"",x+1):w(j,x+1,_&&!Q)}};for(const E of d)typeof E=="string"?m(E,0):w(E,0,!!r.renderCursorPointer);return{text:a.join(`
`),iframeDepths:o}}function $T(n){const e=[{regex:/\b[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\b/,replacement:"[0-9a-fA-F-]+"},{regex:/\b[\d,.]+[bkmBKM]+\b/,replacement:"[\\d,.]+[bkmBKM]+"},{regex:/\b\d+[hmsp]+\b/,replacement:"\\d+[hmsp]+"},{regex:/\b[\d,.]+[hmsp]+\b/,replacement:"[\\d,.]+[hmsp]+"},{regex:/\b\d+,\d+\b/,replacement:"\\d+,\\d+"},{regex:/\b\d+\.\d{2,}\b/,replacement:"\\d+\\.\\d+"},{regex:/\b\d{2,}\.\d+\b/,replacement:"\\d+\\.\\d+"},{regex:/\b\d{2,}\b/,replacement:"\\d+"}];let i="",r=0;const a=new RegExp(e.map(o=>"("+o.regex.source+")").join("|"),"g");return n.replace(a,(o,...u)=>{const f=u[u.length-2],d=u.slice(0,-2);i+=lc(n.slice(r,f));for(let g=0;g<d.length;g++)if(d[g]){const{replacement:m}=e[g];i+=m;break}return r=f+o.length,o}),i?(i+=lc(n.slice(r)),String(new RegExp(i))):n}function IT(n,e){if(!e.length)return!1;if(!n.name)return!0;const i=e.length<=200&&n.name.length<=200?y_(e,n.name):"";let r=e;for(;i&&r.includes(i);)r=r.replace(i,"");return r.trim().length/e.length>.1}const Dv=Symbol("element");function Ec(n){return n[Dv]}function Bh(n,e){n[Dv]=e}function VT(n,e){const i=iT(n,e);return i?Ec(i):void 0}const Db=":host{font-size:13px;font-family:system-ui,Ubuntu,Droid Sans,sans-serif;color:#333;color-scheme:light}svg{position:absolute;height:0}x-pw-tooltip{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#fff;border-radius:6px;box-shadow:0 .5rem 1.2rem #0000004d;display:none;font-size:12.8px;font-weight:400;left:0;line-height:1.5;max-width:600px;position:absolute;top:0;padding:0;flex-direction:column;overflow:hidden}x-pw-tooltip-line{display:flex;max-width:600px;padding:6px;-webkit-user-select:none;user-select:none;cursor:pointer}x-pw-tooltip-footer{display:flex;max-width:600px;padding:6px;-webkit-user-select:none;user-select:none;color:#777}x-pw-dialog{background-color:#fff;pointer-events:auto;border-radius:6px;box-shadow:0 .5rem 1.2rem #0000004d;display:flex;flex-direction:column;position:absolute;z-index:10;font-size:13px}x-pw-dialog:not(.autosize){width:400px;height:150px}x-pw-dialog-body{display:flex;flex-direction:column;flex:auto}x-pw-dialog-body label{margin:5px 8px;display:flex;flex-direction:row;align-items:center}x-pw-highlight{position:absolute;top:0;left:0;width:0;height:0}x-pw-action-point{position:absolute;width:20px;height:20px;background:red;border-radius:10px;margin:-10px 0 0 -10px;z-index:2}x-pw-action-cursor{position:absolute;width:18px;height:22px;pointer-events:none;z-index:4;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}x-pw-action-cursor svg{width:100%;height:100%;position:static}x-pw-title{position:absolute;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#00000080;color:#fff;border-radius:6px;padding:6px;font-size:24px;line-height:1.4;white-space:nowrap;-webkit-user-select:none;user-select:none;z-index:3}x-pw-user-overlays,x-pw-user-overlay{position:absolute;top:0;right:0;bottom:0;left:0}@keyframes pw-fade-out{0%{opacity:1}to{opacity:0}}x-pw-separator{height:1px;margin:6px 9px;background:#949494e5}x-pw-tool-gripper{height:28px;width:24px;margin:2px 0;cursor:grab}x-pw-tool-gripper:active{cursor:grabbing}x-pw-tool-gripper>x-div{width:16px;height:16px;margin:6px 4px;clip-path:url(#icon-gripper);background-color:#555}x-pw-tools-list>label{display:flex;align-items:center;margin:0 10px;-webkit-user-select:none;user-select:none}x-pw-tools-list{display:flex;width:100%;border-bottom:1px solid #dddddd}x-pw-tool-item{pointer-events:auto;height:28px;width:28px;border-radius:3px}x-pw-tool-item:not(.disabled){cursor:pointer}x-pw-tool-item:not(.disabled):hover{background-color:#dbdbdb}x-pw-tool-item.toggled{background-color:#8acae480}x-pw-tool-item.toggled:not(.disabled):hover{background-color:#8acae4c4}x-pw-tool-item>x-div{width:16px;height:16px;margin:6px;background-color:#3a3a3a}x-pw-tool-item.disabled>x-div{background-color:#61616180;cursor:default}x-pw-tool-item.record.toggled{background-color:transparent}x-pw-tool-item.record.toggled:not(.disabled):hover{background-color:#dbdbdb}x-pw-tool-item.record.toggled>x-div{background-color:#a1260d}x-pw-tool-item.record.disabled.toggled>x-div{opacity:.8}x-pw-tool-item.accept>x-div{background-color:#388a34}x-pw-tool-item.record>x-div{clip-path:url(#icon-circle-large-filled)}x-pw-tool-item.record.toggled>x-div{clip-path:url(#icon-stop-circle)}x-pw-tool-item.pick-locator>x-div{clip-path:url(#icon-inspect)}x-pw-tool-item.text>x-div{clip-path:url(#icon-whole-word)}x-pw-tool-item.visibility>x-div{clip-path:url(#icon-eye)}x-pw-tool-item.value>x-div{clip-path:url(#icon-symbol-constant)}x-pw-tool-item.snapshot>x-div{clip-path:url(#icon-gist)}x-pw-tool-item.accept>x-div{clip-path:url(#icon-check)}x-pw-tool-item.cancel>x-div{clip-path:url(#icon-close)}x-pw-tool-item.succeeded>x-div{clip-path:url(#icon-pass);background-color:#388a34!important}x-pw-overlay{position:absolute;top:0;max-width:min-content;z-index:2147483647;background:transparent;pointer-events:auto}x-pw-overlay x-pw-tools-list{background-color:#fffd;box-shadow:#0000001a 0 5px 5px;border-radius:3px;border-bottom:none}x-pw-overlay x-pw-tool-item{margin:2px}textarea.text-editor{font-family:system-ui,Ubuntu,Droid Sans,sans-serif;flex:auto;border:none;margin:6px 10px;color:#333;outline:1px solid transparent!important;resize:none;padding:0;font-size:13px}textarea.text-editor.does-not-match{outline:1px solid red!important}x-div{display:block}x-spacer{flex:auto}*{box-sizing:border-box}*[hidden]{display:none!important}x-locator-editor{flex:none;width:100%;height:60px;padding:4px;border-bottom:1px solid #dddddd;outline:1px solid transparent}x-locator-editor.does-not-match{outline:1px solid red}.CodeMirror{width:100%!important;height:100%!important}x-pw-action-list{flex:auto;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none}x-pw-action-item{padding:6px 10px;cursor:pointer;overflow:hidden}x-pw-action-item:hover{background-color:#f2f2f2}x-pw-action-item:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}";class mh{constructor(e){this._renderedEntries=[],this._userOverlays=new Map,this._userOverlayHidden=!1,this._language="javascript",this._elementHighlightSelectors=new Map,this._injectedScript=e;const i=e.document;if(this._isUnderTest=e.isUnderTest,this._glassPaneElement=i.createElement("x-pw-glass"),this._glassPaneElement.setAttribute("popover","manual"),this._glassPaneElement.style.inset="0",this._glassPaneElement.style.width="100%",this._glassPaneElement.style.height="100%",this._glassPaneElement.style.maxWidth="none",this._glassPaneElement.style.maxHeight="none",this._glassPaneElement.style.padding="0",this._glassPaneElement.style.margin="0",this._glassPaneElement.style.border="none",this._glassPaneElement.style.overflow="visible",this._glassPaneElement.style.pointerEvents="none",this._glassPaneElement.style.display="flex",this._glassPaneElement.style.backgroundColor="transparent",this._actionPointElement=i.createElement("x-pw-action-point"),this._actionPointElement.setAttribute("hidden","true"),this._actionCursorElement=i.createElement("x-pw-action-cursor"),this._actionCursorElement.style.visibility="hidden",this._actionCursorElement.appendChild(this._createCursorSvg(i)),this._titleElement=i.createElement("x-pw-title"),this._titleElement.setAttribute("hidden","true"),this._userOverlayContainer=i.createElement("x-pw-user-overlays"),this._userOverlayContainer.setAttribute("hidden","true"),this._glassPaneShadow=this._glassPaneElement.attachShadow({mode:this._isUnderTest?"open":"closed"}),typeof this._glassPaneShadow.adoptedStyleSheets.push=="function"){const r=new this._injectedScript.window.CSSStyleSheet;r.replaceSync(Db),this._glassPaneShadow.adoptedStyleSheets.push(r)}else{const r=this._injectedScript.document.createElement("style");r.textContent=Db,this._glassPaneShadow.appendChild(r)}this._glassPaneShadow.appendChild(this._actionPointElement),this._glassPaneShadow.appendChild(this._actionCursorElement),this._glassPaneShadow.appendChild(this._titleElement),this._glassPaneShadow.appendChild(this._userOverlayContainer)}install(){this._injectedScript.document.documentElement&&((!this._injectedScript.document.documentElement.contains(this._glassPaneElement)||this._glassPaneElement.nextElementSibling)&&this._injectedScript.document.documentElement.appendChild(this._glassPaneElement),this._bringToFront())}_bringToFront(){this._glassPaneElement.hidePopover(),this._glassPaneElement.showPopover()}setLanguage(e){this._language=e}addElementHighlight(e,i){const r=It(e);this._elementHighlightSelectors.set(r,{selector:e,cssStyle:i}),this._ensureElementHighlightRaf()}removeElementHighlight(e){const i=It(e);this._elementHighlightSelectors.delete(i)&&this._elementHighlightSelectors.size===0&&(this._rafRequest&&(this._injectedScript.utils.builtins.cancelAnimationFrame(this._rafRequest),this._rafRequest=void 0),this.clearHighlight())}_ensureElementHighlightRaf(){if(this._rafRequest)return;const e=()=>{const i=[];for(const{selector:r,cssStyle:a}of this._elementHighlightSelectors.values()){const o=this._injectedScript.querySelectorAll(r,this._injectedScript.document.documentElement),u=Ri(this._language,It(r)),f=o.length>1?"#f6b26b7f":"#6fa8dc7f";for(let d=0;d<o.length;++d){const g=o.length>1?` [${d+1} of ${o.length}]`:"";i.push({element:o[d],color:f,tooltipText:u+g,cssStyle:a})}}this.updateHighlight(i),this._rafRequest=this._injectedScript.utils.builtins.requestAnimationFrame(e)};this._rafRequest=this._injectedScript.utils.builtins.requestAnimationFrame(e)}uninstall(){this._rafRequest&&(this._injectedScript.utils.builtins.cancelAnimationFrame(this._rafRequest),this._rafRequest=void 0),this._elementHighlightSelectors.clear(),this._glassPaneElement.remove()}showActionPoint(e,i,r){this._actionPointElement.style.top=i+"px",this._actionPointElement.style.left=e+"px",this._actionPointElement.hidden=!1,r?this._actionPointElement.style.animation=`pw-fade-out ${r}ms ease-out forwards`:this._actionPointElement.style.animation=""}hideActionPoint(){this._actionPointElement.hidden=!0}moveActionCursor(e,i,r){const a=r?Math.max(80,Math.min(r*.6,400)):0;this._actionCursorElement.style.transition=`top ${a}ms ease, left ${a}ms ease`,this._actionCursorElement.style.left=e+"px",this._actionCursorElement.style.top=i+"px",this._actionCursorElement.style.visibility="visible"}hideActionCursor(){this._actionCursorElement.style.visibility="hidden"}_createCursorSvg(e){const i="http://www.w3.org/2000/svg",r=e.createElementNS(i,"svg");r.setAttribute("viewBox","0 0 18 22");const a=e.createElementNS(i,"path");return a.setAttribute("d","M1 1 L1 17 L5.5 13 L8 20.5 L11 19.5 L8.5 12 L15 12 Z"),a.setAttribute("fill","white"),a.setAttribute("stroke","black"),a.setAttribute("stroke-width","1.5"),a.setAttribute("stroke-linejoin","round"),r.appendChild(a),r}showActionTitle(e,i,r,a){if(this._titleElement.textContent=e,this._titleElement.hidden=!1,i){const o=i/4;this._titleElement.style.animation=`pw-fade-out ${o}ms ease-out ${i-o}ms forwards`}else this._titleElement.style.animation="";switch(this._titleElement.style.top="",this._titleElement.style.bottom="",this._titleElement.style.left="",this._titleElement.style.right="",this._titleElement.style.transform="",r){case"top-left":this._titleElement.style.top="6px",this._titleElement.style.left="6px";break;case"top":this._titleElement.style.top="6px",this._titleElement.style.left="50%",this._titleElement.style.transform="translateX(-50%)";break;case"bottom-left":this._titleElement.style.bottom="6px",this._titleElement.style.left="6px";break;case"bottom":this._titleElement.style.bottom="6px",this._titleElement.style.left="50%",this._titleElement.style.transform="translateX(-50%)";break;case"bottom-right":this._titleElement.style.bottom="6px",this._titleElement.style.right="6px";break;case"top-right":default:this._titleElement.style.top="6px",this._titleElement.style.right="6px";break}a&&(this._titleElement.style.fontSize=a+"px")}hideActionTitle(){this._titleElement.hidden=!0}addUserOverlay(e,i){const r=this._injectedScript.document.createElement("div");r.className="x-pw-user-overlay",r.innerHTML=i;for(const a of r.querySelectorAll("script"))a.remove();for(const a of r.querySelectorAll("*"))for(const o of[...a.attributes])o.name.startsWith("on")&&a.removeAttribute(o.name);return this._userOverlays.set(e,r),this._userOverlayContainer.appendChild(r),this._userOverlayContainer.hidden=this._userOverlayHidden,e}getUserOverlay(e){return this._userOverlays.get(e)}removeUserOverlay(e){const i=this._userOverlays.get(e);i&&(i.remove(),this._userOverlays.delete(e)),this._userOverlays.size===0&&(this._userOverlayContainer.hidden=!0)}setUserOverlaysVisible(e){this._userOverlayHidden=!e,this._userOverlayContainer.hidden=!e||this._userOverlays.size===0}clearHighlight(){var e,i;for(const r of this._renderedEntries)(e=r.highlightElement)==null||e.remove(),(i=r.tooltipElement)==null||i.remove();this._renderedEntries=[]}maskElements(e,i){this.updateHighlight(e.map(r=>({element:r,color:i})))}updateHighlight(e){if(!this._highlightIsUpToDate(e)){this.clearHighlight();for(const i of e){const r=this._createHighlightElement();this._glassPaneShadow.appendChild(r);let a;if(i.tooltipText){a=this._injectedScript.document.createElement("x-pw-tooltip"),this._glassPaneShadow.appendChild(a),a.style.top="0",a.style.left="0",a.style.display="flex";const o=this._injectedScript.document.createElement("x-pw-tooltip-line");o.textContent=i.tooltipText,a.appendChild(o)}this._renderedEntries.push({targetElement:i.element,box:zb(i.box),color:i.color,borderColor:i.borderColor,fadeDuration:i.fadeDuration,cssStyle:i.cssStyle,tooltipElement:a,highlightElement:r})}for(const i of this._renderedEntries){if(!i.box&&!i.targetElement||(i.box=i.box||i.targetElement.getBoundingClientRect(),!i.tooltipElement))continue;const{anchorLeft:r,anchorTop:a}=this.tooltipPosition(i.box,i.tooltipElement);i.tooltipTop=a,i.tooltipLeft=r}for(const i of this._renderedEntries){i.tooltipElement&&(i.tooltipElement.style.top=i.tooltipTop+"px",i.tooltipElement.style.left=i.tooltipLeft+"px");const r=i.box;i.highlightElement.style.backgroundColor=i.color,i.highlightElement.style.left=r.x+"px",i.highlightElement.style.top=r.y+"px",i.highlightElement.style.width=r.width+"px",i.highlightElement.style.height=r.height+"px",i.highlightElement.style.display="block",i.borderColor&&(i.highlightElement.style.border="2px solid "+i.borderColor),i.fadeDuration&&(i.highlightElement.style.animation=`pw-fade-out ${i.fadeDuration}ms ease-out forwards`),i.cssStyle&&(i.highlightElement.style.cssText+=";"+i.cssStyle),this._isUnderTest&&console.error("Highlight box for test: "+JSON.stringify({x:r.x,y:r.y,width:r.width,height:r.height}))}}}firstBox(){var e;return(e=this._renderedEntries[0])==null?void 0:e.box}firstTooltipBox(){const e=this._renderedEntries[0];if(!(!e||!e.tooltipElement||e.tooltipLeft===void 0||e.tooltipTop===void 0))return{x:e.tooltipLeft,y:e.tooltipTop,left:e.tooltipLeft,top:e.tooltipTop,width:e.tooltipElement.offsetWidth,height:e.tooltipElement.offsetHeight,bottom:e.tooltipTop+e.tooltipElement.offsetHeight,right:e.tooltipLeft+e.tooltipElement.offsetWidth,toJSON:()=>{}}}tooltipPosition(e,i){const r=i.offsetWidth,a=i.offsetHeight,o=this._glassPaneElement.offsetWidth,u=this._glassPaneElement.offsetHeight;let f=Math.max(5,e.left);f+r>o-5&&(f=o-r-5);let d=Math.max(0,e.bottom)+5;return d+a>u-5&&(Math.max(0,e.top)>a+5?d=Math.max(0,e.top)-a-5:d=u-5-a),{anchorLeft:f,anchorTop:d}}_highlightIsUpToDate(e){if(e.length!==this._renderedEntries.length)return!1;for(let i=0;i<this._renderedEntries.length;++i){if(e[i].element!==this._renderedEntries[i].targetElement||e[i].color!==this._renderedEntries[i].color||e[i].cssStyle!==this._renderedEntries[i].cssStyle)return!1;const r=this._renderedEntries[i].box;if(!r)return!1;const a=e[i].box?zb(e[i].box):e[i].element.getBoundingClientRect();if(a.top!==r.top||a.right!==r.right||a.bottom!==r.bottom||a.left!==r.left)return!1}return!0}_createHighlightElement(){return this._injectedScript.document.createElement("x-pw-highlight")}appendChild(e){this._glassPaneShadow.appendChild(e)}onGlassPaneClick(e){this._glassPaneElement.style.pointerEvents="auto",this._glassPaneElement.style.backgroundColor="rgba(0, 0, 0, 0.3)",this._glassPaneElement.addEventListener("click",e)}offGlassPaneClick(e){this._glassPaneElement.style.pointerEvents="none",this._glassPaneElement.style.backgroundColor="transparent",this._glassPaneElement.removeEventListener("click",e)}}function zb(n){if(n)return new DOMRect(n.x,n.y,n.width,n.height)}function GT(n,e,i){const r=n.left-e.right;if(!(r<0||i!==void 0&&r>i))return r+Math.max(e.bottom-n.bottom,0)+Math.max(n.top-e.top,0)}function KT(n,e,i){const r=e.left-n.right;if(!(r<0||i!==void 0&&r>i))return r+Math.max(e.bottom-n.bottom,0)+Math.max(n.top-e.top,0)}function XT(n,e,i){const r=e.top-n.bottom;if(!(r<0||i!==void 0&&r>i))return r+Math.max(n.left-e.left,0)+Math.max(e.right-n.right,0)}function YT(n,e,i){const r=n.top-e.bottom;if(!(r<0||i!==void 0&&r>i))return r+Math.max(n.left-e.left,0)+Math.max(e.right-n.right,0)}function FT(n,e,i){const r=i===void 0?50:i;let a=0;return n.left-e.right>=0&&(a+=n.left-e.right),e.left-n.right>=0&&(a+=e.left-n.right),e.top-n.bottom>=0&&(a+=e.top-n.bottom),n.top-e.bottom>=0&&(a+=n.top-e.bottom),a>r?void 0:a}const QT=["left-of","right-of","above","below","near"];function zv(n,e,i,r){const a=e.getBoundingClientRect(),o={"left-of":KT,"right-of":GT,above:XT,below:YT,near:FT}[n];let u;for(const f of i){if(f===e)continue;const d=o(a,f.getBoundingClientRect(),r);d!==void 0&&(u===void 0||d<u)&&(u=d)}return u}function Ub(n,e){const i=typeof n=="string"&&!e.caseSensitive?n.toUpperCase():n,r=typeof e.value=="string"&&!e.caseSensitive?e.value.toUpperCase():e.value;return e.op==="<truthy>"?!!i:e.op==="="?r instanceof RegExp?typeof i=="string"&&!!i.match(r):i===r:typeof i!="string"||typeof r!="string"?!1:e.op==="*="?i.includes(r):e.op==="^="?i.startsWith(r):e.op==="$="?i.endsWith(r):e.op==="|="?i===r||i.startsWith(r+"-"):e.op==="~="?i.split(" ").includes(r):!1}function zd(n){const e=n.ownerDocument;return n.nodeName==="SCRIPT"||n.nodeName==="NOSCRIPT"||n.nodeName==="STYLE"||e.head&&e.head.contains(n)}function Kt(n,e){let i=n.get(e);if(i===void 0){if(i={full:"",normalized:"",immediate:[]},!zd(e)){let r="";if(e instanceof HTMLInputElement&&(e.type==="submit"||e.type==="button"))i={full:e.value,normalized:pt(e.value),immediate:[e.value]};else{for(let a=e.firstChild;a;a=a.nextSibling)if(a.nodeType===Node.TEXT_NODE)i.full+=a.nodeValue||"",r+=a.nodeValue||"";else{if(a.nodeType===Node.COMMENT_NODE)continue;r&&i.immediate.push(r),r="",a.nodeType===Node.ELEMENT_NODE&&(i.full+=Kt(n,a).full)}r&&i.immediate.push(r),e.shadowRoot&&(i.full+=Kt(n,e.shadowRoot).full),i.full&&(i.normalized=pt(i.full))}}n.set(e,i)}return i}function Tc(n,e,i){if(zd(e)||!i(Kt(n,e)))return"none";for(let r=e.firstChild;r;r=r.nextSibling)if(r.nodeType===Node.ELEMENT_NODE&&i(Kt(n,r)))return"selfAndChildren";return e.shadowRoot&&i(Kt(n,e.shadowRoot))?"selfAndChildren":"self"}function Uv(n,e){const i=wv(e);if(i)return i.map(o=>Kt(n,o));const r=e.getAttribute("aria-label");if(r!==null&&r.trim())return[{full:r,normalized:pt(r),immediate:[r]}];const a=e.nodeName==="INPUT"&&e.type!=="hidden";if(["BUTTON","METER","OUTPUT","PROGRESS","SELECT","TEXTAREA"].includes(e.nodeName)||a){const o=e.labels;if(o)return[...o].map(u=>Kt(n,u))}return[]}const Hv=["selected","checked","pressed","expanded","level","disabled","name","description","include-hidden"];Hv.sort();function Ua(n,e,i){if(!e.includes(i))throw new Error(`"${n}" attribute is only supported for roles: ${e.slice().sort().map(r=>`"${r}"`).join(", ")}`)}function cr(n,e){if(n.op!=="<truthy>"&&!e.includes(n.value))throw new Error(`"${n.name}" must be one of ${e.map(i=>JSON.stringify(i)).join(", ")}`)}function ur(n,e){if(!e.includes(n.op))throw new Error(`"${n.name}" does not support "${n.op}" matcher`)}function PT(n,e){const i={role:e};for(const r of n)switch(r.name){case"checked":{Ua(r.name,xd,e),cr(r,[!0,!1,"mixed"]),ur(r,["<truthy>","="]),i.checked=r.op==="<truthy>"?!0:r.value;break}case"pressed":{Ua(r.name,Ed,e),cr(r,[!0,!1,"mixed"]),ur(r,["<truthy>","="]),i.pressed=r.op==="<truthy>"?!0:r.value;break}case"selected":{Ua(r.name,wd,e),cr(r,[!0,!1]),ur(r,["<truthy>","="]),i.selected=r.op==="<truthy>"?!0:r.value;break}case"expanded":{Ua(r.name,Td,e),cr(r,[!0,!1]),ur(r,["<truthy>","="]),i.expanded=r.op==="<truthy>"?!0:r.value;break}case"level":{if(Ua(r.name,Ad,e),typeof r.value=="string"&&(r.value=+r.value),r.op!=="="||typeof r.value!="number"||Number.isNaN(r.value))throw new Error('"level" attribute must be compared to a number');i.level=r.value;break}case"disabled":{cr(r,[!0,!1]),ur(r,["<truthy>","="]),i.disabled=r.op==="<truthy>"?!0:r.value;break}case"name":{if(r.op==="<truthy>")throw new Error('"name" attribute must have a value');if(typeof r.value!="string"&&!(r.value instanceof RegExp))throw new Error('"name" attribute must be a string or a regular expression');i.name=r.value,i.nameOp=r.op,i.nameExact=r.caseSensitive;break}case"description":{if(r.op==="<truthy>")throw new Error('"description" attribute must have a value');if(typeof r.value!="string"&&!(r.value instanceof RegExp))throw new Error('"description" attribute must be a string or a regular expression');i.description=r.value,i.descriptionOp=r.op,i.descriptionExact=r.caseSensitive;break}case"include-hidden":{cr(r,[!0,!1]),ur(r,["<truthy>","="]),i.includeHidden=r.op==="<truthy>"?!0:r.value;break}default:throw new Error(`Unknown attribute "${r.name}", must be one of ${Hv.map(a=>`"${a}"`).join(", ")}.`)}return i}function JT(n,e,i){const r=[],a=u=>{if(Tt(u)===e.role&&!(e.selected!==void 0&&_v(u)!==e.selected)&&!(e.checked!==void 0&&Ev(u)!==e.checked)&&!(e.pressed!==void 0&&Tv(u)!==e.pressed)&&!(e.expanded!==void 0&&Av(u)!==e.expanded)&&!(e.level!==void 0&&Cv(u)!==e.level)&&!(e.disabled!==void 0&&hc(u)!==e.disabled)&&!(!e.includeHidden&&gn(u))){if(e.name!==void 0){const f=pt(rl(u,!!e.includeHidden));if(typeof e.name=="string"&&(e.name=pt(e.name)),i&&!e.nameExact&&e.nameOp==="="&&(e.nameOp="*="),!Ub(f,{op:e.nameOp||"=",value:e.name,caseSensitive:!!e.nameExact}))return}if(e.description!==void 0){const f=pt(al(u,!!e.includeHidden));if(typeof e.description=="string"&&(e.description=pt(e.description)),i&&!e.descriptionExact&&e.descriptionOp==="="&&(e.descriptionOp="*="),!Ub(f,{op:e.descriptionOp||"=",value:e.description,caseSensitive:!!e.descriptionExact}))return}r.push(u)}},o=u=>{const f=[];u.shadowRoot&&f.push(u.shadowRoot);for(const d of u.querySelectorAll("*"))a(d),d.shadowRoot&&f.push(d.shadowRoot);f.forEach(o)};return o(n),r}function Hb(n){return{queryAll:(e,i)=>{const r=Er(i),a=r.name.toLowerCase();if(!a)throw new Error("Role must not be empty");const o=PT(r.attributes,a);xc();try{return JT(e,o,n)}finally{_c()}}}}class ZT{constructor(){this._retainCacheCounter=0,this._cacheText=new Map,this._cacheQueryCSS=new Map,this._cacheMatches=new Map,this._cacheQuery=new Map,this._cacheMatchesSimple=new Map,this._cacheMatchesParents=new Map,this._cacheCallMatches=new Map,this._cacheCallQuery=new Map,this._cacheQuerySimple=new Map,this._engines=new Map,this._engines.set("not",tA),this._engines.set("is",Ga),this._engines.set("where",Ga),this._engines.set("has",WT),this._engines.set("scope",eA),this._engines.set("light",nA),this._engines.set("visible",iA),this._engines.set("text",sA),this._engines.set("text-is",rA),this._engines.set("text-matches",aA),this._engines.set("has-text",lA),this._engines.set("right-of",Ha("right-of")),this._engines.set("left-of",Ha("left-of")),this._engines.set("above",Ha("above")),this._engines.set("below",Ha("below")),this._engines.set("near",Ha("near")),this._engines.set("nth-match",oA);const e=[...this._engines.keys()];e.sort();const i=[...B0];if(i.sort(),e.join("|")!==i.join("|"))throw new Error(`Please keep customCSSNames in sync with evaluator engines: ${e.join("|")} vs ${i.join("|")}`)}begin(){++this._retainCacheCounter}end(){--this._retainCacheCounter,this._retainCacheCounter||(this._cacheQueryCSS.clear(),this._cacheMatches.clear(),this._cacheQuery.clear(),this._cacheMatchesSimple.clear(),this._cacheMatchesParents.clear(),this._cacheCallMatches.clear(),this._cacheCallQuery.clear(),this._cacheQuerySimple.clear(),this._cacheText.clear())}_cached(e,i,r,a){e.has(i)||e.set(i,[]);const o=e.get(i),u=o.find(d=>r.every((g,m)=>d.rest[m]===g));if(u)return u.result;const f=a();return o.push({rest:r,result:f}),f}_checkSelector(e){if(!(typeof e=="object"&&e&&(Array.isArray(e)||"simples"in e&&e.simples.length)))throw new Error(`Malformed selector "${e}"`);return e}matches(e,i,r){const a=this._checkSelector(i);this.begin();try{return this._cached(this._cacheMatches,e,[a,r.scope,r.pierceShadow,r.originalScope],()=>Array.isArray(a)?this._matchesEngine(Ga,e,a,r):(this._hasScopeClause(a)&&(r=this._expandContextForScopeMatching(r)),this._matchesSimple(e,a.simples[a.simples.length-1].selector,r)?this._matchesParents(e,a,a.simples.length-2,r):!1))}finally{this.end()}}query(e,i){const r=this._checkSelector(i);this.begin();try{return this._cached(this._cacheQuery,r,[e.scope,e.pierceShadow,e.originalScope],()=>{if(Array.isArray(r))return this._queryEngine(Ga,e,r);this._hasScopeClause(r)&&(e=this._expandContextForScopeMatching(e));const a=this._scoreMap;this._scoreMap=new Map;let o=this._querySimple(e,r.simples[r.simples.length-1].selector);return o=o.filter(u=>this._matchesParents(u,r,r.simples.length-2,e)),this._scoreMap.size&&o.sort((u,f)=>{const d=this._scoreMap.get(u),g=this._scoreMap.get(f);return d===g?0:d===void 0?1:g===void 0?-1:d-g}),this._scoreMap=a,o})}finally{this.end()}}_markScore(e,i){this._scoreMap&&this._scoreMap.set(e,i)}_hasScopeClause(e){return e.simples.some(i=>i.selector.functions.some(r=>r.name==="scope"))}_expandContextForScopeMatching(e){if(e.scope.nodeType!==1)return e;const i=Ct(e.scope);return i?{...e,scope:i,originalScope:e.originalScope||e.scope}:e}_matchesSimple(e,i,r){return this._cached(this._cacheMatchesSimple,e,[i,r.scope,r.pierceShadow,r.originalScope],()=>{if(e===r.scope||i.css&&!this._matchesCSS(e,i.css))return!1;for(const a of i.functions)if(!this._matchesEngine(this._getEngine(a.name),e,a.args,r))return!1;return!0})}_querySimple(e,i){return i.functions.length?this._cached(this._cacheQuerySimple,i,[e.scope,e.pierceShadow,e.originalScope],()=>{let r=i.css;const a=i.functions;r==="*"&&a.length&&(r=void 0);let o,u=-1;r!==void 0?o=this._queryCSS(e,r):(u=a.findIndex(f=>this._getEngine(f.name).query!==void 0),u===-1&&(u=0),o=this._queryEngine(this._getEngine(a[u].name),e,a[u].args));for(let f=0;f<a.length;f++){if(f===u)continue;const d=this._getEngine(a[f].name);d.matches!==void 0&&(o=o.filter(g=>this._matchesEngine(d,g,a[f].args,e)))}for(let f=0;f<a.length;f++){if(f===u)continue;const d=this._getEngine(a[f].name);d.matches===void 0&&(o=o.filter(g=>this._matchesEngine(d,g,a[f].args,e)))}return o}):this._queryCSS(e,i.css||"*")}_matchesParents(e,i,r,a){return r<0?!0:this._cached(this._cacheMatchesParents,e,[i,r,a.scope,a.pierceShadow,a.originalScope],()=>{const{selector:o,combinator:u}=i.simples[r];if(u===">"){const f=Uo(e,a);return!f||!this._matchesSimple(f,o,a)?!1:this._matchesParents(f,i,r-1,a)}if(u==="+"){const f=yh(e,a);return!f||!this._matchesSimple(f,o,a)?!1:this._matchesParents(f,i,r-1,a)}if(u===""){let f=Uo(e,a);for(;f;){if(this._matchesSimple(f,o,a)){if(this._matchesParents(f,i,r-1,a))return!0;if(i.simples[r-1].combinator==="")break}f=Uo(f,a)}return!1}if(u==="~"){let f=yh(e,a);for(;f;){if(this._matchesSimple(f,o,a)){if(this._matchesParents(f,i,r-1,a))return!0;if(i.simples[r-1].combinator==="~")break}f=yh(f,a)}return!1}if(u===">="){let f=e;for(;f;){if(this._matchesSimple(f,o,a)){if(this._matchesParents(f,i,r-1,a))return!0;if(i.simples[r-1].combinator==="")break}f=Uo(f,a)}return!1}throw new Error(`Unsupported combinator "${u}"`)})}_matchesEngine(e,i,r,a){if(e.matches)return this._callMatches(e,i,r,a);if(e.query)return this._callQuery(e,r,a).includes(i);throw new Error('Selector engine should implement "matches" or "query"')}_queryEngine(e,i,r){if(e.query)return this._callQuery(e,r,i);if(e.matches)return this._queryCSS(i,"*").filter(a=>this._callMatches(e,a,r,i));throw new Error('Selector engine should implement "matches" or "query"')}_callMatches(e,i,r,a){return this._cached(this._cacheCallMatches,i,[e,a.scope,a.pierceShadow,a.originalScope,...r],()=>e.matches(i,r,a,this))}_callQuery(e,i,r){return this._cached(this._cacheCallQuery,e,[r.scope,r.pierceShadow,r.originalScope,...i],()=>e.query(r,i,this))}_matchesCSS(e,i){return e.matches(i)}_queryCSS(e,i){return this._cached(this._cacheQueryCSS,i,[e.scope,e.pierceShadow,e.originalScope],()=>{let r=[];function a(o){if(r=r.concat([...o.querySelectorAll(i)]),!!e.pierceShadow){o.shadowRoot&&a(o.shadowRoot);for(const u of o.querySelectorAll("*"))u.shadowRoot&&a(u.shadowRoot)}}return a(e.scope),r})}_getEngine(e){const i=this._engines.get(e);if(!i)throw new Error(`Unknown selector engine "${e}"`);return i}}const Ga={matches(n,e,i,r){if(e.length===0)throw new Error('"is" engine expects non-empty selector list');return e.some(a=>r.matches(n,a,i))},query(n,e,i){if(e.length===0)throw new Error('"is" engine expects non-empty selector list');let r=[];for(const a of e)r=r.concat(i.query(n,a));return e.length===1?r:Bv(r)}},WT={matches(n,e,i,r){if(e.length===0)throw new Error('"has" engine expects non-empty selector list');return r.query({...i,scope:n},e).length>0}},eA={matches(n,e,i,r){if(e.length!==0)throw new Error('"scope" engine expects no arguments');const a=i.originalScope||i.scope;return a.nodeType===9?n===a.documentElement:n===a},query(n,e,i){if(e.length!==0)throw new Error('"scope" engine expects no arguments');const r=n.originalScope||n.scope;if(r.nodeType===9){const a=r.documentElement;return a?[a]:[]}return r.nodeType===1?[r]:[]}},tA={matches(n,e,i,r){if(e.length===0)throw new Error('"not" engine expects non-empty selector list');return!r.matches(n,e,i)}},nA={query(n,e,i){return i.query({...n,pierceShadow:!1},e)},matches(n,e,i,r){return r.matches(n,e,{...i,pierceShadow:!1})}},iA={matches(n,e,i,r){if(e.length)throw new Error('"visible" engine expects no arguments');return ii(n)}},sA={matches(n,e,i,r){if(e.length!==1||typeof e[0]!="string")throw new Error('"text" engine expects a single string');const a=pt(e[0]).toLowerCase(),o=u=>u.normalized.toLowerCase().includes(a);return Tc(r._cacheText,n,o)==="self"}},rA={matches(n,e,i,r){if(e.length!==1||typeof e[0]!="string")throw new Error('"text-is" engine expects a single string');const a=pt(e[0]),o=u=>!a&&!u.immediate.length?!0:u.immediate.some(f=>pt(f)===a);return Tc(r._cacheText,n,o)!=="none"}},aA={matches(n,e,i,r){if(e.length===0||typeof e[0]!="string"||e.length>2||e.length===2&&typeof e[1]!="string")throw new Error('"text-matches" engine expects a regexp body and optional regexp flags');const a=new RegExp(e[0],e.length===2?e[1]:void 0),o=u=>a.test(u.full);return Tc(r._cacheText,n,o)==="self"}},lA={matches(n,e,i,r){if(e.length!==1||typeof e[0]!="string")throw new Error('"has-text" engine expects a single string');if(zd(n))return!1;const a=pt(e[0]).toLowerCase();return(u=>u.normalized.toLowerCase().includes(a))(Kt(r._cacheText,n))}};function Ha(n){return{matches(e,i,r,a){const o=i.length&&typeof i[i.length-1]=="number"?i[i.length-1]:void 0,u=o===void 0?i:i.slice(0,i.length-1);if(i.length<1+(o===void 0?0:1))throw new Error(`"${n}" engine expects a selector list and optional maximum distance in pixels`);const f=a.query(r,u),d=zv(n,e,f,o);return d===void 0?!1:(a._markScore(e,d),!0)}}}const oA={query(n,e,i){let r=e[e.length-1];if(e.length<2)throw new Error('"nth-match" engine expects non-empty selector list and an index argument');if(typeof r!="number"||r<1)throw new Error('"nth-match" engine expects a one-based index as the last argument');const a=Ga.query(n,e.slice(0,e.length-1),i);return r--,r<a.length?[a[r]]:[]}};function Uo(n,e){if(n!==e.scope)return e.pierceShadow?Ct(n):n.parentElement||void 0}function yh(n,e){if(n!==e.scope)return n.previousElementSibling||void 0}function Bv(n){const e=new Map,i=[],r=[];function a(u){let f=e.get(u);if(f)return f;const d=Ct(u);return d?a(d).children.push(u):i.push(u),f={children:[],taken:!1},e.set(u,f),f}for(const u of n)a(u).taken=!0;function o(u){const f=e.get(u);if(f.taken&&r.push(u),f.children.length>1){const d=new Set(f.children);f.children=[];let g=u.firstElementChild;for(;g&&f.children.length<d.size;)d.has(g)&&f.children.push(g),g=g.nextElementSibling;for(g=u.shadowRoot?u.shadowRoot.firstElementChild:null;g&&f.children.length<d.size;)d.has(g)&&f.children.push(g),g=g.nextElementSibling}f.children.forEach(o)}return i.forEach(o),r}const qv=10,Lr=qv/2,Bb=1,cA=2,uA=10,fA=50,qh=100,$v=120,Iv=140,Vv=160,Zo=180,Gv=200,qb=250,hA=$v+Lr,dA=Iv+Lr,$b=qh+Lr,pA=Vv+Lr,gA=Zo+Lr,mA=Gv+Lr,yA=300,bA=500,$h=510,bh=520,Kv=530,Ih=1e4,vA=1e7,SA=1e3;function Ib(n,e,i){n._evaluator.begin();const r={allowText:new Map,disallowText:new Map};xc(),bd();try{let a=[];if(i.forTextExpect){let f=Ka(n,e.ownerDocument.documentElement,i);for(let d=e;d;d=Ct(d)){const g=rs(r,n,d,{...i,noText:!0});if(!g)continue;if(as(g)<=SA){f=g;break}}a=[Wo(f)]}else{if(!e.matches("input,textarea,select")&&!e.isContentEditable){const f=Va(e,"button,select,input,[role=button],[role=checkbox],[role=radio],a,[role=link]",i.root);f&&ii(f)&&(e=f)}if(i.multiple){const f=rs(r,n,e,i),d=rs(r,n,e,{...i,noText:!0});let g=[f,d];if(r.allowText.clear(),r.disallowText.clear(),f&&vh(f)&&g.push(rs(r,n,e,{...i,noCSSId:!0})),d&&vh(d)&&g.push(rs(r,n,e,{...i,noText:!0,noCSSId:!0})),g=g.filter(Boolean),!g.length){const m=Ka(n,e,i);g.push(m),vh(m)&&g.push(Ka(n,e,{...i,noCSSId:!0}))}a=[...new Set(g.map(m=>Wo(m)))]}else{const f=rs(r,n,e,i)||Ka(n,e,i);a=[Wo(f)]}}const o=a[0],u=n.parseSelector(o);return{selector:o,selectors:a,elements:n.querySelectorAll(u,i.root??e.ownerDocument)}}finally{vd(),_c(),n._evaluator.end()}}function rs(n,e,i,r){if(r.root&&!Hh(r.root,i))throw new Error("Target element must belong to the root's subtree");if(i===r.root)return[{engine:"css",selector:":scope",score:1}];if(i.ownerDocument.documentElement===i)return[{engine:"css",selector:"html",score:1}];let a=null;const o=f=>{(!a||as(f)<as(a))&&(a=f)},u=[];if(!r.noText)for(const f of xA(e,i,!r.isRecursive))u.push({candidate:f,isTextCandidate:!0});for(const f of wA(e,i,r))r.omitInternalEngines&&f.engine.startsWith("internal:")||u.push({candidate:[f],isTextCandidate:!1});u.sort((f,d)=>as(f.candidate)-as(d.candidate));for(const{candidate:f,isTextCandidate:d}of u){const g=e.querySelectorAll(e.parseSelector(Wo(f)),r.root??i.ownerDocument);if(!g.includes(i))continue;if(g.length===1){o(f);break}const m=g.indexOf(i);if(!(m>5)&&(o([...f,{engine:"nth",selector:String(m),score:Ih}]),!r.isRecursive))for(let y=Ct(i);y&&y!==r.root;y=Ct(y)){const S=g.filter(H=>Hh(y,H)&&H!==y),w=S.indexOf(i);if(S.length>5||w===-1||w===m&&S.length>1)continue;const E=S.length===1?f:[...f,{engine:"nth",selector:String(w),score:Ih}];if(a&&as([{engine:"",selector:"",score:1},...E])>=as(a))continue;const _=!!r.noText||d,A=_?n.disallowText:n.allowText;let C=A.get(y);C===void 0&&(C=rs(n,e,y,{...r,isRecursive:!0,noText:_})||Ka(e,y,r),A.set(y,C)),C&&o([...C,...E])}}return a}function wA(n,e,i){const r=[],a=av(i.testIdAttributeName);{for(const f of["data-testid","data-test-id","data-test"])!a.includes(f)&&e.getAttribute(f)&&r.push({engine:"css",selector:`[${f}=${gr(e.getAttribute(f))}]`,score:cA});if(!i.noCSSId){const f=e.getAttribute("id");f&&!_A(f)&&r.push({engine:"css",selector:Xv(f),score:bA})}r.push({engine:"css",selector:ni(e),score:Kv})}if(e.nodeName==="IFRAME"){for(const f of["name","title"])e.getAttribute(f)&&r.push({engine:"css",selector:`${ni(e)}[${f}=${gr(e.getAttribute(f))}]`,score:uA});for(const f of a)e.getAttribute(f)&&r.push({engine:"css",selector:`[${f}=${gr(e.getAttribute(f))}]`,score:Bb});return Vh([r]),r}for(const f of a)e.getAttribute(f)&&r.push({engine:"internal:testid",selector:`[${f}=${Ze(e.getAttribute(f),!0)}]`,score:Bb});if(e.nodeName==="INPUT"||e.nodeName==="TEXTAREA"){const f=e;if(f.placeholder){r.push({engine:"internal:attr",selector:`[placeholder=${Ze(f.placeholder,!0)}]`,score:hA});for(const d of cs(f.placeholder))r.push({engine:"internal:attr",selector:`[placeholder=${Ze(d.text,!1)}]`,score:$v-d.scoreBonus})}}const o=Uv(n._evaluator._cacheText,e);for(const f of o){const d=f.normalized;r.push({engine:"internal:label",selector:Vt(d,!0),score:dA});for(const g of cs(d))r.push({engine:"internal:label",selector:Vt(g.text,!1),score:Iv-g.scoreBonus})}const u=Tt(e);return u&&!["none","presentation"].includes(u)&&r.push({engine:"internal:role",selector:u,score:$h}),e.getAttribute("name")&&["BUTTON","FORM","FIELDSET","FRAME","IFRAME","INPUT","KEYGEN","OBJECT","OUTPUT","SELECT","TEXTAREA","MAP","META","PARAM"].includes(e.nodeName)&&r.push({engine:"css",selector:`${ni(e)}[name=${gr(e.getAttribute("name"))}]`,score:bh}),["INPUT","TEXTAREA"].includes(e.nodeName)&&e.getAttribute("type")!=="hidden"&&e.getAttribute("type")&&r.push({engine:"css",selector:`${ni(e)}[type=${gr(e.getAttribute("type"))}]`,score:bh}),["INPUT","TEXTAREA","SELECT"].includes(e.nodeName)&&e.getAttribute("type")!=="hidden"&&r.push({engine:"css",selector:ni(e),score:bh+1}),Vh([r]),r}function xA(n,e,i){if(e.nodeName==="SELECT")return[];const r=[],a=e.getAttribute("title");if(a){r.push([{engine:"internal:attr",selector:`[title=${Ze(a,!0)}]`,score:mA}]);for(const g of cs(a))r.push([{engine:"internal:attr",selector:`[title=${Ze(g.text,!1)}]`,score:Gv-g.scoreBonus}])}const o=e.getAttribute("alt");if(o&&["APPLET","AREA","IMG","INPUT"].includes(e.nodeName)){r.push([{engine:"internal:attr",selector:`[alt=${Ze(o,!0)}]`,score:pA}]);for(const g of cs(o))r.push([{engine:"internal:attr",selector:`[alt=${Ze(g.text,!1)}]`,score:Vv-g.scoreBonus}])}const u=Kt(n._evaluator._cacheText,e).normalized,f=u?cs(u):[];if(u){if(i){u.length<=80&&r.push([{engine:"internal:text",selector:Vt(u,!0),score:gA}]);for(const m of f)r.push([{engine:"internal:text",selector:Vt(m.text,!1),score:Zo-m.scoreBonus}])}const g={engine:"css",selector:ni(e),score:Kv};for(const m of f)r.push([g,{engine:"internal:has-text",selector:Vt(m.text,!1),score:Zo-m.scoreBonus}]);if(i&&u.length<=80){const m=new RegExp("^"+lc(u)+"$");r.push([g,{engine:"internal:has-text",selector:Vt(m,!1),score:qb}])}}const d=Tt(e);if(d&&!["none","presentation"].includes(d)){const g=rl(e,!1);if(g&&!g.match(new RegExp("^\\p{Co}+$","u"))){const m={engine:"internal:role",selector:`${d}[name=${Ze(g,!0)}]`,score:$b};r.push([m]);for(const S of cs(g))r.push([{engine:"internal:role",selector:`${d}[name=${Ze(S.text,!1)}]`,score:qh-S.scoreBonus}]);const y=al(e,!1);if(y){r.push([{engine:"internal:role",selector:`${d}[name=${Ze(g,!0)}][description=${Ze(y,!0)}]`,score:$b+1}]);for(const S of cs(g))r.push([{engine:"internal:role",selector:`${d}[name=${Ze(S.text,!1)}][description=${Ze(y,!1)}]`,score:qh-S.scoreBonus+1}])}}else{const m={engine:"internal:role",selector:`${d}`,score:$h},y=al(e,!1);y&&r.push([{engine:"internal:role",selector:`${d}[description=${Ze(y,!0)}]`,score:$h+1}]);for(const S of f)r.push([m,{engine:"internal:has-text",selector:Vt(S.text,!1),score:Zo-S.scoreBonus}]);if(i&&u.length<=80){const S=new RegExp("^"+lc(u)+"$");r.push([m,{engine:"internal:has-text",selector:Vt(S,!1),score:qb}])}}}return Vh(r),r}function Xv(n){return/^[a-zA-Z][a-zA-Z0-9\-\_]+$/.test(n)?"#"+n:`[id=${gr(n)}]`}function vh(n){return n.some(e=>e.engine==="css"&&(e.selector.startsWith("#")||e.selector.startsWith('[id="')))}function Ka(n,e,i){const r=i.root??e.ownerDocument,a=[];function o(f){const d=a.slice();f&&d.unshift(f);const g=d.join(" > "),m=n.parseSelector(g);return n.querySelector(m,r,!1)===e?g:void 0}function u(f){const d={engine:"css",selector:f,score:vA},g=n.parseSelector(f),m=n.querySelectorAll(g,r);if(m.length===1)return[d];const y={engine:"nth",selector:String(m.indexOf(e)),score:Ih};return[d,y]}for(let f=e;f&&f!==r;f=Ct(f)){let d="";if(f.id&&!i.noCSSId){const y=Xv(f.id),S=o(y);if(S)return u(S);d=y}const g=f.parentNode,m=[...f.classList].map(EA);for(let y=0;y<m.length;++y){const S="."+m.slice(0,y+1).join("."),w=o(S);if(w)return u(w);!d&&g&&g.querySelectorAll(S).length===1&&(d=S)}if(g){const y=[...g.children],S=f.nodeName,E=y.filter(_=>_.nodeName===S).indexOf(f)===0?ni(f):`${ni(f)}:nth-child(${1+y.indexOf(f)})`,x=o(E);if(x)return u(x);d||(d=E)}else d||(d=ni(f));a.unshift(d)}return u(o())}function Vh(n){for(const e of n)for(const i of e)i.score>fA&&i.score<yA&&(i.score+=Math.min(qv,i.selector.length/10|0))}function Wo(n){const e=[];let i="";for(const{engine:r,selector:a}of n)e.length&&(i!=="css"||r!=="css"||a.startsWith(":nth-match("))&&e.push(">>"),i=r,r==="css"?e.push(a):e.push(`${r}=${a}`);return e.join(" ")}function as(n){let e=0;for(let i=0;i<n.length;i++)e+=n[i].score*(n.length-i);return e}function _A(n){let e,i=0;for(let r=0;r<n.length;++r){const a=n[r];let o;if(!(a==="-"||a==="_")){if(a>="a"&&a<="z"?o="lower":a>="A"&&a<="Z"?o="upper":a>="0"&&a<="9"?o="digit":o="other",o==="lower"&&e==="upper"){e=o;continue}e&&e!==o&&++i,e=o}}return i>=n.length/4}function Ho(n,e){if(n.length<=e)return n;n=n.substring(0,e);const i=n.match(/^(.*)\b(.+?)$/);return i?i[1].trimEnd():""}function cs(n){let e=[];{const i=n.match(/^([\d.,]+)[^.,\w]/),r=i?i[1].length:0;if(r){const a=Ho(n.substring(r).trimStart(),80);e.push({text:a,scoreBonus:a.length<=30?2:1})}}{const i=n.match(/[^.,\w]([\d.,]+)$/),r=i?i[1].length:0;if(r){const a=Ho(n.substring(0,n.length-r).trimEnd(),80);e.push({text:a,scoreBonus:a.length<=30?2:1})}}return n.length<=30?e.push({text:n,scoreBonus:0}):(e.push({text:Ho(n,80),scoreBonus:0}),e.push({text:Ho(n,30),scoreBonus:1})),e=e.filter(i=>i.text),e.length||e.push({text:n.substring(0,80),scoreBonus:0}),e}function ni(n){return n.nodeName.toLocaleLowerCase().replace(/[:\.]/g,e=>"\\"+e)}function EA(n){let e="";for(let i=0;i<n.length;i++)e+=TA(n,i);return e}function TA(n,e){const i=n.charCodeAt(e);return i===0?"�":i>=1&&i<=31||i>=48&&i<=57&&(e===0||e===1&&n.charCodeAt(0)===45)?"\\"+i.toString(16)+" ":e===0&&i===45&&n.length===1?"\\"+n.charAt(e):i>=128||i===45||i===95||i>=48&&i<=57||i>=65&&i<=90||i>=97&&i<=122?n.charAt(e):"\\"+n.charAt(e)}const Vb={queryAll(n,e){e.startsWith("/")&&n.nodeType!==Node.DOCUMENT_NODE&&(e="."+e);const i=[],r=n.ownerDocument||n;if(!r)return i;const a=r.evaluate(e,n,null,XPathResult.ORDERED_NODE_ITERATOR_TYPE);for(let o=a.iterateNext();o;o=a.iterateNext())o.nodeType===Node.ELEMENT_NODE&&i.push(o);return i}},Ba=Symbol("selector"),AA=class Xa{constructor(e,i,r){if(r!=null&&r.hasText&&(i+=` >> internal:has-text=${Vt(r.hasText,!1)}`),r!=null&&r.hasNotText&&(i+=` >> internal:has-not-text=${Vt(r.hasNotText,!1)}`),r!=null&&r.has&&(i+=" >> internal:has="+JSON.stringify(r.has[Ba])),r!=null&&r.hasNot&&(i+=" >> internal:has-not="+JSON.stringify(r.hasNot[Ba])),(r==null?void 0:r.visible)!==void 0&&(i+=` >> visible=${r.visible?"true":"false"}`),this[Ba]=i,i){const u=e.parseSelector(i);this.element=e.querySelector(u,e.document,!1),this.elements=e.querySelectorAll(u,e.document)}const a=i,o=this;o.locator=(u,f)=>new Xa(e,a?a+" >> "+u:u,f),o.getByTestId=u=>o.locator(sT(e.testIdAttributeNameForStrictErrorAndConsoleCodegen(),u)),o.getByAltText=(u,f)=>o.locator(aT(u,f)),o.getByLabel=(u,f)=>o.locator(rT(u,f)),o.getByPlaceholder=(u,f)=>o.locator(oT(u,f)),o.getByText=(u,f)=>o.locator(cT(u,f)),o.getByTitle=(u,f)=>o.locator(lT(u,f)),o.getByRole=(u,f={})=>o.locator(uT(u,f)),o.filter=u=>new Xa(e,i,u),o.first=()=>o.locator("nth=0"),o.last=()=>o.locator("nth=-1"),o.nth=u=>o.locator(`nth=${u}`),o.and=u=>new Xa(e,a+" >> internal:and="+JSON.stringify(u[Ba])),o.or=u=>new Xa(e,a+" >> internal:or="+JSON.stringify(u[Ba]))}};let CA=AA;class NA{constructor(e){this._injectedScript=e}install(){this._injectedScript.window.playwright||(this._injectedScript.window.playwright={$:(e,i)=>this._querySelector(e,!!i),$$:e=>this._querySelectorAll(e),inspect:e=>this._inspect(e),selector:e=>this._selector(e),generateLocator:(e,i)=>this._generateLocator(e,i),ariaSnapshot:(e,i)=>this._injectedScript.ariaSnapshot(e||this._injectedScript.document.body,i||{mode:"default"}),resume:()=>this._resume(),...new CA(this._injectedScript,"")},delete this._injectedScript.window.playwright.filter,delete this._injectedScript.window.playwright.first,delete this._injectedScript.window.playwright.last,delete this._injectedScript.window.playwright.nth,delete this._injectedScript.window.playwright.and,delete this._injectedScript.window.playwright.or)}_querySelector(e,i){if(typeof e!="string")throw new Error("Usage: playwright.query('Playwright >> selector').");const r=this._injectedScript.parseSelector(e);return this._injectedScript.querySelector(r,this._injectedScript.document,i)}_querySelectorAll(e){if(typeof e!="string")throw new Error("Usage: playwright.$$('Playwright >> selector').");const i=this._injectedScript.parseSelector(e);return this._injectedScript.querySelectorAll(i,this._injectedScript.document)}_inspect(e){if(typeof e!="string")throw new Error("Usage: playwright.inspect('Playwright >> selector').");this._injectedScript.window.inspect(this._querySelector(e,!1))}_selector(e){if(!(e instanceof Element))throw new Error("Usage: playwright.selector(element).");return this._injectedScript.generateSelectorSimple(e)}_generateLocator(e,i){if(!(e instanceof Element))throw new Error("Usage: playwright.locator(element).");const r=this._injectedScript.generateSelectorSimple(e);return Ri(i||"javascript",r)}_resume(){if(!this._injectedScript.window.__pw_resume)return!1;this._injectedScript.window.__pw_resume().catch(()=>{})}}function kA(n){try{return n instanceof RegExp||Object.prototype.toString.call(n)==="[object RegExp]"}catch{return!1}}function MA(n){try{return n instanceof Date||Object.prototype.toString.call(n)==="[object Date]"}catch{return!1}}function OA(n){try{return n instanceof URL||Object.prototype.toString.call(n)==="[object URL]"}catch{return!1}}function jA(n){var e;try{return n instanceof Error||n&&((e=Object.getPrototypeOf(n))==null?void 0:e.name)==="Error"}catch{return!1}}function LA(n,e){try{return n instanceof e||Object.prototype.toString.call(n)===`[object ${e.name}]`}catch{return!1}}function RA(n){try{return n instanceof ArrayBuffer||Object.prototype.toString.call(n)==="[object ArrayBuffer]"}catch{return!1}}const Yv={i8:Int8Array,ui8:Uint8Array,ui8c:Uint8ClampedArray,i16:Int16Array,ui16:Uint16Array,i32:Int32Array,ui32:Uint32Array,f32:Float32Array,f64:Float64Array,bi64:BigInt64Array,bui64:BigUint64Array};function Gb(n){if("toBase64"in n)return n.toBase64();const e=Array.from(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)).map(i=>String.fromCharCode(i)).join("");return btoa(e)}function Kb(n,e){const i=atob(n),r=new Uint8Array(i.length);for(let a=0;a<i.length;a++)r[a]=i.charCodeAt(a);return new e(r.buffer)}function Gh(n,e=[],i=new Map){if(!Object.is(n,void 0)){if(typeof n=="object"&&n){if("ref"in n)return i.get(n.ref);if("v"in n)return n.v==="undefined"?void 0:n.v==="null"?null:n.v==="NaN"?NaN:n.v==="Infinity"?1/0:n.v==="-Infinity"?-1/0:n.v==="-0"?-0:void 0;if("d"in n)return new Date(n.d);if("u"in n)return new URL(n.u);if("bi"in n)return BigInt(n.bi);if("e"in n){const r=new Error(n.e.m);return r.name=n.e.n,r.stack=n.e.s,r}if("r"in n)return new RegExp(n.r.p,n.r.f);if("a"in n){const r=[];i.set(n.id,r);for(const a of n.a)r.push(Gh(a,e,i));return r}if("o"in n){const r={};i.set(n.id,r);for(const{k:a,v:o}of n.o)a!=="__proto__"&&(r[a]=Gh(o,e,i));return r}if("h"in n)return e[n.h];if("ta"in n)return Kb(n.ta.b,Yv[n.ta.k]);if("ab"in n)return Kb(n.ab.b,Uint8Array).buffer}return n}}function DA(n,e){return Kh(n,e,{visited:new Map,lastId:0})}function Kh(n,e,i){if(n&&typeof n=="object"){if(typeof globalThis.Window=="function"&&n instanceof globalThis.Window)return"ref: <Window>";if(typeof globalThis.Document=="function"&&n instanceof globalThis.Document)return"ref: <Document>";if(typeof globalThis.Node=="function"&&n instanceof globalThis.Node)return"ref: <Node>"}return Fv(n,e,i)}function Fv(n,e,i){var o;const r=e(n);if("fallThrough"in r)n=r.fallThrough;else return r;if(typeof n=="symbol")return{v:"undefined"};if(Object.is(n,void 0))return{v:"undefined"};if(Object.is(n,null))return{v:"null"};if(Object.is(n,NaN))return{v:"NaN"};if(Object.is(n,1/0))return{v:"Infinity"};if(Object.is(n,-1/0))return{v:"-Infinity"};if(Object.is(n,-0))return{v:"-0"};if(typeof n=="boolean"||typeof n=="number"||typeof n=="string")return n;if(typeof n=="bigint")return{bi:n.toString()};if(jA(n)){let u;return(o=n.stack)!=null&&o.startsWith(n.name+": "+n.message)?u=n.stack:u=`${n.name}: ${n.message}
${n.stack}`,{e:{n:n.name,m:n.message,s:u}}}if(MA(n))return{d:n.toJSON()};if(OA(n))return{u:n.toJSON()};if(kA(n))return{r:{p:n.source,f:n.flags}};for(const[u,f]of Object.entries(Yv))if(LA(n,f))return{ta:{b:Gb(n),k:u}};if(RA(n))return{ab:{b:Gb(new Uint8Array(n))}};const a=i.visited.get(n);if(a)return{ref:a};if(Array.isArray(n)){const u=[],f=++i.lastId;i.visited.set(n,f);for(let d=0;d<n.length;++d)u.push(Kh(n[d],e,i));return{a:u,id:f}}if(typeof n=="object"){const u=[],f=++i.lastId;i.visited.set(n,f);for(const g of Object.keys(n)){let m;try{m=n[g]}catch{continue}g==="toJSON"&&typeof m=="function"?u.push({k:g,v:{o:[],id:0}}):u.push({k:g,v:Kh(m,e,i)})}let d;try{u.length===0&&n.toJSON&&typeof n.toJSON=="function"&&(d={value:n.toJSON()})}catch{}return d?Fv(d.value,e,i):{o:u,id:f}}}class zA{constructor(e,i){var r,a,o,u,f,d,g,m;this.global=e,this.isUnderTest=i,e.__pwClock?this.builtins=e.__pwClock.builtins:this.builtins={setTimeout:(r=e.setTimeout)==null?void 0:r.bind(e),clearTimeout:(a=e.clearTimeout)==null?void 0:a.bind(e),setInterval:(o=e.setInterval)==null?void 0:o.bind(e),clearInterval:(u=e.clearInterval)==null?void 0:u.bind(e),requestAnimationFrame:(f=e.requestAnimationFrame)==null?void 0:f.bind(e),cancelAnimationFrame:(d=e.cancelAnimationFrame)==null?void 0:d.bind(e),requestIdleCallback:(g=e.requestIdleCallback)==null?void 0:g.bind(e),cancelIdleCallback:(m=e.cancelIdleCallback)==null?void 0:m.bind(e),performance:e.performance,Intl:e.Intl,Date:e.Date,AbortSignal:e.AbortSignal},this.isUnderTest&&(e.builtins=this.builtins)}evaluate(e,i,r,a,...o){const u=o.slice(0,a),f=o.slice(a),d=[];for(let m=0;m<u.length;m++)d[m]=Gh(u[m],f);let g=this.global.eval(r);return e===!0?g=g(...d):e===!1?g=g:typeof g=="function"&&(g=g(...d)),i?this._promiseAwareJsonValueNoThrow(g):g}jsonValue(e,i){if(i!==void 0)return DA(i,r=>({fallThrough:r}))}_promiseAwareJsonValueNoThrow(e){const i=r=>{try{return this.jsonValue(!0,r)}catch{return}};return e&&typeof e=="object"&&typeof e.then=="function"?(async()=>{const r=await e;return i(r)})():i(e)}}class Qv{constructor(e,i){this._testIdAttributeNameForStrictErrorAndConsoleCodegen="data-testid",this._lastAriaSnapshotForTrack=new Map,this.utils={asLocator:Ri,cacheNormalizedWhitespaces:g_,elementText:Kt,getAriaRole:Tt,getElementAccessibleDescription:al,getElementAccessibleName:rl,isElementVisible:ii,isInsideScope:Hh,normalizeWhiteSpace:pt,parseAriaSnapshot:dd,generateAriaTree:br,findNewElement:VT,builtins:null},this.window=e,this.document=e.document,this.isUnderTest=i.isUnderTest,this.utils.builtins=new zA(e,i.isUnderTest).builtins,this._sdkLanguage=i.sdkLanguage,this._testIdAttributeNameForStrictErrorAndConsoleCodegen=i.testIdAttributeName,this._evaluator=new ZT,this.consoleApi=new NA(this),this.onGlobalListenersRemoved=new Set,this._autoClosingTags=new Set(["AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","MENUITEM","META","PARAM","SOURCE","TRACK","WBR"]),this._booleanAttributes=new Set(["checked","selected","disabled","readonly","multiple"]),this._eventTypes=new Map([["auxclick","mouse"],["click","mouse"],["dblclick","mouse"],["mousedown","mouse"],["mouseeenter","mouse"],["mouseleave","mouse"],["mousemove","mouse"],["mouseout","mouse"],["mouseover","mouse"],["mouseup","mouse"],["mouseleave","mouse"],["mousewheel","mouse"],["keydown","keyboard"],["keyup","keyboard"],["keypress","keyboard"],["textInput","keyboard"],["touchstart","touch"],["touchmove","touch"],["touchend","touch"],["touchcancel","touch"],["pointerover","pointer"],["pointerout","pointer"],["pointerenter","pointer"],["pointerleave","pointer"],["pointerdown","pointer"],["pointerup","pointer"],["pointermove","pointer"],["pointercancel","pointer"],["gotpointercapture","pointer"],["lostpointercapture","pointer"],["focus","focus"],["blur","focus"],["drag","drag"],["dragstart","drag"],["dragend","drag"],["dragover","drag"],["dragenter","drag"],["dragleave","drag"],["dragexit","drag"],["drop","drag"],["wheel","wheel"],["deviceorientation","deviceorientation"],["deviceorientationabsolute","deviceorientation"],["devicemotion","devicemotion"]]),this._hoverHitTargetInterceptorEvents=new Set(["mousemove"]),this._tapHitTargetInterceptorEvents=new Set(["pointerdown","pointerup","touchstart","touchend","touchcancel"]),this._mouseHitTargetInterceptorEvents=new Set(["mousedown","mouseup","pointerdown","pointerup","click","auxclick","dblclick","contextmenu"]),this._allHitTargetInterceptorEvents=new Set([...this._hoverHitTargetInterceptorEvents,...this._tapHitTargetInterceptorEvents,...this._mouseHitTargetInterceptorEvents]),this._engines=new Map,this._engines.set("xpath",Vb),this._engines.set("xpath:light",Vb),this._engines.set("role",Hb(!1)),this._engines.set("text",this._createTextEngine(!0,!1)),this._engines.set("text:light",this._createTextEngine(!1,!1)),this._engines.set("id",this._createAttributeEngine("id",!0)),this._engines.set("id:light",this._createAttributeEngine("id",!1)),this._engines.set("data-testid",this._createAttributeEngine("data-testid",!0)),this._engines.set("data-testid:light",this._createAttributeEngine("data-testid",!1)),this._engines.set("data-test-id",this._createAttributeEngine("data-test-id",!0)),this._engines.set("data-test-id:light",this._createAttributeEngine("data-test-id",!1)),this._engines.set("data-test",this._createAttributeEngine("data-test",!0)),this._engines.set("data-test:light",this._createAttributeEngine("data-test",!1)),this._engines.set("css",this._createCSSEngine()),this._engines.set("nth",{queryAll:()=>[]}),this._engines.set("visible",this._createVisibleEngine()),this._engines.set("internal:control",this._createControlEngine()),this._engines.set("internal:has",this._createHasEngine()),this._engines.set("internal:has-not",this._createHasNotEngine()),this._engines.set("internal:and",{queryAll:()=>[]}),this._engines.set("internal:or",{queryAll:()=>[]}),this._engines.set("internal:chain",this._createInternalChainEngine()),this._engines.set("internal:label",this._createInternalLabelEngine()),this._engines.set("internal:text",this._createTextEngine(!0,!0)),this._engines.set("internal:has-text",this._createInternalHasTextEngine()),this._engines.set("internal:has-not-text",this._createInternalHasNotTextEngine()),this._engines.set("internal:attr",this._createNamedAttributeEngine()),this._engines.set("internal:testid",this._createTestIdEngine()),this._engines.set("internal:role",Hb(!0)),this._engines.set("internal:describe",this._createDescribeEngine()),this._engines.set("aria-ref",this._createAriaRefEngine());for(const{name:r,source:a}of i.customEngines)this._engines.set(r,this.eval(a));this._stableRafCount=i.stableRafCount,this._browserName=i.browserName,this._shouldPrependErrorPrefix=!!i.shouldPrependErrorPrefix,this._isUtilityWorld=!!i.isUtilityWorld,hT({browserNameForWorkarounds:i.browserName}),this._setupGlobalListenersRemovalDetection(),this._setupHitTargetInterceptors(),this.isUnderTest&&(this.window.__injectedScript=this)}eval(e){return this.window.eval(e)}testIdAttributeNameForStrictErrorAndConsoleCodegen(){return this._testIdAttributeNameForStrictErrorAndConsoleCodegen}parseSelector(e){const i=fl(e);return d_(i,r=>{if(!this._engines.has(r.name))throw this.createStacklessError(`Unknown engine "${r.name}" while parsing selector ${e}`)}),i}generateSelector(e,i){return Ib(this,e,i)}generateSelectorSimple(e,i){return Ib(this,e,{...i,testIdAttributeName:this._testIdAttributeNameForStrictErrorAndConsoleCodegen}).selector}querySelector(e,i,r){const a=this.querySelectorAll(e,i);if(r&&a.length>1)throw this.strictModeViolationError(e,a);return this.checkDeprecatedSelectorUsage(e,a),a[0]}_queryNth(e,i){const r=[...e];let a=+i.body;return a===-1&&(a=r.length-1),new Set(r.slice(a,a+1))}_queryLayoutSelector(e,i,r){const a=i.name,o=i.body,u=[],f=this.querySelectorAll(o.parsed,r);for(const d of e){const g=zv(a,d,f,o.distance);g!==void 0&&u.push({element:d,score:g})}return u.sort((d,g)=>d.score-g.score),new Set(u.map(d=>d.element))}ariaSnapshot(e,i){return this.incrementalAriaSnapshot(e,i).full}incrementalAriaSnapshot(e,i){if(e.nodeType!==Node.ELEMENT_NODE)throw this.createStacklessError("Can only capture aria snapshot of Element nodes.");const r=br(e,i),a=vr(r,i);let o;if(i.track){const u=this._lastAriaSnapshotForTrack.get(i.track);u&&(o=vr(r,i,u).text),this._lastAriaSnapshotForTrack.set(i.track,r)}return this._lastAriaSnapshotForQuery=r,{full:a.text,incremental:o,iframeRefs:r.iframeRefs,iframeDepths:a.iframeDepths}}ariaSnapshotForRecorder(){const e=br(this.document.body,{mode:"ai"}),{text:i}=vr(e,{mode:"ai"});return{ariaSnapshot:i,refs:e.refs}}getAllElementsMatchingExpectAriaTemplate(e,i){return HT(e.documentElement,i)}querySelectorAll(e,i){if(e.capture!==void 0){if(e.parts.some(a=>a.name==="nth"))throw this.createStacklessError("Can't query n-th element in a request with the capture.");const r={parts:e.parts.slice(0,e.capture+1)};if(e.capture<e.parts.length-1){const a={parts:e.parts.slice(e.capture+1)},o={name:"internal:has",body:{parsed:a},source:It(a)};r.parts.push(o)}return this.querySelectorAll(r,i)}if(!i.querySelectorAll)throw this.createStacklessError("Node is not queryable.");if(e.capture!==void 0)throw this.createStacklessError("Internal error: there should not be a capture in the selector.");if(i.nodeType===11&&e.parts.length===1&&e.parts[0].name==="css"&&e.parts[0].source===":scope")return[i];this._evaluator.begin();try{let r=new Set([i]);for(const a of e.parts)if(a.name==="nth")r=this._queryNth(r,a);else if(a.name==="internal:and"){const o=this.querySelectorAll(a.body.parsed,i);r=new Set(o.filter(u=>r.has(u)))}else if(a.name==="internal:or"){const o=this.querySelectorAll(a.body.parsed,i);r=new Set(Bv(new Set([...r,...o])))}else if(QT.includes(a.name))r=this._queryLayoutSelector(r,a,i);else{const o=new Set;for(const u of r){const f=this._queryEngineAll(a,u);for(const d of f)o.add(d)}r=o}return[...r]}finally{this._evaluator.end()}}_queryEngineAll(e,i){const r=this._engines.get(e.name).queryAll(i,e.body);for(const a of r)if(!("nodeName"in a))throw this.createStacklessError(`Expected a Node but got ${Object.prototype.toString.call(a)}`);return r}_createAttributeEngine(e,i){const r=a=>[{simples:[{selector:{css:`[${e}=${JSON.stringify(a)}]`,functions:[]},combinator:""}]}];return{queryAll:(a,o)=>this._evaluator.query({scope:a,pierceShadow:i},r(o))}}_createCSSEngine(){return{queryAll:(e,i)=>this._evaluator.query({scope:e,pierceShadow:!0},i)}}_createTextEngine(e,i){return{queryAll:(a,o)=>{const{matcher:u,kind:f}=qo(o,i),d=[];let g=null;const m=S=>{if(f==="lax"&&g&&g.contains(S))return!1;const w=Tc(this._evaluator._cacheText,S,u);w==="none"&&(g=S),(w==="self"||w==="selfAndChildren"&&f==="strict"&&!i)&&d.push(S)};a.nodeType===Node.ELEMENT_NODE&&m(a);const y=this._evaluator._queryCSS({scope:a,pierceShadow:e},"*");for(const S of y)m(S);return d}}}_createInternalHasTextEngine(){return{queryAll:(e,i)=>{if(e.nodeType!==1)return[];const r=e,a=Kt(this._evaluator._cacheText,r),{matcher:o}=qo(i,!0);return o(a)?[r]:[]}}}_createInternalHasNotTextEngine(){return{queryAll:(e,i)=>{if(e.nodeType!==1)return[];const r=e,a=Kt(this._evaluator._cacheText,r),{matcher:o}=qo(i,!0);return o(a)?[]:[r]}}}_createInternalLabelEngine(){return{queryAll:(e,i)=>{const{matcher:r}=qo(i,!0);return this._evaluator._queryCSS({scope:e,pierceShadow:!0},"*").filter(o=>Uv(this._evaluator._cacheText,o).some(u=>r(u)))}}}_createNamedAttributeEngine(){return{queryAll:(i,r)=>{const a=Er(r);if(a.name||a.attributes.length!==1)throw new Error("Malformed attribute selector: "+r);const{name:o}=a.attributes[0],u=Xb(a.attributes[0]);return this._evaluator._queryCSS({scope:i,pierceShadow:!0},`[${o}]`).filter(d=>u(d.getAttribute(o)))}}}_createTestIdEngine(){return{queryAll:(i,r)=>{const a=Er(r);if(a.name||a.attributes.length!==1)throw new Error("Malformed test id selector: "+r);const o=av(a.attributes[0].name),u=Xb(a.attributes[0]),f=o.map(g=>`[${g}]`).join(",");return this._evaluator._queryCSS({scope:i,pierceShadow:!0},f).filter(g=>o.some(m=>{const y=g.getAttribute(m);return y!==null&&u(y)}))}}}_createDescribeEngine(){return{queryAll:i=>i.nodeType!==1?[]:[i]}}_createControlEngine(){return{queryAll(e,i){if(i==="enter-frame")return[];if(i==="return-empty")return[];if(i==="component")return e.nodeType!==1?[]:[e.childElementCount===1?e.firstElementChild:e];throw new Error(`Internal error, unknown internal:control selector ${i}`)}}}_createHasEngine(){return{queryAll:(i,r)=>i.nodeType!==1?[]:!!this.querySelector(r.parsed,i,!1)?[i]:[]}}_createHasNotEngine(){return{queryAll:(i,r)=>i.nodeType!==1?[]:!!this.querySelector(r.parsed,i,!1)?[]:[i]}}_createVisibleEngine(){return{queryAll:(i,r)=>{if(i.nodeType!==1)return[];const a=r==="true";return ii(i)===a?[i]:[]}}}_createInternalChainEngine(){return{queryAll:(i,r)=>this.querySelectorAll(r.parsed,i)}}extend(e,i){const r=this.window.eval(`
    (() => {
      const module = {};
      ${e}
      return module.exports.default();
    })()`);return new r(this,i)}async viewportRatio(e){return await new Promise(i=>{const r=new IntersectionObserver(a=>{i(a[0].intersectionRatio),r.disconnect()});r.observe(e),this.utils.builtins.requestAnimationFrame(()=>{})})}getElementBorderWidth(e){if(e.nodeType!==Node.ELEMENT_NODE||!e.ownerDocument||!e.ownerDocument.defaultView)return{left:0,top:0};const i=e.ownerDocument.defaultView.getComputedStyle(e);return{left:parseInt(i.borderLeftWidth||"",10),top:parseInt(i.borderTopWidth||"",10)}}describeIFrameStyle(e){if(!e.ownerDocument||!e.ownerDocument.defaultView)return"error:notconnected";const i=e.ownerDocument.defaultView;for(let a=e;a;a=Ct(a))if(i.getComputedStyle(a).transform!=="none")return"transformed";const r=i.getComputedStyle(e);return{left:parseInt(r.borderLeftWidth||"",10)+parseInt(r.paddingLeft||"",10),top:parseInt(r.borderTopWidth||"",10)+parseInt(r.paddingTop||"",10)}}retarget(e,i){let r=e.nodeType===Node.ELEMENT_NODE?e:e.parentElement;if(!r)return null;if(i==="none")return r;if(!r.matches("input, textarea, select")&&!r.isContentEditable&&(i==="button-link"?r=r.closest("button, [role=button], a, [role=link]")||r:r=r.closest("button, [role=button], [role=checkbox], [role=radio]")||r),i==="follow-label"&&!r.matches("a, input, textarea, button, select, [role=link], [role=button], [role=checkbox], [role=radio]")&&!r.isContentEditable){const a=r.closest("label");a&&a.control&&(r=a.control)}return r}async checkElementStates(e,i){if(i.includes("stable")){const r=await this._checkElementIsStable(e);if(r===!1)return{missingState:"stable"};if(r==="error:notconnected")return"error:notconnected"}for(const r of i)if(r!=="stable"){const a=this.elementState(e,r);if(a.received==="error:notconnected")return"error:notconnected";if(!a.matches)return{missingState:r}}}async _checkElementIsStable(e){const i=Symbol("continuePolling");let r,a=0,o=0;const u=()=>{const y=this.retarget(e,"no-follow-label");if(!y)return"error:notconnected";const S=this.utils.builtins.performance.now();if(this._stableRafCount>1&&S-o<15)return i;o=S;const w=y.getBoundingClientRect(),E={x:w.top,y:w.left,width:w.width,height:w.height};if(r){if(!(E.x===r.x&&E.y===r.y&&E.width===r.width&&E.height===r.height))return!1;if(++a>=this._stableRafCount)return!0}return r=E,i};let f,d;const g=new Promise((y,S)=>{f=y,d=S}),m=()=>{try{const y=u();y!==i?f(y):this.utils.builtins.requestAnimationFrame(m)}catch(y){d(y)}};return this.utils.builtins.requestAnimationFrame(m),g}_createAriaRefEngine(){return{queryAll:(i,r)=>{var o,u;const a=(u=(o=this._lastAriaSnapshotForQuery)==null?void 0:o.elements)==null?void 0:u.get(r);return a&&a.isConnected?[a]:[]}}}elementState(e,i){const r=this.retarget(e,["visible","hidden"].includes(i)?"none":"follow-label");if(!r||!r.isConnected)return i==="hidden"?{matches:!0,received:"hidden"}:{matches:!1,received:"error:notconnected"};if(i==="visible"||i==="hidden"){const a=ii(r);return{matches:i==="visible"?a:!a,received:a?"visible":"hidden"}}if(i==="disabled"||i==="enabled"){const a=hc(r);return{matches:i==="disabled"?a:!a,received:a?"disabled":"enabled"}}if(i==="editable"){const a=hc(r),o=CT(r);if(o==="error")throw this.createStacklessError("Element is not an <input>, <textarea>, <select> or [contenteditable] and does not have a role allowing [aria-readonly]");return{matches:!a&&!o,received:a?"disabled":o?"readOnly":"editable"}}if(i==="checked"||i==="unchecked"){const a=i==="checked",o=TT(r);if(o==="error")throw this.createStacklessError("Not a checkbox or radio button");const u=r.nodeName==="INPUT"&&r.type==="radio";return{matches:a===o,received:o?"checked":"unchecked",isRadio:u}}if(i==="indeterminate"){const a=ET(r);if(a==="error")throw this.createStacklessError("Not a checkbox or radio button");return{matches:a==="mixed",received:a===!0?"checked":a===!1?"unchecked":"mixed"}}throw this.createStacklessError(`Unexpected element state "${i}"`)}selectOptions(e,i){const r=this.retarget(e,"follow-label");if(!r)return"error:notconnected";if(r.nodeName.toLowerCase()!=="select")throw this.createStacklessError("Element is not a <select> element");const a=r,o=[...a.options],u=[];let f=i.slice();for(let d=0;d<o.length;d++){const g=o[d],m=pt(g.label),y=S=>{if(S instanceof Node)return g===S;const w=x=>x===g.label||pt(x)===m;let E=!0;return S.valueOrLabel!==void 0&&(E=E&&(S.valueOrLabel===g.value||w(S.valueOrLabel))),S.value!==void 0&&(E=E&&S.value===g.value),S.label!==void 0&&(E=E&&w(S.label)),S.index!==void 0&&(E=E&&S.index===d),E};if(f.some(y)){if(!this.elementState(g,"enabled").matches)return"error:optionnotenabled";if(u.push(g),a.multiple)f=f.filter(S=>!y(S));else{f=[];break}}}return f.length?"error:optionsnotfound":(a.value=void 0,u.forEach(d=>d.selected=!0),a.dispatchEvent(new Event("input",{bubbles:!0,composed:!0})),a.dispatchEvent(new Event("change",{bubbles:!0})),u.map(d=>d.value))}fill(e,i){const r=this.retarget(e,"follow-label");if(!r)return"error:notconnected";if(r.nodeName.toLowerCase()==="input"){const a=r,o=a.type.toLowerCase(),u=new Set(["color","date","time","datetime-local","month","range","week"]);if(!new Set(["","email","number","password","search","tel","text","url"]).has(o)&&!u.has(o))throw this.createStacklessError(`Input of type "${o}" cannot be filled`);if(o==="number"&&(i=i.trim(),isNaN(Number(i))))throw this.createStacklessError("Cannot type text into input[type=number]");if(o==="color"&&(i=i.toLowerCase()),u.has(o)){if(i=i.trim(),a.focus(),a.value=i,a.value!==i)throw this.createStacklessError("Malformed value");return r.dispatchEvent(new Event("input",{bubbles:!0,composed:!0})),r.dispatchEvent(new Event("change",{bubbles:!0})),"done"}}else if(r.nodeName.toLowerCase()!=="textarea"){if(!r.isContentEditable)throw this.createStacklessError("Element is not an <input>, <textarea> or [contenteditable] element")}return this.selectText(r),"needsinput"}selectText(e){const i=this.retarget(e,"follow-label");if(!i)return"error:notconnected";if(i.nodeName.toLowerCase()==="input"){const o=i;return o.select(),o.focus(),"done"}if(i.nodeName.toLowerCase()==="textarea"){const o=i;return o.selectionStart=0,o.selectionEnd=o.value.length,o.focus(),"done"}i.focus();const r=i.ownerDocument.createRange();r.selectNodeContents(i);const a=i.ownerDocument.defaultView.getSelection();return a&&(a.removeAllRanges(),a.addRange(r)),"done"}_activelyFocused(e){const i=e.getRootNode().activeElement,r=i===e&&!!e.ownerDocument&&e.ownerDocument.hasFocus();return{activeElement:i,isFocused:r}}focusNode(e,i){if(!e.isConnected)return"error:notconnected";if(e.nodeType!==Node.ELEMENT_NODE)throw this.createStacklessError("Node is not an element");const{activeElement:r,isFocused:a}=this._activelyFocused(e);if(e.isContentEditable&&!a&&r&&r.blur&&r.blur(),e.focus(),e.focus(),i&&!a&&e.nodeName.toLowerCase()==="input")try{e.setSelectionRange(0,0)}catch{}return"done"}blurNode(e){if(!e.isConnected)return"error:notconnected";if(e.nodeType!==Node.ELEMENT_NODE)throw this.createStacklessError("Node is not an element");return e.blur(),"done"}setInputFiles(e,i){if(e.nodeType!==Node.ELEMENT_NODE)return"Node is not of type HTMLElement";const r=e;if(r.nodeName!=="INPUT")return"Not an <input> element";const a=r;if((a.getAttribute("type")||"").toLowerCase()!=="file")return"Not an input[type=file] element";const u=i.map(d=>{const g=Uint8Array.from(atob(d.buffer),m=>m.charCodeAt(0));return new File([g],d.name,{type:d.mimeType,lastModified:d.lastModifiedMs})}),f=new DataTransfer;for(const d of u)f.items.add(d);a.files=f.files,a.dispatchEvent(new Event("input",{bubbles:!0,composed:!0})),a.dispatchEvent(new Event("change",{bubbles:!0}))}expectHitTarget(e,i){const r=[];let a=i;for(;a;){const m=uv(a);if(!m||(r.push(m),m.nodeType===9))break;a=m.host}let o;for(let m=r.length-1;m>=0;m--){const y=r[m],S=y.elementsFromPoint(e.x,e.y),w=y.elementFromPoint(e.x,e.y);if(w&&S[0]&&Ct(w)===S[0]){const x=this.window.getComputedStyle(w);(x==null?void 0:x.display)==="contents"&&S.unshift(w)}S[0]&&S[0].shadowRoot===y&&S[1]===w&&S.shift();const E=S[0];if(!E||(o=E,m&&E!==r[m-1].host))break}const u=[];for(;o&&o!==i;)u.push(o),o=o.assignedSlot??Ct(o);if(o===i)return"done";const f=this.previewNode(u[0]||this.document.documentElement);let d,g=i;for(;g;){const m=u.indexOf(g);if(m!==-1){m>1&&(d=this.previewNode(u[m-1]));break}g=Ct(g)}return d?{hitTargetDescription:`${f} from ${d} subtree`}:{hitTargetDescription:f}}setupHitTargetInterceptor(e,i,r,a){const o=this.retarget(e,"button-link");if(!o||!o.isConnected)return"error:notconnected";if(r){const m=this.expectHitTarget(r,o);if(m!=="done")return m.hitTargetDescription}if(i==="drag")return{stop:()=>"done"};const u={hover:this._hoverHitTargetInterceptorEvents,tap:this._tapHitTargetInterceptorEvents,mouse:this._mouseHitTargetInterceptorEvents}[i];let f;const d=m=>{if(!u.has(m.type)||!m.isTrusted&&!m.__pwTrustedSynthetic)return;const y=this.window.TouchEvent&&m instanceof this.window.TouchEvent?m.touches[0]:m;f===void 0&&y&&(f=this.expectHitTarget({x:y.clientX,y:y.clientY},o)),(a||f!=="done"&&f!==void 0)&&(m.preventDefault(),m.stopPropagation(),m.stopImmediatePropagation())},g=()=>(this._hitTargetInterceptor===d&&(this._hitTargetInterceptor=void 0),f||"done");return this._hitTargetInterceptor=d,{stop:g}}dispatchEvent(e,i,r){var u,f,d;let a;const o={bubbles:!0,cancelable:!0,composed:!0,...r};switch(this._eventTypes.get(i)){case"mouse":a=new MouseEvent(i,o);break;case"keyboard":a=new KeyboardEvent(i,o);break;case"touch":{if(this._browserName==="webkit"){const g=y=>{var E,x;if(y instanceof Touch)return y;let S=y.pageX;S===void 0&&y.clientX!==void 0&&(S=y.clientX+(((E=this.document.scrollingElement)==null?void 0:E.scrollLeft)||0));let w=y.pageY;return w===void 0&&y.clientY!==void 0&&(w=y.clientY+(((x=this.document.scrollingElement)==null?void 0:x.scrollTop)||0)),this.document.createTouch(this.window,y.target??e,y.identifier,S,w,y.screenX,y.screenY,y.radiusX,y.radiusY,y.rotationAngle,y.force)},m=y=>y instanceof TouchList||!y?y:this.document.createTouchList(...y.map(g));o.target??(o.target=e),o.touches=m(o.touches),o.targetTouches=m(o.targetTouches),o.changedTouches=m(o.changedTouches),a=new TouchEvent(i,o)}else o.target??(o.target=e),o.touches=(u=o.touches)==null?void 0:u.map(g=>g instanceof Touch?g:new Touch({...g,target:g.target??e})),o.targetTouches=(f=o.targetTouches)==null?void 0:f.map(g=>g instanceof Touch?g:new Touch({...g,target:g.target??e})),o.changedTouches=(d=o.changedTouches)==null?void 0:d.map(g=>g instanceof Touch?g:new Touch({...g,target:g.target??e})),a=new TouchEvent(i,o);break}case"pointer":a=new PointerEvent(i,o);break;case"focus":a=new FocusEvent(i,o);break;case"drag":a=new DragEvent(i,o);break;case"wheel":a=new WheelEvent(i,o);break;case"deviceorientation":try{a=new DeviceOrientationEvent(i,o)}catch{const{bubbles:g,cancelable:m,alpha:y,beta:S,gamma:w,absolute:E}=o;a=this.document.createEvent("DeviceOrientationEvent"),a.initDeviceOrientationEvent(i,g,m,y,S,w,E)}break;case"devicemotion":try{a=new DeviceMotionEvent(i,o)}catch{const{bubbles:g,cancelable:m,acceleration:y,accelerationIncludingGravity:S,rotationRate:w,interval:E}=o;a=this.document.createEvent("DeviceMotionEvent"),a.initDeviceMotionEvent(i,g,m,y,S,w,E)}break;default:a=new Event(i,o);break}e.dispatchEvent(a)}previewNode(e){if(e.nodeType===Node.TEXT_NODE)return Bo(`#text=${e.nodeValue||""}`);if(e.nodeType!==Node.ELEMENT_NODE)return Bo(`<${e.nodeName.toLowerCase()} />`);const i=e,r=[];for(let d=0;d<i.attributes.length;d++){const{name:g,value:m}=i.attributes[d];g!=="style"&&(!m&&this._booleanAttributes.has(g)?r.push(` ${g}`):r.push(` ${g}="${m}"`))}r.sort((d,g)=>d.length-g.length);const a=hb(r.join(""),500);if(this._autoClosingTags.has(i.nodeName))return Bo(`<${i.nodeName.toLowerCase()}${a}/>`);const o=i.childNodes;let u=!1;if(o.length<=5){u=!0;for(let d=0;d<o.length;d++)u=u&&o[d].nodeType===Node.TEXT_NODE}const f=u?i.textContent||"":o.length?"…":"";return Bo(`<${i.nodeName.toLowerCase()}${a}>${hb(f,50)}</${i.nodeName.toLowerCase()}>`)}_generateSelectors(e){this._evaluator.begin(),xc(),bd();try{const i=this._isUtilityWorld&&this._browserName==="firefox"?2:10;return e.slice(0,i).map(a=>({preview:this.previewNode(a),selector:this.generateSelectorSimple(a)})).map((a,o)=>`${o+1}) ${a.preview} aka ${Ri(this._sdkLanguage,a.selector)}`)}finally{vd(),_c(),this._evaluator.end()}}strictModeViolationError(e,i){const r=this._generateSelectors(i).map(a=>`
    `+a);return r.length<i.length&&r.push(`
    ...`),this.createStacklessError(`strict mode violation: ${Ri(this._sdkLanguage,It(e))} resolved to ${i.length} elements:${r.join("")}
`)}checkDeprecatedSelectorUsage(e,i){const r=new Set(["_react","_vue","xpath:light","text:light","id:light","data-testid:light","data-test-id:light","data-test:light"]);if(!i.length)return;const a=e.parts.find(u=>r.has(u.name));if(!a)return;const o=this._generateSelectors(i).map(u=>`
    `+u);throw o.length<i.length&&o.push(`
    ...`),this.createStacklessError(`"${a.name}" selector is not supported: ${Ri(this._sdkLanguage,It(e))} resolved to ${i.length} element${i.length===1?"":"s"}:${o.join("")}
`)}createStacklessError(e){const i=this._shouldPrependErrorPrefix?new Error("Error: "+e):new Error(e);return this._browserName==="firefox"?(i.stack="",i):(delete i.stack,i)}createHighlight(){return new mh(this)}maskSelectors(e,i){const r=this._createHighlight(),a=[];for(const o of e)a.push(this.querySelectorAll(o,this.document.documentElement));r.maskElements(a.flat(),i)}_createHighlight(){return this._highlight&&this.hideHighlight(),this._highlight=new mh(this),this._highlight.install(),this._highlight}_ensureHighlight(){return this._highlight||(this._highlight=new mh(this),this._highlight.install()),this._highlight}addHighlight(e,i){this._ensureHighlight().addElementHighlight(e,i)}removeHighlight(e){this._ensureHighlight().removeElementHighlight(e)}setScreencastAnnotation(e){const i=this._ensureHighlight();if(!e){i.updateHighlight([]),i.hideActionPoint(),i.hideActionTitle(),i.hideActionCursor();return}const r=e.duration??500;e.box&&i.updateHighlight([{box:e.box,color:"rgba(0, 128, 255, 0.15)",borderColor:"rgba(0, 128, 255, 0.6)",fadeDuration:r}]),e.point&&(e.cursor!=="none"&&i.moveActionCursor(e.point.x,e.point.y,r),i.showActionPoint(e.point.x,e.point.y,r)),e.actionTitle&&i.showActionTitle(e.actionTitle,r,e.position,e.fontSize)}addUserOverlay(e,i){this._ensureHighlight().addUserOverlay(e,i)}getUserOverlay(e){return this._ensureHighlight().getUserOverlay(e)}removeUserOverlay(e){this._ensureHighlight().removeUserOverlay(e)}setUserOverlaysVisible(e){this._ensureHighlight().setUserOverlaysVisible(e)}hideHighlight(){this._highlight&&(this._highlight.uninstall(),delete this._highlight)}markTargetElements(e){const i=new CustomEvent("__playwright_reset_targets__",{bubbles:!0,cancelable:!0,composed:!0});this.document.dispatchEvent(i);const r=new CustomEvent("__playwright_mark_target__",{bubbles:!0,cancelable:!0,composed:!0});for(const a of e)a.dispatchEvent(r)}_setupGlobalListenersRemovalDetection(){const e="__playwright_global_listeners_check__";let i=!1;const r=()=>i=!0;this.window.addEventListener(e,r),new MutationObserver(a=>{if(a.some(u=>Array.from(u.addedNodes).includes(this.document.documentElement))&&(i=!1,this.window.dispatchEvent(new CustomEvent(e)),!i)){this.window.addEventListener(e,r);for(const u of this.onGlobalListenersRemoved)u()}}).observe(this.document,{childList:!0})}_setupHitTargetInterceptors(){const e=r=>{var a;return(a=this._hitTargetInterceptor)==null?void 0:a.call(this,r)},i=()=>{for(const r of this._allHitTargetInterceptorEvents)this.window.addEventListener(r,e,{capture:!0,passive:!1})};i(),this.onGlobalListenersRemoved.add(i)}async expect(e,i,r){const a=await this._expectCore(e,i,r),o=a.matches!==i.isNot?void 0:this._ariaSnapshotForExpect(e,i);return a.received===void 0&&o===void 0?{matches:a.matches,missingReceived:a.missingReceived}:{matches:a.matches,received:{value:a.received,ariaSnapshot:o},missingReceived:a.missingReceived}}_ariaSnapshotForExpect(e,i){const r=i.expression;if(!(r==="to.have.count"||r.endsWith(".array"))&&r!=="to.match.aria"){if(e&&ii(e)){const a=r==="to.have.text";return this._renderAriaSnapshot(e,{mode:"default",depth:a?void 0:1})}if(this.document.body)return this._renderAriaSnapshot(this.document.body,{mode:"default"})}}_renderAriaSnapshot(e,i){return vr(br(e,i),i).text}async _expectCore(e,i,r){var o,u;if(i.expression==="to.have.count"||i.expression.endsWith(".array"))return this.expectArray(r,i);if(!e){if(!i.isNot&&i.expression==="to.be.hidden")return{matches:!0};if(i.isNot&&i.expression==="to.be.visible")return{matches:!1};if(!i.isNot&&i.expression==="to.be.detached")return{matches:!0};if(i.isNot&&i.expression==="to.be.attached")return{matches:!1};if(i.isNot&&i.expression==="to.be.in.viewport")return{matches:!1};if(i.expression==="to.have.title"&&((o=i==null?void 0:i.expectedText)!=null&&o[0])){const f=new fr(i.expectedText[0]),d=this.document.title;return{received:d,matches:f.matches(d)}}if(i.expression==="to.have.url"&&((u=i==null?void 0:i.expectedText)!=null&&u[0])){const f=new fr(i.expectedText[0]),d=this.document.location.href;return{received:d,matches:f.matches(d)}}if(i.expression==="to.match.aria"&&!i.selector){if(!this.document.body)return{matches:i.isNot,missingReceived:!0};const f=jb(this.document.body,i.expectedValue);return{received:f.received,matches:!!f.matches.length}}return{matches:i.isNot,missingReceived:!0}}return await this.expectSingleElement(e,i)}async expectSingleElement(e,i){var a;const r=i.expression;{let o;if(r==="to.have.attribute"){const u=e.hasAttribute(i.expressionArg);o={matches:u,received:u?"attribute present":"attribute not present"}}else if(r==="to.be.checked"){const{checked:u,indeterminate:f}=i.expectedValue;if(f){if(u!==void 0)throw this.createStacklessError("Can't assert indeterminate and checked at the same time");o=this.elementState(e,"indeterminate")}else o=this.elementState(e,u===!1?"unchecked":"checked")}else if(r==="to.be.disabled")o=this.elementState(e,"disabled");else if(r==="to.be.editable")o=this.elementState(e,"editable");else if(r==="to.be.readonly")o=this.elementState(e,"editable"),o.matches=!o.matches;else if(r==="to.be.empty")if(e.nodeName==="INPUT"||e.nodeName==="TEXTAREA"){const u=e.value;o={matches:!u,received:u?"notEmpty":"empty"}}else{const u=(a=e.textContent)==null?void 0:a.trim();o={matches:!u,received:u?"notEmpty":"empty"}}else if(r==="to.be.enabled")o=this.elementState(e,"enabled");else if(r==="to.be.focused"){const u=this._activelyFocused(e).isFocused;o={matches:u,received:u?"focused":"inactive"}}else r==="to.be.hidden"?o=this.elementState(e,"hidden"):r==="to.be.visible"?o=this.elementState(e,"visible"):r==="to.be.attached"?o={matches:!0,received:"attached"}:r==="to.be.detached"&&(o={matches:!1,received:"attached"});if(o){if(o.received==="error:notconnected")throw this.createStacklessError("Element is not connected");return o}}if(r==="to.have.property"){let o=e;const u=i.expressionArg.split(".");for(let g=0;g<u.length-1;g++){if(typeof o!="object"||!(u[g]in o))return{received:void 0,matches:!1};o=o[u[g]]}const f=o[u[u.length-1]],d=Xh(f,i.expectedValue);return{received:f,matches:d}}if(r==="to.be.in.viewport"){const o=await this.viewportRatio(e);return{received:`viewport ratio ${o}`,matches:o>0&&o>(i.expectedNumber??0)-1e-9}}if(r==="to.have.values"){if(e=this.retarget(e,"follow-label"),e.nodeName!=="SELECT"||!e.multiple)throw this.createStacklessError("Not a select element with a multiple attribute");const o=[...e.selectedOptions].map(u=>u.value);return o.length!==i.expectedText.length?{received:o,matches:!1}:{received:o,matches:o.map((u,f)=>new fr(i.expectedText[f]).matches(u)).every(Boolean)}}if(r==="to.match.aria"){const o=jb(e,i.expectedValue);return{received:o.received,matches:!!o.matches.length}}{let o;if(r==="to.have.attribute.value"){const u=e.getAttribute(i.expressionArg);if(u===null)return{received:null,matches:!1};o=u}else if(["to.have.class","to.contain.class"].includes(r)){if(!i.expectedText)throw this.createStacklessError("Expected text is not provided for "+r);return{received:e.classList.toString(),matches:new fr(i.expectedText[0]).matchesClassList(this,e.classList,r==="to.contain.class")}}else if(r==="to.have.css")o=this.window.getComputedStyle(e,i.pseudo?`::${i.pseudo}`:void 0).getPropertyValue(i.expressionArg);else if(r==="to.have.id")o=e.id;else if(r==="to.have.text")o=i.useInnerText?e.innerText:Kt(new Map,e).full;else if(r==="to.have.accessible.name")o=rl(e,!1);else if(r==="to.have.accessible.description")o=al(e,!1);else if(r==="to.have.accessible.error.message")o=xT(e);else if(r==="to.have.role")o=Tt(e)||"";else if(r==="to.have.value"){if(e=this.retarget(e,"follow-label"),e.nodeName!=="INPUT"&&e.nodeName!=="TEXTAREA"&&e.nodeName!=="SELECT")throw this.createStacklessError("Not an input element");o=e.value}if(o!==void 0&&i.expectedText){const u=new fr(i.expectedText[0]);return{received:o,matches:u.matches(o)}}}throw this.createStacklessError("Unknown expect matcher: "+r)}expectArray(e,i){const r=i.expression;if(r==="to.have.count"){const d=e.length,g=d===i.expectedNumber;return{received:d,matches:g}}if(!i.expectedText)throw this.createStacklessError("Expected text is not provided for "+r);if(["to.have.class.array","to.contain.class.array"].includes(r)){const d=e.map(y=>y.classList),g=d.map(String);if(d.length!==i.expectedText.length)return{received:g,matches:!1};const m=this._matchSequentially(i.expectedText,d,(y,S)=>y.matchesClassList(this,S,r==="to.contain.class.array"));return{received:g,matches:m}}if(!["to.contain.text.array","to.have.text.array"].includes(r))throw this.createStacklessError("Unknown expect matcher: "+r);const a=e.map(d=>i.useInnerText?d.innerText:Kt(new Map,d).full),o=r!=="to.contain.text.array";if(!(a.length===i.expectedText.length||!o))return{received:a,matches:!1};const f=this._matchSequentially(i.expectedText,a,(d,g)=>d.matches(g));return{received:a,matches:f}}_matchSequentially(e,i,r){const a=e.map(f=>new fr(f));let o=0,u=0;for(;o<a.length&&u<i.length;)r(a[o],i[u])&&++o,++u;return o===a.length}}function Bo(n){return n.replace(/\n/g,"↵").replace(/\t/g,"⇆")}function Xb(n){const{value:e,caseSensitive:i}=n;if(e instanceof RegExp)return a=>!!a.match(e);if(i)return a=>a===e;const r=e.toLowerCase();return a=>a.toLowerCase().includes(r)}function UA(n){if(n=n.substring(1,n.length-1),!n.includes("\\"))return n;const e=[];let i=0;for(;i<n.length;)n[i]==="\\"&&i+1<n.length&&i++,e.push(n[i++]);return e.join("")}function qo(n,e){if(n[0]==="/"&&n.lastIndexOf("/")>0){const a=n.lastIndexOf("/"),o=new RegExp(n.substring(1,a),n.substring(a+1));return{matcher:u=>o.test(u.full),kind:"regex"}}const i=e?JSON.parse.bind(JSON):UA;let r=!1;return n.length>1&&n[0]==='"'&&n[n.length-1]==='"'?(n=i(n),r=!0):e&&n.length>1&&n[0]==='"'&&n[n.length-2]==='"'&&n[n.length-1]==="i"?(n=i(n.substring(0,n.length-1)),r=!1):e&&n.length>1&&n[0]==='"'&&n[n.length-2]==='"'&&n[n.length-1]==="s"?(n=i(n.substring(0,n.length-1)),r=!0):n.length>1&&n[0]==="'"&&n[n.length-1]==="'"&&(n=i(n),r=!0),n=pt(n),r?e?{kind:"strict",matcher:o=>o.normalized===n}:{matcher:o=>!n&&!o.immediate.length?!0:o.immediate.some(u=>pt(u)===n),kind:"strict"}:(n=n.toLowerCase(),{kind:"lax",matcher:a=>a.normalized.toLowerCase().includes(n)})}class fr{constructor(e){if(this._normalizeWhiteSpace=e.normalizeWhiteSpace,this._ignoreCase=e.ignoreCase,this._string=e.matchSubstring?void 0:this.normalize(e.string),this._substring=e.matchSubstring?this.normalize(e.string):void 0,e.regexSource){const i=new Set((e.regexFlags||"").split(""));e.ignoreCase===!1&&i.delete("i"),e.ignoreCase===!0&&i.add("i"),this._regex=new RegExp(e.regexSource,[...i].join(""))}}matches(e){return this._regex||(e=this.normalize(e)),this._string!==void 0?e===this._string:this._substring!==void 0?e.includes(this._substring):this._regex?!!this._regex.test(e):!1}matchesClassList(e,i,r){if(r){if(this._regex)throw e.createStacklessError("Partial matching does not support regular expressions. Please provide a string value.");return this._string.split(/\s+/g).filter(Boolean).every(a=>i.contains(a))}return this.matches(i.toString())}normalize(e){return e&&(this._normalizeWhiteSpace&&(e=pt(e)),this._ignoreCase&&(e=e.toLocaleLowerCase()),e)}}function Xh(n,e){if(n===e)return!0;if(n&&e&&typeof n=="object"&&typeof e=="object"){if(n.constructor!==e.constructor)return!1;if(Array.isArray(n)){if(n.length!==e.length)return!1;for(let r=0;r<n.length;++r)if(!Xh(n[r],e[r]))return!1;return!0}if(n instanceof RegExp)return n.source===e.source&&n.flags===e.flags;if(n.valueOf!==Object.prototype.valueOf)return n.valueOf()===e.valueOf();if(n.toString!==Object.prototype.toString)return n.toString()===e.toString();const i=Object.keys(n);if(i.length!==Object.keys(e).length)return!1;for(let r=0;r<i.length;++r)if(!e.hasOwnProperty(i[r]))return!1;for(const r of i)if(!Xh(n[r],e[r]))return!1;return!0}return typeof n=="number"&&typeof e=="number"?isNaN(n)&&isNaN(e):!1}const HA={tagName:"svg",children:[{tagName:"defs",children:[{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-gripper"},children:[{tagName:"path",attrs:{d:"M5 3h2v2H5zm0 4h2v2H5zm0 4h2v2H5zm4-8h2v2H9zm0 4h2v2H9zm0 4h2v2H9z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-circle-large-filled"},children:[{tagName:"path",attrs:{d:"M8 1a6.8 6.8 0 0 1 1.86.253 6.899 6.899 0 0 1 3.083 1.805 6.903 6.903 0 0 1 1.804 3.083C14.916 6.738 15 7.357 15 8s-.084 1.262-.253 1.86a6.9 6.9 0 0 1-.704 1.674 7.157 7.157 0 0 1-2.516 2.509 6.966 6.966 0 0 1-1.668.71A6.984 6.984 0 0 1 8 15a6.984 6.984 0 0 1-1.86-.246 7.098 7.098 0 0 1-1.674-.711 7.3 7.3 0 0 1-1.415-1.094 7.295 7.295 0 0 1-1.094-1.415 7.098 7.098 0 0 1-.71-1.675A6.985 6.985 0 0 1 1 8c0-.643.082-1.262.246-1.86a6.968 6.968 0 0 1 .711-1.667 7.156 7.156 0 0 1 2.509-2.516 6.895 6.895 0 0 1 1.675-.704A6.808 6.808 0 0 1 8 1z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-stop-circle"},children:[{tagName:"path",attrs:{d:"M6 6h4v4H6z"}},{tagName:"path",attrs:{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M8.6 1c1.6.1 3.1.9 4.2 2 1.3 1.4 2 3.1 2 5.1 0 1.6-.6 3.1-1.6 4.4-1 1.2-2.4 2.1-4 2.4-1.6.3-3.2.1-4.6-.7-1.4-.8-2.5-2-3.1-3.5C.9 9.2.8 7.5 1.3 6c.5-1.6 1.4-2.9 2.8-3.8C5.4 1.3 7 .9 8.6 1zm.5 12.9c1.3-.3 2.5-1 3.4-2.1.8-1.1 1.3-2.4 1.2-3.8 0-1.6-.6-3.2-1.7-4.3-1-1-2.2-1.6-3.6-1.7-1.3-.1-2.7.2-3.8 1-1.1.8-1.9 1.9-2.3 3.3-.4 1.3-.4 2.7.2 4 .6 1.3 1.5 2.3 2.7 3 1.2.7 2.6.9 3.9.6z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-inspect"},children:[{tagName:"path",attrs:{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M1 3l1-1h12l1 1v6h-1V3H2v8h5v1H2l-1-1V3zm14.707 9.707L9 6v9.414l2.707-2.707h4zM10 13V8.414l3.293 3.293h-2L10 13z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-whole-word"},children:[{tagName:"path",attrs:{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M0 11H1V13H15V11H16V14H15H1H0V11Z"}},{tagName:"path",attrs:{d:"M6.84048 11H5.95963V10.1406H5.93814C5.555 10.7995 4.99104 11.1289 4.24625 11.1289C3.69839 11.1289 3.26871 10.9839 2.95718 10.6938C2.64924 10.4038 2.49527 10.0189 2.49527 9.53906C2.49527 8.51139 3.10041 7.91341 4.3107 7.74512L5.95963 7.51416C5.95963 6.57959 5.58186 6.1123 4.82632 6.1123C4.16389 6.1123 3.56591 6.33789 3.03238 6.78906V5.88672C3.57307 5.54297 4.19612 5.37109 4.90152 5.37109C6.19416 5.37109 6.84048 6.05501 6.84048 7.42285V11ZM5.95963 8.21777L4.63297 8.40039C4.22476 8.45768 3.91682 8.55973 3.70914 8.70654C3.50145 8.84977 3.39761 9.10579 3.39761 9.47461C3.39761 9.74316 3.4925 9.96338 3.68228 10.1353C3.87564 10.3035 4.13166 10.3877 4.45035 10.3877C4.8872 10.3877 5.24706 10.2355 5.52994 9.93115C5.8164 9.62321 5.95963 9.2347 5.95963 8.76562V8.21777Z"}},{tagName:"path",attrs:{d:"M9.3475 10.2051H9.32601V11H8.44515V2.85742H9.32601V6.4668H9.3475C9.78076 5.73633 10.4146 5.37109 11.2489 5.37109C11.9543 5.37109 12.5057 5.61816 12.9032 6.1123C13.3042 6.60286 13.5047 7.26172 13.5047 8.08887C13.5047 9.00911 13.2809 9.74674 12.8333 10.3018C12.3857 10.8532 11.7734 11.1289 10.9964 11.1289C10.2695 11.1289 9.71989 10.821 9.3475 10.2051ZM9.32601 7.98682V8.75488C9.32601 9.20964 9.47282 9.59635 9.76644 9.91504C10.0636 10.2301 10.4396 10.3877 10.8944 10.3877C11.4279 10.3877 11.8451 10.1836 12.1458 9.77539C12.4502 9.36719 12.6024 8.79964 12.6024 8.07275C12.6024 7.46045 12.4609 6.98063 12.1781 6.6333C11.8952 6.28597 11.512 6.1123 11.0286 6.1123C10.5166 6.1123 10.1048 6.29134 9.7933 6.64941C9.48177 7.00391 9.32601 7.44971 9.32601 7.98682Z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-eye"},children:[{tagName:"path",attrs:{d:"M7.99993 6.00316C9.47266 6.00316 10.6666 7.19708 10.6666 8.66981C10.6666 10.1426 9.47266 11.3365 7.99993 11.3365C6.52715 11.3365 5.33324 10.1426 5.33324 8.66981C5.33324 7.19708 6.52715 6.00316 7.99993 6.00316ZM7.99993 7.00315C7.07946 7.00315 6.33324 7.74935 6.33324 8.66981C6.33324 9.59028 7.07946 10.3365 7.99993 10.3365C8.9204 10.3365 9.6666 9.59028 9.6666 8.66981C9.6666 7.74935 8.9204 7.00315 7.99993 7.00315ZM7.99993 3.66675C11.0756 3.66675 13.7307 5.76675 14.4673 8.70968C14.5344 8.97755 14.3716 9.24908 14.1037 9.31615C13.8358 9.38315 13.5643 9.22041 13.4973 8.95248C12.8713 6.45205 10.6141 4.66675 7.99993 4.66675C5.38454 4.66675 3.12664 6.45359 2.50182 8.95555C2.43491 9.22341 2.16348 9.38635 1.89557 9.31948C1.62766 9.25255 1.46471 8.98115 1.53162 8.71321C2.26701 5.76856 4.9229 3.66675 7.99993 3.66675Z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-symbol-constant"},children:[{tagName:"path",attrs:{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M4 6h8v1H4V6zm8 3H4v1h8V9z"}},{tagName:"path",attrs:{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M1 4l1-1h12l1 1v8l-1 1H2l-1-1V4zm1 0v8h12V4H2z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-check"},children:[{tagName:"path",attrs:{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M14.431 3.323l-8.47 10-.79-.036-3.35-4.77.818-.574 2.978 4.24 8.051-9.506.764.646z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-close"},children:[{tagName:"path",attrs:{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M8 8.707l3.646 3.647.708-.707L8.707 8l3.647-3.646-.707-.708L8 7.293 4.354 3.646l-.707.708L7.293 8l-3.646 3.646.707.708L8 8.707z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-pass"},children:[{tagName:"path",attrs:{d:"M6.27 10.87h.71l4.56-4.56-.71-.71-4.2 4.21-1.92-1.92L4 8.6l2.27 2.27z"}},{tagName:"path",attrs:{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M8.6 1c1.6.1 3.1.9 4.2 2 1.3 1.4 2 3.1 2 5.1 0 1.6-.6 3.1-1.6 4.4-1 1.2-2.4 2.1-4 2.4-1.6.3-3.2.1-4.6-.7-1.4-.8-2.5-2-3.1-3.5C.9 9.2.8 7.5 1.3 6c.5-1.6 1.4-2.9 2.8-3.8C5.4 1.3 7 .9 8.6 1zm.5 12.9c1.3-.3 2.5-1 3.4-2.1.8-1.1 1.3-2.4 1.2-3.8 0-1.6-.6-3.2-1.7-4.3-1-1-2.2-1.6-3.6-1.7-1.3-.1-2.7.2-3.8 1-1.1.8-1.9 1.9-2.3 3.3-.4 1.3-.4 2.7.2 4 .6 1.3 1.5 2.3 2.7 3 1.2.7 2.6.9 3.9.6z"}}]},{tagName:"clipPath",attrs:{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",id:"icon-gist"},children:[{tagName:"path",attrs:{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M10.57 1.14l3.28 3.3.15.36v9.7l-.5.5h-11l-.5-.5v-13l.5-.5h7.72l.35.14zM10 5h3l-3-3v3zM3 2v12h10V6H9.5L9 5.5V2H3zm2.062 7.533l1.817-1.828L6.17 7 4 9.179v.707l2.171 2.174.707-.707-1.816-1.82zM8.8 7.714l.7-.709 2.189 2.175v.709L9.5 12.062l-.705-.709 1.831-1.82L8.8 7.714z"}}]}]}]},mn={multiple:"#f6b26b7f",single:"#6fa8dc7f",assert:"#8acae480",action:"#dc6f6f7f"};class Yb{}class Sh{constructor(e,i){this._hoveredModel=null,this._hoveredElement=null,this._recorder=e,this._assertVisibility=i}cursor(){return"pointer"}uninstall(){this._hoveredModel=null,this._hoveredElement=null}onClick(e){var i;Ge(e),e.button===0&&(i=this._hoveredModel)!=null&&i.selector&&this._commit(this._hoveredModel.selector,this._hoveredModel)}onPointerDown(e){Ge(e)}onPointerUp(e){Ge(e)}onMouseDown(e){Ge(e)}onMouseUp(e){Ge(e)}onMouseMove(e){var a;Ge(e);let i=this._recorder.deepEventTarget(e);if(i.isConnected||(i=null),this._hoveredElement===i)return;this._hoveredElement=i;let r=null;if(this._hoveredElement){const o=this._recorder.injectedScript.generateSelector(this._hoveredElement,{testIdAttributeName:this._recorder.state.testIdAttributeName,multiple:!1});r={selector:o.selector,elements:o.elements,tooltipText:this._recorder.injectedScript.utils.asLocator(this._recorder.state.language,o.selector),color:this._assertVisibility?mn.assert:mn.single}}((a=this._hoveredModel)==null?void 0:a.selector)!==(r==null?void 0:r.selector)&&(this._hoveredModel=r,this._recorder.updateHighlight(r,!0))}onMouseEnter(e){Ge(e)}onMouseLeave(e){Ge(e);const i=this._recorder.injectedScript.window;i.top!==i&&this._recorder.deepEventTarget(e).nodeType===Node.DOCUMENT_NODE&&this._reset(!0)}onKeyDown(e){Ge(e),e.key==="Escape"&&this._assertVisibility&&this._recorder.setMode("recording")}onKeyUp(e){Ge(e)}onScroll(e){this._reset(!1)}_commit(e,i){var r;this._assertVisibility?(this._recorder.recordAction({name:"assertVisible",selector:e,signals:[]}),this._recorder.setMode("recording"),(r=this._recorder.overlay)==null||r.flashToolSucceeded("assertingVisibility")):this._recorder.elementPicked(e,i)}_reset(e){this._hoveredElement=null,this._hoveredModel=null,this._recorder.updateHighlight(null,e)}}class BA{constructor(e){this._hoveredModel=null,this._hoveredElement=null,this._activeModel=null,this._expectProgrammaticKeyUp=!1,this._observer=null,this._recorder=e,this._performingActions=new Set,this._dialog=new Pv(e)}cursor(){return"pointer"}_installObserverIfNeeded(){var e;this._observer||(e=this._recorder.injectedScript.document)!=null&&e.body&&(this._observer=new MutationObserver(i=>{if(this._hoveredElement)for(const r of i)for(const a of r.removedNodes)(a===this._hoveredElement||a.contains(this._hoveredElement))&&this._resetHoveredModel()}),this._observer.observe(this._recorder.injectedScript.document.body,{childList:!0,subtree:!0}))}uninstall(){var e;(e=this._observer)==null||e.disconnect(),this._observer=null,this._hoveredModel=null,this._hoveredElement=null,this._activeModel=null,this._expectProgrammaticKeyUp=!1,this._dialog.close()}onClick(e){if(this._dialog.isShowing()){e.button===2&&e.type==="auxclick"&&Ge(e);return}if(tl(this._hoveredElement)||this._shouldIgnoreMouseEvent(e)||this._actionInProgress(e)||this._consumedDueToNoModel(e,this._hoveredModel))return;if(e.button===2&&e.type==="auxclick"){this._showActionListDialog(this._hoveredModel,e);return}const i=el(this._recorder.deepEventTarget(e));if(i&&e.detail===1){this._performAction({name:i.checked?"check":"uncheck",selector:this._hoveredModel.selector,signals:[]});return}this._cancelPendingClickAction(),e.detail===1&&(this._pendingClickAction={action:{name:"click",selector:this._hoveredModel.selector,position:Wa(e),signals:[],button:Yh(e),modifiers:Tr(e),clickCount:e.detail},timeout:this._recorder.injectedScript.utils.builtins.setTimeout(()=>this._commitPendingClickAction(),200)})}onDblClick(e){this._dialog.isShowing()||tl(this._hoveredElement)||this._shouldIgnoreMouseEvent(e)||this._actionInProgress(e)||this._consumedDueToNoModel(e,this._hoveredModel)||(this._cancelPendingClickAction(),this._performAction({name:"click",selector:this._hoveredModel.selector,position:Wa(e),signals:[],button:Yh(e),modifiers:Tr(e),clickCount:e.detail}))}_commitPendingClickAction(){this._pendingClickAction&&this._performAction(this._pendingClickAction.action),this._cancelPendingClickAction()}_cancelPendingClickAction(){this._pendingClickAction&&this._recorder.injectedScript.utils.builtins.clearTimeout(this._pendingClickAction.timeout),this._pendingClickAction=void 0}onContextMenu(e){if(this._dialog.isShowing()){Ge(e);return}this._shouldIgnoreMouseEvent(e)||this._actionInProgress(e)||this._consumedDueToNoModel(e,this._hoveredModel)||this._showActionListDialog(this._hoveredModel,e)}onPointerDown(e){this._dialog.isShowing()||this._shouldIgnoreMouseEvent(e)||this._consumeWhenAboutToPerform(e)}onPointerUp(e){this._dialog.isShowing()||this._shouldIgnoreMouseEvent(e)||this._consumeWhenAboutToPerform(e)}onMouseDown(e){this._dialog.isShowing()||this._shouldIgnoreMouseEvent(e)||(this._consumeWhenAboutToPerform(e),this._activeModel=this._hoveredModel)}onMouseUp(e){this._dialog.isShowing()||this._shouldIgnoreMouseEvent(e)||this._consumeWhenAboutToPerform(e)}onMouseMove(e){if(this._dialog.isShowing())return;const i=this._recorder.deepEventTarget(e);this._hoveredElement!==i&&(this._hoveredElement=i,this._updateModelForHoveredElement())}onMouseLeave(e){if(this._dialog.isShowing())return;const i=this._recorder.injectedScript.window;i.top!==i&&this._recorder.deepEventTarget(e).nodeType===Node.DOCUMENT_NODE&&(this._hoveredElement=null,this._updateModelForHoveredElement())}onFocus(e){this._dialog.isShowing()||this._onFocus(!0)}onInput(e){if(this._dialog.isShowing())return;const i=this._recorder.deepEventTarget(e);if(i.nodeName==="INPUT"&&i.type.toLowerCase()==="file"){const r=i===this._hoveredElement?this._hoveredModel.selector:this._recorder.injectedScript.generateSelector(i,{testIdAttributeName:this._recorder.state.testIdAttributeName}).selector;this._recordAction({name:"setInputFiles",selector:r,signals:[],files:[...i.files||[]].map(a=>a.name)});return}if(tl(i)){this._recordAction({name:"fill",selector:this._hoveredModel.selector,signals:[],text:i.value});return}if(["INPUT","TEXTAREA"].includes(i.nodeName)||i.isContentEditable){if(i.nodeName==="INPUT"&&["checkbox","radio"].includes(i.type.toLowerCase())||this._consumedDueWrongTarget(e))return;this._recordAction({name:"fill",selector:this._activeModel.selector,signals:[],text:i.isContentEditable?i.innerText:i.value})}if(i.nodeName==="SELECT"){const r=i;this._recordAction({name:"select",selector:this._activeModel.selector,options:[...r.selectedOptions].map(a=>a.value),signals:[]})}}onKeyDown(e){if(!this._dialog.isShowing()&&this._shouldGenerateKeyPressFor(e)){if(this._actionInProgress(e)){this._expectProgrammaticKeyUp=!0;return}if(!this._consumedDueWrongTarget(e)){if(e.key===" "){const i=el(this._recorder.deepEventTarget(e));if(i&&e.detail===0){this._performAction({name:i.checked?"uncheck":"check",selector:this._activeModel.selector,signals:[]});return}}this._performAction({name:"press",selector:this._activeModel.selector,signals:[],key:e.key,modifiers:Tr(e)})}}}onKeyUp(e){if(!this._dialog.isShowing()&&this._shouldGenerateKeyPressFor(e)){if(!this._expectProgrammaticKeyUp){Ge(e);return}this._expectProgrammaticKeyUp=!1}}onScroll(e){this._dialog.isShowing()||this._resetHoveredModel()}_showActionListDialog(e,i){Ge(i);const r=Wa(i),a=[{title:"Click",cb:()=>this._performAction({name:"click",selector:e.selector,position:r,signals:[],button:"left",modifiers:0,clickCount:0})},{title:"Right click",cb:()=>this._performAction({name:"click",selector:e.selector,position:r,signals:[],button:"right",modifiers:0,clickCount:0})},{title:"Double click",cb:()=>this._performAction({name:"click",selector:e.selector,position:r,signals:[],button:"left",modifiers:0,clickCount:2})},{title:"Hover",cb:()=>this._performAction({name:"hover",selector:e.selector,position:r,signals:[]})},{title:"Pick locator",cb:()=>this._recorder.elementPicked(e.selector,e)}],o=this._recorder.document.createElement("x-pw-action-list");o.setAttribute("role","list"),o.setAttribute("aria-label","Choose action");for(const g of a){const m=this._recorder.document.createElement("x-pw-action-item");m.setAttribute("role","listitem"),m.textContent=g.title,m.setAttribute("aria-label",g.title),m.addEventListener("click",()=>{this._dialog.close(),g.cb()}),o.appendChild(m)}const u=this._dialog.show({label:"Choose action",body:o,autosize:!0}),f=this._recorder.highlight.firstTooltipBox()||e.elements[0].getBoundingClientRect(),d=this._recorder.highlight.tooltipPosition(f,u);this._dialog.moveTo(d.anchorTop,d.anchorLeft)}_resetHoveredModel(){this._hoveredModel=null,this._hoveredElement=null,this._updateHighlight(!1)}_onFocus(e){const i=VA(this._recorder.document);if(e&&i===this._recorder.document.body)return;const r=i?this._recorder.injectedScript.generateSelector(i,{testIdAttributeName:this._recorder.state.testIdAttributeName}):null;this._activeModel=r&&r.selector?{...r,color:mn.action}:null,e&&(this._hoveredElement=i,this._updateModelForHoveredElement())}_shouldIgnoreMouseEvent(e){return Jv(this._recorder.deepEventTarget(e))}_actionInProgress(e){const i=e instanceof KeyboardEvent,r=e instanceof MouseEvent||e instanceof PointerEvent;for(const a of this._performingActions)if(i&&a.name==="press"&&e.key===a.key||r&&(a.name==="click"||a.name==="hover"||a.name==="check"||a.name==="uncheck"))return!0;return Ge(e),!1}_consumedDueToNoModel(e,i){return i?!1:(Ge(e),!0)}_consumedDueWrongTarget(e){return this._activeModel&&this._activeModel.elements[0]===this._recorder.deepEventTarget(e)?!1:(Ge(e),!0)}_consumeWhenAboutToPerform(e){this._performingActions.size||Ge(e)}_reportPerformedActionForTests(){this._recorder.injectedScript.isUnderTest&&console.error("Action performed for test: "+JSON.stringify({hovered:this._hoveredModel?this._hoveredModel.selector:null,active:this._activeModel?this._activeModel.selector:null}))}_recordAction(e){this._recorder.recordAction(e).then(()=>this._reportPerformedActionForTests())}_performAction(e){this._recorder.updateHighlight(null,!1),this._performingActions.add(e),this._recorder.performAction(e).finally(()=>{this._performingActions.delete(e),this._onFocus(!1)}).then(()=>this._reportPerformedActionForTests())}_shouldGenerateKeyPressFor(e){if(typeof e.key!="string"||e.key==="Enter"&&(this._recorder.deepEventTarget(e).nodeName==="TEXTAREA"||this._recorder.deepEventTarget(e).isContentEditable)||["Backspace","Delete","AltGraph"].includes(e.key)||e.key==="@"&&e.code==="KeyL")return!1;if(navigator.platform.includes("Mac")){if(e.key==="v"&&e.metaKey)return!1}else if(e.key==="v"&&e.ctrlKey||e.key==="Insert"&&e.shiftKey)return!1;if(["Shift","Control","Meta","Alt","Process"].includes(e.key))return!1;const i=e.ctrlKey||e.altKey||e.metaKey;return e.key.length===1&&!i?!!el(this._recorder.deepEventTarget(e)):!0}_updateModelForHoveredElement(){if(this._installObserverIfNeeded(),this._performingActions.size)return;if(!this._hoveredElement||!this._hoveredElement.isConnected){this._hoveredModel=null,this._hoveredElement=null,this._updateHighlight(!0);return}const{selector:e,elements:i}=this._recorder.injectedScript.generateSelector(this._hoveredElement,{testIdAttributeName:this._recorder.state.testIdAttributeName});this._hoveredModel&&this._hoveredModel.selector===e||(this._hoveredModel=e?{selector:e,elements:i,color:mn.action}:null,this._updateHighlight(!0))}_updateHighlight(e){this._recorder.updateHighlight(this._hoveredModel,e)}}class qA{constructor(e){this._recorder=e}install(){this._recorder.highlight.uninstall()}uninstall(){this._recorder.highlight.install()}onClick(e){const i=this._recorder.deepEventTarget(e);if(tl(i)||e.button===2&&e.type==="auxclick"||this._shouldIgnoreMouseEvent(e))return;const r=el(i),{ariaSnapshot:a,selector:o,ref:u}=this._ariaSnapshot(i);if(r&&e.detail===1){this._recorder.recordAction({name:r.checked?"check":"uncheck",selector:o,ref:u,signals:[],ariaSnapshot:a});return}this._recorder.recordAction({name:"click",selector:o,ref:u,ariaSnapshot:a,position:Wa(e),signals:[],button:Yh(e),modifiers:Tr(e),clickCount:e.detail})}onContextMenu(e){const i=this._recorder.deepEventTarget(e),{ariaSnapshot:r,selector:a,ref:o}=this._ariaSnapshot(i);this._recorder.recordAction({name:"click",selector:a,ref:o,ariaSnapshot:r,position:Wa(e),signals:[],button:"right",modifiers:Tr(e),clickCount:1})}onInput(e){const i=this._recorder.deepEventTarget(e),{ariaSnapshot:r,selector:a,ref:o}=this._ariaSnapshot(i);if(tl(i)){this._recorder.recordAction({name:"fill",selector:a,ref:o,ariaSnapshot:r,signals:[],text:i.value});return}if(["INPUT","TEXTAREA"].includes(i.nodeName)||i.isContentEditable){if(i.nodeName==="INPUT"&&["checkbox","radio"].includes(i.type.toLowerCase()))return;this._recorder.recordAction({name:"fill",ref:o,selector:a,ariaSnapshot:r,signals:[],text:i.isContentEditable?i.innerText:i.value});return}if(i.nodeName==="SELECT"){const u=i;this._recorder.recordAction({name:"select",selector:a,ref:o,ariaSnapshot:r,options:[...u.selectedOptions].map(f=>f.value),signals:[]});return}}onKeyDown(e){if(!this._shouldGenerateKeyPressFor(e))return;const i=this._recorder.deepEventTarget(e),{ariaSnapshot:r,selector:a,ref:o}=this._ariaSnapshot(i);if(e.key===" "){const u=el(i);if(u&&e.detail===0){this._recorder.recordAction({name:u.checked?"uncheck":"check",selector:a,ref:o,ariaSnapshot:r,signals:[]});return}}this._recorder.recordAction({name:"press",selector:a,ref:o,ariaSnapshot:r,signals:[],key:e.key,modifiers:Tr(e)})}_shouldIgnoreMouseEvent(e){return Jv(this._recorder.deepEventTarget(e))}_shouldGenerateKeyPressFor(e){if(typeof e.key!="string"||e.key==="Enter"&&(this._recorder.deepEventTarget(e).nodeName==="TEXTAREA"||this._recorder.deepEventTarget(e).isContentEditable)||["Backspace","Delete","AltGraph"].includes(e.key)||e.key==="@"&&e.code==="KeyL")return!1;if(navigator.platform.includes("Mac")){if(e.key==="v"&&e.metaKey)return!1}else if(e.key==="v"&&e.ctrlKey||e.key==="Insert"&&e.shiftKey)return!1;if(["Shift","Control","Meta","Alt","Process"].includes(e.key))return!1;const i=e.ctrlKey||e.altKey||e.metaKey;return e.key.length===1&&!i?!this._isEditable(this._recorder.deepEventTarget(e)):!0}_isEditable(e){return!!(e.nodeName==="TEXTAREA"||e.nodeName==="INPUT"||e.isContentEditable)}_ariaSnapshot(e){const{ariaSnapshot:i,refs:r}=this._recorder.injectedScript.ariaSnapshotForRecorder(),a=e?r.get(e):void 0,o=e?this._recorder.injectedScript.generateSelector(e,{testIdAttributeName:this._recorder.state.testIdAttributeName}):void 0;return{ariaSnapshot:i,selector:o==null?void 0:o.selector,ref:a}}}class wh{constructor(e,i){this._hoverHighlight=null,this._action=null,this._recorder=e,this._textCache=new Map,this._kind=i,this._dialog=new Pv(e)}cursor(){return"pointer"}uninstall(){this._dialog.close(),this._hoverHighlight=null}onClick(e){Ge(e),this._kind==="value"?this._commitAssertValue():this._dialog.isShowing()||this._showDialog()}onMouseDown(e){const i=this._recorder.deepEventTarget(e);this._elementHasValue(i)&&e.preventDefault()}onPointerUp(e){var r;const i=(r=this._hoverHighlight)==null?void 0:r.elements[0];this._kind==="value"&&i&&(i.nodeName==="INPUT"||i.nodeName==="SELECT")&&i.disabled&&this._commitAssertValue()}onMouseMove(e){var r;if(this._dialog.isShowing())return;const i=this._recorder.deepEventTarget(e);if(((r=this._hoverHighlight)==null?void 0:r.elements[0])!==i){if(this._kind==="text"||this._kind==="snapshot")this._hoverHighlight=this._recorder.injectedScript.utils.elementText(this._textCache,i).full?{elements:[i],selector:"",color:mn.assert}:null;else if(this._elementHasValue(i)){const a=this._recorder.injectedScript.generateSelector(i,{testIdAttributeName:this._recorder.state.testIdAttributeName});this._hoverHighlight={selector:a.selector,elements:a.elements,color:mn.assert}}else this._hoverHighlight=null;this._recorder.updateHighlight(this._hoverHighlight,!0)}}onKeyDown(e){e.key==="Escape"&&this._recorder.setMode("recording"),Ge(e)}onScroll(e){this._recorder.updateHighlight(this._hoverHighlight,!1)}_elementHasValue(e){return e.nodeName==="TEXTAREA"||e.nodeName==="SELECT"||e.nodeName==="INPUT"&&!["button","image","reset","submit"].includes(e.type)}_generateAction(){var i;this._textCache.clear();const e=(i=this._hoverHighlight)==null?void 0:i.elements[0];if(!e)return null;if(this._kind==="value"){if(!this._elementHasValue(e))return null;const{selector:r}=this._recorder.injectedScript.generateSelector(e,{testIdAttributeName:this._recorder.state.testIdAttributeName});return e.nodeName==="INPUT"&&["checkbox","radio"].includes(e.type.toLowerCase())?{name:"assertChecked",selector:r,signals:[],checked:!e.checked}:{name:"assertValue",selector:r,signals:[],value:e.value}}else if(this._kind==="snapshot"){const r=this._recorder.injectedScript.generateSelector(e,{testIdAttributeName:this._recorder.state.testIdAttributeName,forTextExpect:!0});return this._hoverHighlight={selector:r.selector,elements:r.elements,color:mn.assert},this._recorder.updateHighlight(this._hoverHighlight,!0),{name:"assertSnapshot",selector:this._hoverHighlight.selector,signals:[],ariaSnapshot:this._recorder.injectedScript.ariaSnapshot(e,{mode:"codegen"})}}else{const r=this._recorder.injectedScript.generateSelector(e,{testIdAttributeName:this._recorder.state.testIdAttributeName,forTextExpect:!0});return this._hoverHighlight={selector:r.selector,elements:r.elements,color:mn.assert},this._recorder.updateHighlight(this._hoverHighlight,!0),{name:"assertText",selector:this._hoverHighlight.selector,signals:[],text:this._recorder.injectedScript.utils.elementText(this._textCache,e).normalized,substring:!0}}}_renderValue(e){return(e==null?void 0:e.name)==="assertText"?this._recorder.injectedScript.utils.normalizeWhiteSpace(e.text):(e==null?void 0:e.name)==="assertChecked"?String(e.checked):(e==null?void 0:e.name)==="assertValue"?e.value:(e==null?void 0:e.name)==="assertSnapshot"?e.ariaSnapshot:""}_commit(){!this._action||!this._dialog.isShowing()||(this._dialog.close(),this._recorder.recordAction(this._action),this._recorder.setMode("recording"))}_showDialog(){var e,i,r,a;(e=this._hoverHighlight)!=null&&e.elements[0]&&(this._action=this._generateAction(),((i=this._action)==null?void 0:i.name)==="assertText"?this._showTextDialog(this._action):((r=this._action)==null?void 0:r.name)==="assertSnapshot"&&(this._recorder.recordAction(this._action),this._recorder.setMode("recording"),(a=this._recorder.overlay)==null||a.flashToolSucceeded("assertingSnapshot")))}_showTextDialog(e){const i=this._recorder.document.createElement("textarea");i.setAttribute("spellcheck","false"),i.value=this._renderValue(e),i.classList.add("text-editor");const r=()=>{var y;const f=this._recorder.injectedScript.utils.normalizeWhiteSpace(i.value),d=(y=this._hoverHighlight)==null?void 0:y.elements[0];if(!d)return;e.text=f;const g=this._recorder.injectedScript.utils.elementText(this._textCache,d).normalized,m=f&&g.includes(f);i.classList.toggle("does-not-match",!m)};i.addEventListener("input",r);const o=this._dialog.show({label:"Assert that element contains text",body:i,onCommit:()=>this._commit()}),u=this._recorder.highlight.tooltipPosition(this._recorder.highlight.firstBox(),o);this._dialog.moveTo(u.anchorTop,u.anchorLeft),i.focus()}_commitAssertValue(){var i;if(this._kind!=="value")return;const e=this._generateAction();e&&(this._recorder.recordAction(e),this._recorder.setMode("recording"),(i=this._recorder.overlay)==null||i.flashToolSucceeded("assertingValue"))}}class $A{constructor(e){this._listeners=[],this._offsetX=0,this._measure={width:0,height:0},this._recorder=e;const i=this._recorder.document;this._overlayElement=i.createElement("x-pw-overlay");const r=i.createElement("x-pw-tools-list");this._overlayElement.appendChild(r),this._dragHandle=i.createElement("x-pw-tool-gripper"),this._dragHandle.appendChild(i.createElement("x-div")),r.appendChild(this._dragHandle),this._recordToggle=this._recorder.document.createElement("x-pw-tool-item"),this._recordToggle.title="Record",this._recordToggle.classList.add("record"),this._recordToggle.appendChild(this._recorder.document.createElement("x-div")),r.appendChild(this._recordToggle),this._pickLocatorToggle=this._recorder.document.createElement("x-pw-tool-item"),this._pickLocatorToggle.title="Pick locator",this._pickLocatorToggle.classList.add("pick-locator"),this._pickLocatorToggle.appendChild(this._recorder.document.createElement("x-div")),r.appendChild(this._pickLocatorToggle),this._assertVisibilityToggle=this._recorder.document.createElement("x-pw-tool-item"),this._assertVisibilityToggle.title="Assert visibility",this._assertVisibilityToggle.classList.add("visibility"),this._assertVisibilityToggle.appendChild(this._recorder.document.createElement("x-div")),r.appendChild(this._assertVisibilityToggle),this._assertTextToggle=this._recorder.document.createElement("x-pw-tool-item"),this._assertTextToggle.title="Assert text",this._assertTextToggle.classList.add("text"),this._assertTextToggle.appendChild(this._recorder.document.createElement("x-div")),r.appendChild(this._assertTextToggle),this._assertValuesToggle=this._recorder.document.createElement("x-pw-tool-item"),this._assertValuesToggle.title="Assert value",this._assertValuesToggle.classList.add("value"),this._assertValuesToggle.appendChild(this._recorder.document.createElement("x-div")),r.appendChild(this._assertValuesToggle),this._assertSnapshotToggle=this._recorder.document.createElement("x-pw-tool-item"),this._assertSnapshotToggle.title="Assert snapshot",this._assertSnapshotToggle.classList.add("snapshot"),this._assertSnapshotToggle.appendChild(this._recorder.document.createElement("x-div")),r.appendChild(this._assertSnapshotToggle),this._updateVisualPosition(),this._refreshListeners()}_refreshListeners(){Zv(this._listeners),this._listeners=[Ie(this._dragHandle,"mousedown",e=>{this._dragState={offsetX:this._offsetX,dragStart:{x:e.clientX,y:0}}}),Ie(this._recordToggle,"click",()=>{this._recordToggle.classList.contains("disabled")||this._recorder.setMode(this._recorder.state.mode==="none"||this._recorder.state.mode==="standby"||this._recorder.state.mode==="inspecting"?"recording":"standby")}),Ie(this._pickLocatorToggle,"click",()=>{if(this._pickLocatorToggle.classList.contains("disabled"))return;const e={inspecting:"standby",none:"inspecting",standby:"inspecting",recording:"recording-inspecting","recording-inspecting":"recording",assertingText:"recording-inspecting",assertingVisibility:"recording-inspecting",assertingValue:"recording-inspecting",assertingSnapshot:"recording-inspecting"};this._recorder.setMode(e[this._recorder.state.mode])}),Ie(this._assertVisibilityToggle,"click",()=>{this._assertVisibilityToggle.classList.contains("disabled")||this._recorder.setMode(this._recorder.state.mode==="assertingVisibility"?"recording":"assertingVisibility")}),Ie(this._assertTextToggle,"click",()=>{this._assertTextToggle.classList.contains("disabled")||this._recorder.setMode(this._recorder.state.mode==="assertingText"?"recording":"assertingText")}),Ie(this._assertValuesToggle,"click",()=>{this._assertValuesToggle.classList.contains("disabled")||this._recorder.setMode(this._recorder.state.mode==="assertingValue"?"recording":"assertingValue")}),Ie(this._assertSnapshotToggle,"click",()=>{this._assertSnapshotToggle.classList.contains("disabled")||this._recorder.setMode(this._recorder.state.mode==="assertingSnapshot"?"recording":"assertingSnapshot")})]}install(){this._recorder.highlight.appendChild(this._overlayElement),this._refreshListeners(),this._updateVisualPosition()}contains(e){return this._recorder.injectedScript.utils.isInsideScope(this._overlayElement,e)}setUIState(e){const i=e.mode==="recording"||e.mode==="assertingText"||e.mode==="assertingVisibility"||e.mode==="assertingValue"||e.mode==="assertingSnapshot"||e.mode==="recording-inspecting";this._recordToggle.classList.toggle("toggled",i),this._recordToggle.title=i?"Stop Recording":"Start Recording",this._pickLocatorToggle.classList.toggle("toggled",e.mode==="inspecting"||e.mode==="recording-inspecting"),this._assertVisibilityToggle.classList.toggle("toggled",e.mode==="assertingVisibility"),this._assertVisibilityToggle.classList.toggle("disabled",e.mode==="none"||e.mode==="standby"||e.mode==="inspecting"),this._assertTextToggle.classList.toggle("toggled",e.mode==="assertingText"),this._assertTextToggle.classList.toggle("disabled",e.mode==="none"||e.mode==="standby"||e.mode==="inspecting"),this._assertValuesToggle.classList.toggle("toggled",e.mode==="assertingValue"),this._assertValuesToggle.classList.toggle("disabled",e.mode==="none"||e.mode==="standby"||e.mode==="inspecting"),this._assertSnapshotToggle.classList.toggle("toggled",e.mode==="assertingSnapshot"),this._assertSnapshotToggle.classList.toggle("disabled",e.mode==="none"||e.mode==="standby"||e.mode==="inspecting"),this._offsetX!==e.overlay.offsetX&&(this._offsetX=e.overlay.offsetX,this._updateVisualPosition()),e.mode==="none"?this._hideOverlay():this._showOverlay()}flashToolSucceeded(e){let i;e==="assertingVisibility"?i=this._assertVisibilityToggle:e==="assertingSnapshot"?i=this._assertSnapshotToggle:i=this._assertValuesToggle,i.classList.add("succeeded"),this._recorder.injectedScript.utils.builtins.setTimeout(()=>i.classList.remove("succeeded"),2e3)}_hideOverlay(){this._overlayElement.setAttribute("hidden","true")}_showOverlay(){this._overlayElement.hasAttribute("hidden")&&(this._overlayElement.removeAttribute("hidden"),this._updateVisualPosition())}_updateVisualPosition(){this._measure=this._overlayElement.getBoundingClientRect(),this._overlayElement.style.left=(this._recorder.injectedScript.window.innerWidth-this._measure.width)/2+this._offsetX+"px"}onMouseMove(e){if(!e.buttons)return this._dragState=void 0,!1;if(this._dragState){this._offsetX=this._dragState.offsetX+e.clientX-this._dragState.dragStart.x;const i=(this._recorder.injectedScript.window.innerWidth-this._measure.width)/2-10;return this._offsetX=Math.max(-i,Math.min(i,this._offsetX)),this._updateVisualPosition(),this._recorder.setOverlayState({offsetX:this._offsetX}),Ge(e),!0}return!1}onMouseUp(e){return this._dragState?(Ge(e),!0):!1}onClick(e){return this._dragState?(this._dragState=void 0,Ge(e),!0):!1}onDblClick(e){return!1}}class IA{constructor(e,i){var r,a;this._listeners=[],this._lastHighlightedSelector=void 0,this._lastHighlightedAriaTemplateJSON="undefined",this.state={mode:"none",testIdAttributeName:"data-testid",language:"javascript",overlay:{offsetX:0}},this._delegate={},this.document=e.document,this.injectedScript=e,this.highlight=e.createHighlight(),this._tools={none:new Yb,standby:new Yb,inspecting:new Sh(this,!1),recording:(i==null?void 0:i.recorderMode)==="api"?new qA(this):new BA(this),"recording-inspecting":new Sh(this,!1),assertingText:new wh(this,"text"),assertingVisibility:new Sh(this,!0),assertingValue:new wh(this,"value"),assertingSnapshot:new wh(this,"snapshot")},this._currentTool=this._tools.none,(a=(r=this._currentTool).install)==null||a.call(r),e.window.top===e.window&&!(i!=null&&i.hideToolbar)&&(this.overlay=new $A(this),this.overlay.setUIState(this.state)),this._stylesheet=new e.window.CSSStyleSheet,this._stylesheet.replaceSync(`
      body[data-pw-cursor=pointer] *, body[data-pw-cursor=pointer] *::after { cursor: pointer !important; }
      body[data-pw-cursor=text] *, body[data-pw-cursor=text] *::after { cursor: text !important; }
    `),this.installListeners(),e.utils.cacheNormalizedWhitespaces(),e.isUnderTest&&console.error("Recorder script ready for test"),e.consoleApi.install()}installListeners(){var r,a,o;Zv(this._listeners),this._listeners=[Ie(this.document,"click",u=>this._onClick(u),!0),Ie(this.document,"auxclick",u=>this._onClick(u),!0),Ie(this.document,"dblclick",u=>this._onDblClick(u),!0),Ie(this.document,"contextmenu",u=>this._onContextMenu(u),!0),Ie(this.document,"dragstart",u=>this._onDragStart(u),!0),Ie(this.document,"input",u=>this._onInput(u),!0),Ie(this.document,"keydown",u=>this._onKeyDown(u),!0),Ie(this.document,"keyup",u=>this._onKeyUp(u),!0),Ie(this.document,"pointerdown",u=>this._onPointerDown(u),!0),Ie(this.document,"pointerup",u=>this._onPointerUp(u),!0),Ie(this.document,"mousedown",u=>this._onMouseDown(u),!0),Ie(this.document,"mouseup",u=>this._onMouseUp(u),!0),Ie(this.document,"mousemove",u=>this._onMouseMove(u),!0),Ie(this.document,"mouseleave",u=>this._onMouseLeave(u),!0),Ie(this.document,"mouseenter",u=>this._onMouseEnter(u),!0),Ie(this.document,"focus",u=>this._onFocus(u),!0),Ie(this.document,"scroll",u=>this._onScroll(u),!0)],this.highlight.install();let e;const i=()=>{this.highlight.install(),e=this.injectedScript.utils.builtins.setTimeout(i,500)};e=this.injectedScript.utils.builtins.setTimeout(i,500),this._listeners.push(()=>this.injectedScript.utils.builtins.clearTimeout(e)),this.highlight.appendChild(Wv(this.document,HA)),(r=this.overlay)==null||r.install(),(o=(a=this._currentTool)==null?void 0:a.install)==null||o.call(a),this.document.adoptedStyleSheets.push(this._stylesheet)}_switchCurrentTool(){var r,a,o,u,f,d;const e=this._tools[this.state.mode];if(e===this._currentTool)return;(a=(r=this._currentTool).uninstall)==null||a.call(r),this.clearHighlight(),this._currentTool=e,(u=(o=this._currentTool).install)==null||u.call(o);const i=(f=e.cursor)==null?void 0:f.call(e);i&&((d=this.injectedScript.document.body)==null||d.setAttribute("data-pw-cursor",i))}setUIState(e,i){var o;this._delegate=i,e.actionPoint&&this.state.actionPoint&&e.actionPoint.x===this.state.actionPoint.x&&e.actionPoint.y===this.state.actionPoint.y||!e.actionPoint&&!this.state.actionPoint||(e.actionPoint?this.highlight.showActionPoint(e.actionPoint.x,e.actionPoint.y):this.highlight.hideActionPoint()),this.state=e,this.highlight.setLanguage(e.language),this._switchCurrentTool(),(o=this.overlay)==null||o.setUIState(e);let r="noop";if(e.actionSelector!==this._lastHighlightedSelector){const u=e.actionSelector?KA(this.injectedScript,e.language,e.actionSelector,this.document):null;r=u!=null&&u.length?u:"clear",this._lastHighlightedSelector=u!=null&&u.length?e.actionSelector:void 0}const a=JSON.stringify(e.ariaTemplate);if(this._lastHighlightedAriaTemplateJSON!==a){const u=e.ariaTemplate?this.injectedScript.getAllElementsMatchingExpectAriaTemplate(this.document,e.ariaTemplate):[];if(u.length){const f=u.length>1?mn.multiple:mn.single;r=u.map(d=>({element:d,color:f})),this._lastHighlightedAriaTemplateJSON=a}else this._lastHighlightedSelector||(r="clear"),this._lastHighlightedAriaTemplateJSON="undefined"}r==="clear"?this.highlight.clearHighlight():r!=="noop"&&this.highlight.updateHighlight(r)}clearHighlight(){this.updateHighlight(null,!1)}_onClick(e){var i,r,a;e.isTrusted&&((i=this.overlay)!=null&&i.onClick(e)||this._ignoreOverlayEvent(e)||(a=(r=this._currentTool).onClick)==null||a.call(r,e))}_onDblClick(e){var i,r,a;e.isTrusted&&((i=this.overlay)!=null&&i.onDblClick(e)||this._ignoreOverlayEvent(e)||(a=(r=this._currentTool).onDblClick)==null||a.call(r,e))}_onContextMenu(e){var i,r;e.isTrusted&&((r=(i=this._currentTool).onContextMenu)==null||r.call(i,e))}_onDragStart(e){var i,r;e.isTrusted&&(this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onDragStart)==null||r.call(i,e))}_onPointerDown(e){var i,r;e.isTrusted&&(this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onPointerDown)==null||r.call(i,e))}_onPointerUp(e){var i,r;e.isTrusted&&(this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onPointerUp)==null||r.call(i,e))}_onMouseDown(e){var i,r;e.isTrusted&&(this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onMouseDown)==null||r.call(i,e))}_onMouseUp(e){var i,r,a;e.isTrusted&&((i=this.overlay)!=null&&i.onMouseUp(e)||this._ignoreOverlayEvent(e)||(a=(r=this._currentTool).onMouseUp)==null||a.call(r,e))}_onMouseMove(e){var i,r,a;e.isTrusted&&((i=this.overlay)!=null&&i.onMouseMove(e)||this._ignoreOverlayEvent(e)||(a=(r=this._currentTool).onMouseMove)==null||a.call(r,e))}_onMouseEnter(e){var i,r;e.isTrusted&&(this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onMouseEnter)==null||r.call(i,e))}_onMouseLeave(e){var i,r;e.isTrusted&&(this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onMouseLeave)==null||r.call(i,e))}_onFocus(e){var i,r;e.isTrusted&&(this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onFocus)==null||r.call(i,e))}_onScroll(e){var i,r;e.isTrusted&&(this._lastHighlightedSelector=void 0,this._lastHighlightedAriaTemplateJSON="undefined",this.highlight.hideActionPoint(),(r=(i=this._currentTool).onScroll)==null||r.call(i,e))}_onInput(e){var i,r;this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onInput)==null||r.call(i,e)}_onKeyDown(e){var i,r;e.isTrusted&&(this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onKeyDown)==null||r.call(i,e))}_onKeyUp(e){var i,r;e.isTrusted&&(this._ignoreOverlayEvent(e)||(r=(i=this._currentTool).onKeyUp)==null||r.call(i,e))}updateHighlight(e,i){this._lastHighlightedSelector=void 0,this._lastHighlightedAriaTemplateJSON="undefined",this._updateHighlight(e,i)}_updateHighlight(e,i){var a,o;let r=e==null?void 0:e.tooltipText;r===void 0&&(e!=null&&e.selector)&&(r=this.injectedScript.utils.asLocator(this.state.language,e.selector)),e?this.highlight.updateHighlight(e.elements.map(u=>({element:u,color:e.color,tooltipText:r}))):this.highlight.clearHighlight(),i&&((o=(a=this._delegate).highlightUpdated)==null||o.call(a))}_ignoreOverlayEvent(e){return e.composedPath().some(i=>(i.nodeName||"").toLowerCase()==="x-pw-glass")}deepEventTarget(e){var i;for(const r of e.composedPath())if(!((i=this.overlay)!=null&&i.contains(r)))return r;return e.composedPath()[0]}setMode(e){var i,r;(r=(i=this._delegate).setMode)==null||r.call(i,e)}_captureAutoExpectSnapshot(){const e=this.injectedScript.document.documentElement;return e?this.injectedScript.utils.generateAriaTree(e,{mode:"autoexpect"}):void 0}async performAction(e){var r,a,o;const i=this._lastActionAutoexpectSnapshot;if(this._lastActionAutoexpectSnapshot=this._captureAutoExpectSnapshot(),!XA(e)&&this._lastActionAutoexpectSnapshot){const u=this.injectedScript.utils.findNewElement(i==null?void 0:i.root,(r=this._lastActionAutoexpectSnapshot)==null?void 0:r.root);e.preconditionSelector=u?this.injectedScript.generateSelector(u,{testIdAttributeName:this.state.testIdAttributeName}).selector:void 0,e.preconditionSelector===e.selector&&(e.preconditionSelector=void 0)}await((o=(a=this._delegate).performAction)==null?void 0:o.call(a,e).catch(()=>{}))}async recordAction(e){var i,r;this._lastActionAutoexpectSnapshot=this._captureAutoExpectSnapshot(),await((r=(i=this._delegate).recordAction)==null?void 0:r.call(i,e))}setOverlayState(e){var i,r;(r=(i=this._delegate).setOverlayState)==null||r.call(i,e)}elementPicked(e,i){var a,o;const r=this.injectedScript.ariaSnapshot(i.elements[0],{mode:"default"});(o=(a=this._delegate).elementPicked)==null||o.call(a,{selector:e,ariaSnapshot:r})}}let Pv=class{constructor(e){this._dialogElement=null,this._recorder=e}isShowing(){return!!this._dialogElement}show(e){const i=this._recorder.document.createElement("x-pw-tool-item");i.title="Accept",i.classList.add("accept"),i.appendChild(this._recorder.document.createElement("x-div")),i.addEventListener("click",()=>{var f;return(f=e.onCommit)==null?void 0:f.call(e)});const r=this._recorder.document.createElement("x-pw-tool-item");r.title="Close",r.classList.add("cancel"),r.appendChild(this._recorder.document.createElement("x-div")),r.addEventListener("click",()=>{var f;this.close(),(f=e.onCancel)==null||f.call(e)}),this._dialogElement=this._recorder.document.createElement("x-pw-dialog"),e.autosize&&this._dialogElement.classList.add("autosize"),this._keyboardListener=f=>{var d;if(f.key==="Escape"){this.close(),(d=e.onCancel)==null||d.call(e);return}if(e.onCommit&&f.key==="Enter"&&(f.ctrlKey||f.metaKey)){this._dialogElement&&e.onCommit();return}},this._onGlassPaneClickHandler=f=>{var d;this.close(),(d=e.onCancel)==null||d.call(e)},this._dialogElement.addEventListener("click",f=>f.stopPropagation());const a=this._recorder.document.createElement("x-pw-tools-list"),o=this._recorder.document.createElement("label");o.textContent=e.label,a.appendChild(o),a.appendChild(this._recorder.document.createElement("x-spacer")),e.onCommit&&a.appendChild(i),a.appendChild(r),this._dialogElement.appendChild(a);const u=this._recorder.document.createElement("x-pw-dialog-body");return u.appendChild(e.body),this._dialogElement.appendChild(u),this._recorder.highlight.appendChild(this._dialogElement),this._recorder.highlight.onGlassPaneClick(this._onGlassPaneClickHandler),this._recorder.document.addEventListener("keydown",this._keyboardListener,!0),this._dialogElement}moveTo(e,i){this._dialogElement&&(this._dialogElement.style.top=e+"px",this._dialogElement.style.left=i+"px")}close(){this._dialogElement&&(this._dialogElement.remove(),this._recorder.highlight.offGlassPaneClick(this._onGlassPaneClickHandler),this._recorder.document.removeEventListener("keydown",this._keyboardListener),this._dialogElement=null)}};function VA(n){let e=n.activeElement;for(;e&&e.shadowRoot&&e.shadowRoot.activeElement;)e=e.shadowRoot.activeElement;return e}function Tr(n){return(n.altKey?1:0)|(n.ctrlKey?2:0)|(n.metaKey?4:0)|(n.shiftKey?8:0)}function Yh(n){switch(n.which){case 1:return"left";case 2:return"middle";case 3:return"right"}return"left"}function Wa(n){if(n.target.nodeName==="CANVAS")return{x:n.offsetX,y:n.offsetY}}function Ge(n){n.preventDefault(),n.stopPropagation(),n.stopImmediatePropagation()}function el(n){if(!n||n.nodeName!=="INPUT")return null;const e=n;return["checkbox","radio"].includes(e.type)?e:null}function tl(n){return!n||n.nodeName!=="INPUT"?!1:n.type.toLowerCase()==="range"}const GA=new Set(["color","date","datetime-local","file","month","range","time","week"]);function Jv(n){const e=n.nodeName;return!!(e==="SELECT"||e==="OPTION"||e==="INPUT"&&GA.has(n.type))}function Ie(n,e,i,r){return n.addEventListener(e,i,r),()=>{n.removeEventListener(e,i,r)}}function Zv(n){for(const e of n)e();n.splice(0,n.length)}function KA(n,e,i,r){try{const a=n.parseSelector(i),o=n.querySelectorAll(a,r),u=o.length>1?mn.multiple:mn.single,f=n.utils.asLocator(e,i);return o.map((d,g)=>{const m=o.length>1?` [${g+1} of ${o.length}]`:"";return{element:d,color:u,tooltipText:f+m}})}catch{return[]}}function Wv(n,{tagName:e,attrs:i,children:r}){const a=n.createElementNS("http://www.w3.org/2000/svg",e);if(i)for(const[o,u]of Object.entries(i))a.setAttribute(o,u);if(r)for(const o of r)a.appendChild(Wv(n,o));return a}function XA(n){return n.name.startsWith("assert")}const YA="data:text/html;base64,"+btoa("<body></body><style>body { color-scheme: light dark; background: light-dark(white, #333) }</style>");function FA(n,e){n=n.replace(/AriaRole\s*\.\s*([\w]+)/g,(o,u)=>u.toLowerCase()).replace(/(get_by_role|getByRole)\s*\(\s*(?:["'`])([^'"`]+)['"`]/g,(o,u,f)=>`${u}(${f.toLowerCase()}`);const i=[];let r="";for(let o=0;o<n.length;++o){const u=n[o];if(u!=='"'&&u!=="'"&&u!=="`"&&u!=="/"){r+=u;continue}const f=n[o-1]==="r"||n[o]==="/";++o;let d="";for(;o<n.length;){if(n[o]==="\\"){f?(n[o+1]!==u&&(d+=n[o]),++o,d+=n[o]):(++o,n[o]==="n"?d+=`
`:n[o]==="r"?d+="\r":n[o]==="t"?d+="    ":d+=n[o]),++o;continue}if(n[o]!==u){d+=n[o++];continue}break}i.push({quote:u,text:d}),r+=(u==="/"?"r":"")+"$"+i.length}r=r.toLowerCase().replace(/get_by_alt_text/g,"getbyalttext").replace(/get_by_test_id/g,"getbytestid").replace(/get_by_([\w]+)/g,"getby$1").replace(/has_not_text/g,"hasnottext").replace(/has_text/g,"hastext").replace(/has_not/g,"hasnot").replace(/frame_locator/g,"framelocator").replace(/content_frame/g,"contentframe").replace(/[{}\s]/g,"").replace(/new\(\)/g,"").replace(/new[\w]+\.[\w]+options\(\)/g,"").replace(/\.set/g,",set").replace(/\.or_\(/g,"or(").replace(/\.and_\(/g,"and(").replace(/:/g,"=").replace(/,re\.ignorecase/g,"i").replace(/,pattern.case_insensitive/g,"i").replace(/,regexoptions.ignorecase/g,"i").replace(/re.compile\(([^)]+)\)/g,"$1").replace(/pattern.compile\(([^)]+)\)/g,"r$1").replace(/newregex\(([^)]+)\)/g,"r$1").replace(/string=/g,"=").replace(/regex=/g,"=").replace(/,,/g,",").replace(/,\)/g,")");const a=i.map(o=>o.quote).filter(o=>"'\"`".includes(o))[0];return{selector:eS(r,i,e),preferredQuote:a}}function Fb(n){return[...n.matchAll(/\$\d+/g)].length}function Qb(n,e){return n.replace(/\$(\d+)/g,(i,r)=>`$${r-e}`)}function eS(n,e,i){for(;;){const a=n.match(/filter\(,?(has=|hasnot=|sethas\(|sethasnot\()/);if(!a)break;const o=a.index+a[0].length;let u=0,f=o;for(;f<n.length&&(n[f]==="("?u++:n[f]===")"&&u--,!(u<0));f++);let d=n.substring(0,o),g=0;["sethas(","sethasnot("].includes(a[1])&&(g=1,d=d.replace(/sethas\($/,"has=").replace(/sethasnot\($/,"hasnot="));const m=Fb(n.substring(0,o)),y=Qb(n.substring(o,f),m),S=Fb(y),w=e.slice(m,m+S),E=JSON.stringify(eS(y,w,i));n=d.replace(/=$/,"2=")+`$${m+1}`+Qb(n.substring(f+g),S-1);const x=e.slice(0,m),_=e.slice(m+S);e=x.concat([{quote:'"',text:E}]).concat(_)}n=n.replace(/\,set([\w]+)\(([^)]+)\)/g,(a,o,u)=>","+o.toLowerCase()+"="+u.toLowerCase()).replace(/framelocator\(([^)]+)\)/g,"$1.internal:control=enter-frame").replace(/contentframe(\(\))?/g,"internal:control=enter-frame").replace(/locator\(([^)]+),hastext=([^),]+)\)/g,"locator($1).internal:has-text=$2").replace(/locator\(([^)]+),hasnottext=([^),]+)\)/g,"locator($1).internal:has-not-text=$2").replace(/locator\(([^)]+),hastext=([^),]+)\)/g,"locator($1).internal:has-text=$2").replace(/locator\(([^)]+)\)/g,"$1").replace(/getbyrole\(([^)]+)\)/g,"internal:role=$1").replace(/getbytext\(([^)]+)\)/g,"internal:text=$1").replace(/getbylabel\(([^)]+)\)/g,"internal:label=$1").replace(/getbytestid\(([^)]+)\)/g,`internal:testid=[${lv(i)}=$1]`).replace(/getby(placeholder|alt|title)(?:text)?\(([^)]+)\)/g,"internal:attr=[$1=$2]").replace(/first(\(\))?/g,"nth=0").replace(/last(\(\))?/g,"nth=-1").replace(/nth\(([^)]+)\)/g,"nth=$1").replace(/filter\(,?visible=true\)/g,"visible=true").replace(/filter\(,?visible=false\)/g,"visible=false").replace(/filter\(,?hastext=([^)]+)\)/g,"internal:has-text=$1").replace(/filter\(,?hasnottext=([^)]+)\)/g,"internal:has-not-text=$1").replace(/filter\(,?has2=([^)]+)\)/g,"internal:has=$1").replace(/filter\(,?hasnot2=([^)]+)\)/g,"internal:has-not=$1").replace(/,exact=false/g,"").replace(/(,name=\$\d+)(,description=\$\d+),exact=true/g,"$1s$2s").replace(/,exact=true/g,"s").replace(/,includehidden=/g,",include-hidden=").replace(/\,/g,"][");const r=n.split(".");for(let a=0;a<r.length-1;a++)if(r[a]==="internal:control=enter-frame"&&r[a+1].startsWith("nth=")){const[o]=r.splice(a,1);r.splice(a+1,0,o)}return r.map(a=>!a.startsWith("internal:")||a==="internal:control"?a.replace(/\$(\d+)/g,(o,u)=>e[+u-1].text):(a=a.includes("[")?a.replace(/\]/,"")+"]":a,a=a.replace(/(?:r)\$(\d+)(i)?/g,(o,u,f)=>{const d=e[+u-1];return a.startsWith("internal:attr")||a.startsWith("internal:testid")||a.startsWith("internal:role")?Ze(new RegExp(d.text),!1)+(f||""):Vt(new RegExp(d.text,f),!1)}).replace(/\$(\d+)(i|s)?/g,(o,u,f)=>{const d=e[+u-1];return a.startsWith("internal:has=")||a.startsWith("internal:has-not=")?d.text:a.startsWith("internal:testid")?Ze(d.text,!0):a.startsWith("internal:attr")||a.startsWith("internal:role")?Ze(d.text,f==="s"):Vt(d.text,f==="s")}),a)).join(" >> ")}function QA(n,e,i="data-testid"){try{return PA(n,e,i)}catch{return""}}function PA(n,e,i="data-testid"){try{return fl(e),e}catch{}const{selector:r,preferredQuote:a}=FA(e,i),o=V0(n,r,void 0,void 0,a),u=Pb(n,e);return o.some(f=>Pb(n,f)===u)?r:""}function Pb(n,e){return e=e.replace(/\s/g,""),n==="javascript"&&(e=e.replace(/\\?["`]/g,"'").replace(/,{}/g,"")),e}const JA=({url:n})=>b.jsxs("div",{className:"browser-frame-header",children:[b.jsxs("div",{className:"browser-traffic-lights",children:[b.jsx("span",{className:"browser-frame-dot",style:{backgroundColor:"rgb(242, 95, 88)"}}),b.jsx("span",{className:"browser-frame-dot",style:{backgroundColor:"rgb(251, 190, 60)"}}),b.jsx("span",{className:"browser-frame-dot",style:{backgroundColor:"rgb(88, 203, 66)"}})]}),b.jsxs("div",{className:"browser-frame-address-bar",title:n||"about:blank",children:[b.jsx("span",{className:"browser-frame-address",children:n||"about:blank"}),n&&b.jsx(ud,{value:n})]}),b.jsx("div",{style:{marginLeft:"auto"},children:b.jsxs("div",{children:[b.jsx("span",{className:"browser-frame-menu-bar"}),b.jsx("span",{className:"browser-frame-menu-bar"}),b.jsx("span",{className:"browser-frame-menu-bar"})]})})]}),Ud=Symbol.for("yaml.alias"),Fh=Symbol.for("yaml.document"),Di=Symbol.for("yaml.map"),tS=Symbol.for("yaml.pair"),jn=Symbol.for("yaml.scalar"),Rr=Symbol.for("yaml.seq"),bn=Symbol.for("yaml.node.type"),Hi=n=>!!n&&typeof n=="object"&&n[bn]===Ud,ms=n=>!!n&&typeof n=="object"&&n[bn]===Fh,Dr=n=>!!n&&typeof n=="object"&&n[bn]===Di,Ve=n=>!!n&&typeof n=="object"&&n[bn]===tS,ze=n=>!!n&&typeof n=="object"&&n[bn]===jn,zr=n=>!!n&&typeof n=="object"&&n[bn]===Rr;function Ke(n){if(n&&typeof n=="object")switch(n[bn]){case Di:case Rr:return!0}return!1}function Xe(n){if(n&&typeof n=="object")switch(n[bn]){case Ud:case Di:case jn:case Rr:return!0}return!1}const nS=n=>(ze(n)||Ke(n))&&!!n.anchor,Gt=Symbol("break visit"),iS=Symbol("skip children"),On=Symbol("remove node");function ys(n,e){const i=sS(e);ms(n)?Sr(null,n.contents,i,Object.freeze([n]))===On&&(n.contents=null):Sr(null,n,i,Object.freeze([]))}ys.BREAK=Gt;ys.SKIP=iS;ys.REMOVE=On;function Sr(n,e,i,r){const a=rS(n,e,i,r);if(Xe(a)||Ve(a))return aS(n,r,a),Sr(n,a,i,r);if(typeof a!="symbol"){if(Ke(e)){r=Object.freeze(r.concat(e));for(let o=0;o<e.items.length;++o){const u=Sr(o,e.items[o],i,r);if(typeof u=="number")o=u-1;else{if(u===Gt)return Gt;u===On&&(e.items.splice(o,1),o-=1)}}}else if(Ve(e)){r=Object.freeze(r.concat(e));const o=Sr("key",e.key,i,r);if(o===Gt)return Gt;o===On&&(e.key=null);const u=Sr("value",e.value,i,r);if(u===Gt)return Gt;u===On&&(e.value=null)}}return a}async function Ac(n,e){const i=sS(e);ms(n)?await wr(null,n.contents,i,Object.freeze([n]))===On&&(n.contents=null):await wr(null,n,i,Object.freeze([]))}Ac.BREAK=Gt;Ac.SKIP=iS;Ac.REMOVE=On;async function wr(n,e,i,r){const a=await rS(n,e,i,r);if(Xe(a)||Ve(a))return aS(n,r,a),wr(n,a,i,r);if(typeof a!="symbol"){if(Ke(e)){r=Object.freeze(r.concat(e));for(let o=0;o<e.items.length;++o){const u=await wr(o,e.items[o],i,r);if(typeof u=="number")o=u-1;else{if(u===Gt)return Gt;u===On&&(e.items.splice(o,1),o-=1)}}}else if(Ve(e)){r=Object.freeze(r.concat(e));const o=await wr("key",e.key,i,r);if(o===Gt)return Gt;o===On&&(e.key=null);const u=await wr("value",e.value,i,r);if(u===Gt)return Gt;u===On&&(e.value=null)}}return a}function sS(n){return typeof n=="object"&&(n.Collection||n.Node||n.Value)?Object.assign({Alias:n.Node,Map:n.Node,Scalar:n.Node,Seq:n.Node},n.Value&&{Map:n.Value,Scalar:n.Value,Seq:n.Value},n.Collection&&{Map:n.Collection,Seq:n.Collection},n):n}function rS(n,e,i,r){var a,o,u,f,d;if(typeof i=="function")return i(n,e,r);if(Dr(e))return(a=i.Map)==null?void 0:a.call(i,n,e,r);if(zr(e))return(o=i.Seq)==null?void 0:o.call(i,n,e,r);if(Ve(e))return(u=i.Pair)==null?void 0:u.call(i,n,e,r);if(ze(e))return(f=i.Scalar)==null?void 0:f.call(i,n,e,r);if(Hi(e))return(d=i.Alias)==null?void 0:d.call(i,n,e,r)}function aS(n,e,i){const r=e[e.length-1];if(Ke(r))r.items[n]=i;else if(Ve(r))n==="key"?r.key=i:r.value=i;else if(ms(r))r.contents=i;else{const a=Hi(r)?"alias":"scalar";throw new Error(`Cannot replace node with ${a} parent`)}}const ZA={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},WA=n=>n.replace(/[!,[\]{}]/g,e=>ZA[e]);class Ot{constructor(e,i){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},Ot.defaultYaml,e),this.tags=Object.assign({},Ot.defaultTags,i)}clone(){const e=new Ot(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){const e=new Ot(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:Ot.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},Ot.defaultTags);break}return e}add(e,i){this.atNextDocument&&(this.yaml={explicit:Ot.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},Ot.defaultTags),this.atNextDocument=!1);const r=e.trim().split(/[ \t]+/),a=r.shift();switch(a){case"%TAG":{if(r.length!==2&&(i(0,"%TAG directive should contain exactly two parts"),r.length<2))return!1;const[o,u]=r;return this.tags[o]=u,!0}case"%YAML":{if(this.yaml.explicit=!0,r.length!==1)return i(0,"%YAML directive should contain exactly one part"),!1;const[o]=r;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{const u=/^\d+\.\d+$/.test(o);return i(6,`Unsupported YAML version ${o}`,u),!1}}default:return i(0,`Unknown directive ${a}`,!0),!1}}tagName(e,i){if(e==="!")return"!";if(e[0]!=="!")return i(`Not a valid tag: ${e}`),null;if(e[1]==="<"){const u=e.slice(2,-1);return u==="!"||u==="!!"?(i(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&i("Verbatim tags must end with a >"),u)}const[,r,a]=e.match(/^(.*!)([^!]*)$/s);a||i(`The ${e} tag has no suffix`);const o=this.tags[r];if(o)try{return o+decodeURIComponent(a)}catch(u){return i(String(u)),null}return r==="!"?e:(i(`Could not resolve tag: ${e}`),null)}tagString(e){for(const[i,r]of Object.entries(this.tags))if(e.startsWith(r))return i+WA(e.substring(r.length));return e[0]==="!"?e:`!<${e}>`}toString(e){const i=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],r=Object.entries(this.tags);let a;if(e&&r.length>0&&Xe(e.contents)){const o={};ys(e.contents,(u,f)=>{Xe(f)&&f.tag&&(o[f.tag]=!0)}),a=Object.keys(o)}else a=[];for(const[o,u]of r)o==="!!"&&u==="tag:yaml.org,2002:"||(!e||a.some(f=>f.startsWith(u)))&&i.push(`%TAG ${o} ${u}`);return i.join(`
`)}}Ot.defaultYaml={explicit:!1,version:"1.2"};Ot.defaultTags={"!!":"tag:yaml.org,2002:"};function lS(n){if(/[\x00-\x19\s,[\]{}]/.test(n)){const i=`Anchor must not contain whitespace or control characters: ${JSON.stringify(n)}`;throw new Error(i)}return!0}function oS(n){const e=new Set;return ys(n,{Value(i,r){r.anchor&&e.add(r.anchor)}}),e}function cS(n,e){for(let i=1;;++i){const r=`${n}${i}`;if(!e.has(r))return r}}function eC(n,e){const i=[],r=new Map;let a=null;return{onAnchor:o=>{i.push(o),a??(a=oS(n));const u=cS(e,a);return a.add(u),u},setAnchors:()=>{for(const o of i){const u=r.get(o);if(typeof u=="object"&&u.anchor&&(ze(u.node)||Ke(u.node)))u.node.anchor=u.anchor;else{const f=new Error("Failed to resolve repeated object (this should not happen)");throw f.source=o,f}}},sourceObjects:r}}function xr(n,e,i,r){if(r&&typeof r=="object")if(Array.isArray(r))for(let a=0,o=r.length;a<o;++a){const u=r[a],f=xr(n,r,String(a),u);f===void 0?delete r[a]:f!==u&&(r[a]=f)}else if(r instanceof Map)for(const a of Array.from(r.keys())){const o=r.get(a),u=xr(n,r,a,o);u===void 0?r.delete(a):u!==o&&r.set(a,u)}else if(r instanceof Set)for(const a of Array.from(r)){const o=xr(n,r,a,a);o===void 0?r.delete(a):o!==a&&(r.delete(a),r.add(o))}else for(const[a,o]of Object.entries(r)){const u=xr(n,r,a,o);u===void 0?delete r[a]:u!==o&&(r[a]=u)}return n.call(e,i,r)}function yn(n,e,i){if(Array.isArray(n))return n.map((r,a)=>yn(r,String(a),i));if(n&&typeof n.toJSON=="function"){if(!i||!nS(n))return n.toJSON(e,i);const r={aliasCount:0,count:1,res:void 0};i.anchors.set(n,r),i.onCreate=o=>{r.res=o,delete i.onCreate};const a=n.toJSON(e,i);return i.onCreate&&i.onCreate(a),a}return typeof n=="bigint"&&!(i!=null&&i.keep)?Number(n):n}class Hd{constructor(e){Object.defineProperty(this,bn,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:i,maxAliasCount:r,onAnchor:a,reviver:o}={}){if(!ms(e))throw new TypeError("A document argument is required");const u={anchors:new Map,doc:e,keep:!0,mapAsMap:i===!0,mapKeyWarned:!1,maxAliasCount:typeof r=="number"?r:100},f=yn(this,"",u);if(typeof a=="function")for(const{count:d,res:g}of u.anchors.values())a(g,d);return typeof o=="function"?xr(o,{"":f},"",f):f}}class Cc extends Hd{constructor(e){super(Ud),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e,i){let r;i!=null&&i.aliasResolveCache?r=i.aliasResolveCache:(r=[],ys(e,{Node:(o,u)=>{(Hi(u)||nS(u))&&r.push(u)}}),i&&(i.aliasResolveCache=r));let a;for(const o of r){if(o===this)break;o.anchor===this.source&&(a=o)}return a}toJSON(e,i){if(!i)return{source:this.source};const{anchors:r,doc:a,maxAliasCount:o}=i,u=this.resolve(a,i);if(!u){const d=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(d)}let f=r.get(u);if(f||(yn(u,null,i),f=r.get(u)),(f==null?void 0:f.res)===void 0){const d="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(d)}if(o>=0&&(f.count+=1,f.aliasCount===0&&(f.aliasCount=ec(a,u,r)),f.count*f.aliasCount>o)){const d="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(d)}return f.res}toString(e,i,r){const a=`*${this.source}`;if(e){if(lS(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(e.implicitKey)return`${a} `}return a}}function ec(n,e,i){if(Hi(e)){const r=e.resolve(n),a=i&&r&&i.get(r);return a?a.count*a.aliasCount:0}else if(Ke(e)){let r=0;for(const a of e.items){const o=ec(n,a,i);o>r&&(r=o)}return r}else if(Ve(e)){const r=ec(n,e.key,i),a=ec(n,e.value,i);return Math.max(r,a)}return 1}const uS=n=>!n||typeof n!="function"&&typeof n!="object";class de extends Hd{constructor(e){super(jn),this.value=e}toJSON(e,i){return i!=null&&i.keep?this.value:yn(this.value,e,i)}toString(){return String(this.value)}}de.BLOCK_FOLDED="BLOCK_FOLDED";de.BLOCK_LITERAL="BLOCK_LITERAL";de.PLAIN="PLAIN";de.QUOTE_DOUBLE="QUOTE_DOUBLE";de.QUOTE_SINGLE="QUOTE_SINGLE";const tC="tag:yaml.org,2002:";function nC(n,e,i){if(e){const r=i.filter(o=>o.tag===e),a=r.find(o=>!o.format)??r[0];if(!a)throw new Error(`Tag ${e} not found`);return a}return i.find(r=>{var a;return((a=r.identify)==null?void 0:a.call(r,n))&&!r.format})}function ll(n,e,i){var y,S,w;if(ms(n)&&(n=n.contents),Xe(n))return n;if(Ve(n)){const E=(S=(y=i.schema[Di]).createNode)==null?void 0:S.call(y,i.schema,null,i);return E.items.push(n),E}(n instanceof String||n instanceof Number||n instanceof Boolean||typeof BigInt<"u"&&n instanceof BigInt)&&(n=n.valueOf());const{aliasDuplicateObjects:r,onAnchor:a,onTagObj:o,schema:u,sourceObjects:f}=i;let d;if(r&&n&&typeof n=="object"){if(d=f.get(n),d)return d.anchor??(d.anchor=a(n)),new Cc(d.anchor);d={anchor:null,node:null},f.set(n,d)}e!=null&&e.startsWith("!!")&&(e=tC+e.slice(2));let g=nC(n,e,u.tags);if(!g){if(n&&typeof n.toJSON=="function"&&(n=n.toJSON()),!n||typeof n!="object"){const E=new de(n);return d&&(d.node=E),E}g=n instanceof Map?u[Di]:Symbol.iterator in Object(n)?u[Rr]:u[Di]}o&&(o(g),delete i.onTagObj);const m=g!=null&&g.createNode?g.createNode(i.schema,n,i):typeof((w=g==null?void 0:g.nodeClass)==null?void 0:w.from)=="function"?g.nodeClass.from(i.schema,n,i):new de(n);return e?m.tag=e:g.default||(m.tag=g.tag),d&&(d.node=m),m}function dc(n,e,i){let r=i;for(let a=e.length-1;a>=0;--a){const o=e[a];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){const u=[];u[o]=r,r=u}else r=new Map([[o,r]])}return ll(r,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:n,sourceObjects:new Map})}const Ya=n=>n==null||typeof n=="object"&&!!n[Symbol.iterator]().next().done;class fS extends Hd{constructor(e,i){super(e),Object.defineProperty(this,"schema",{value:i,configurable:!0,enumerable:!1,writable:!0})}clone(e){const i=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(i.schema=e),i.items=i.items.map(r=>Xe(r)||Ve(r)?r.clone(e):r),this.range&&(i.range=this.range.slice()),i}addIn(e,i){if(Ya(e))this.add(i);else{const[r,...a]=e,o=this.get(r,!0);if(Ke(o))o.addIn(a,i);else if(o===void 0&&this.schema)this.set(r,dc(this.schema,a,i));else throw new Error(`Expected YAML collection at ${r}. Remaining path: ${a}`)}}deleteIn(e){const[i,...r]=e;if(r.length===0)return this.delete(i);const a=this.get(i,!0);if(Ke(a))return a.deleteIn(r);throw new Error(`Expected YAML collection at ${i}. Remaining path: ${r}`)}getIn(e,i){const[r,...a]=e,o=this.get(r,!0);return a.length===0?!i&&ze(o)?o.value:o:Ke(o)?o.getIn(a,i):void 0}hasAllNullValues(e){return this.items.every(i=>{if(!Ve(i))return!1;const r=i.value;return r==null||e&&ze(r)&&r.value==null&&!r.commentBefore&&!r.comment&&!r.tag})}hasIn(e){const[i,...r]=e;if(r.length===0)return this.has(i);const a=this.get(i,!0);return Ke(a)?a.hasIn(r):!1}setIn(e,i){const[r,...a]=e;if(a.length===0)this.set(r,i);else{const o=this.get(r,!0);if(Ke(o))o.setIn(a,i);else if(o===void 0&&this.schema)this.set(r,dc(this.schema,a,i));else throw new Error(`Expected YAML collection at ${r}. Remaining path: ${a}`)}}}const iC=n=>n.replace(/^(?!$)(?: $)?/gm,"#");function si(n,e){return/^\n+$/.test(n)?n.substring(1):e?n.replace(/^(?! *$)/gm,e):n}const us=(n,e,i)=>n.endsWith(`
`)?si(i,e):i.includes(`
`)?`
`+si(i,e):(n.endsWith(" ")?"":" ")+i,hS="flow",Qh="block",tc="quoted";function Nc(n,e,i="flow",{indentAtStart:r,lineWidth:a=80,minContentWidth:o=20,onFold:u,onOverflow:f}={}){if(!a||a<0)return n;a<o&&(o=0);const d=Math.max(1+o,1+a-e.length);if(n.length<=d)return n;const g=[],m={};let y=a-e.length;typeof r=="number"&&(r>a-Math.max(2,o)?g.push(0):y=a-r);let S,w,E=!1,x=-1,_=-1,A=-1;i===Qh&&(x=Jb(n,x,e.length),x!==-1&&(y=x+d));for(let H;H=n[x+=1];){if(i===tc&&H==="\\"){switch(_=x,n[x+1]){case"x":x+=3;break;case"u":x+=5;break;case"U":x+=9;break;default:x+=1}A=x}if(H===`
`)i===Qh&&(x=Jb(n,x,e.length)),y=x+e.length+d,S=void 0;else{if(H===" "&&w&&w!==" "&&w!==`
`&&w!=="    "){const V=n[x+1];V&&V!==" "&&V!==`
`&&V!=="    "&&(S=x)}if(x>=y)if(S)g.push(S),y=S+d,S=void 0;else if(i===tc){for(;w===" "||w==="    ";)w=H,H=n[x+=1],E=!0;const V=x>A+1?x-2:_-1;if(m[V])return n;g.push(V),m[V]=!0,y=V+d,S=void 0}else E=!0}w=H}if(E&&f&&f(),g.length===0)return n;u&&u();let C=n.slice(0,g[0]);for(let H=0;H<g.length;++H){const V=g[H],K=g[H+1]||n.length;V===0?C=`
${e}${n.slice(0,K)}`:(i===tc&&m[V]&&(C+=`${n[V]}\\`),C+=`
${e}${n.slice(V+1,K)}`)}return C}function Jb(n,e,i){let r=e,a=e+1,o=n[a];for(;o===" "||o==="    ";)if(e<a+i)o=n[++e];else{do o=n[++e];while(o&&o!==`
`);r=e,a=e+1,o=n[a]}return r}const kc=(n,e)=>({indentAtStart:e?n.indent.length:n.indentAtStart,lineWidth:n.options.lineWidth,minContentWidth:n.options.minContentWidth}),Mc=n=>/^(%|---|\.\.\.)/m.test(n);function sC(n,e,i){if(!e||e<0)return!1;const r=e-i,a=n.length;if(a<=r)return!1;for(let o=0,u=0;o<a;++o)if(n[o]===`
`){if(o-u>r)return!0;if(u=o+1,a-u<=r)return!1}return!0}function nl(n,e){const i=JSON.stringify(n);if(e.options.doubleQuotedAsJSON)return i;const{implicitKey:r}=e,a=e.options.doubleQuotedMinMultiLineLength,o=e.indent||(Mc(n)?"  ":"");let u="",f=0;for(let d=0,g=i[d];g;g=i[++d])if(g===" "&&i[d+1]==="\\"&&i[d+2]==="n"&&(u+=i.slice(f,d)+"\\ ",d+=1,f=d,g="\\"),g==="\\")switch(i[d+1]){case"u":{u+=i.slice(f,d);const m=i.substr(d+2,4);switch(m){case"0000":u+="\\0";break;case"0007":u+="\\a";break;case"000b":u+="\\v";break;case"001b":u+="\\e";break;case"0085":u+="\\N";break;case"00a0":u+="\\_";break;case"2028":u+="\\L";break;case"2029":u+="\\P";break;default:m.substr(0,2)==="00"?u+="\\x"+m.substr(2):u+=i.substr(d,6)}d+=5,f=d+1}break;case"n":if(r||i[d+2]==='"'||i.length<a)d+=1;else{for(u+=i.slice(f,d)+`
`;i[d+2]==="\\"&&i[d+3]==="n"&&i[d+4]!=='"';)u+=`
`,d+=2;u+=o,i[d+2]===" "&&(u+="\\"),d+=1,f=d+1}break;default:d+=1}return u=f?u+i.slice(f):i,r?u:Nc(u,o,tc,kc(e,!1))}function Ph(n,e){if(e.options.singleQuote===!1||e.implicitKey&&n.includes(`
`)||/[ \t]\n|\n[ \t]/.test(n))return nl(n,e);const i=e.indent||(Mc(n)?"  ":""),r="'"+n.replace(/'/g,"''").replace(/\n+/g,`$&
${i}`)+"'";return e.implicitKey?r:Nc(r,i,hS,kc(e,!1))}function _r(n,e){const{singleQuote:i}=e.options;let r;if(i===!1)r=nl;else{const a=n.includes('"'),o=n.includes("'");a&&!o?r=Ph:o&&!a?r=nl:r=i?Ph:nl}return r(n,e)}let Jh;try{Jh=new RegExp(`(^|(?<!
))
+(?!
|$)`,"g")}catch{Jh=/\n+(?!\n|$)/g}function nc({comment:n,type:e,value:i},r,a,o){const{blockQuote:u,commentString:f,lineWidth:d}=r.options;if(!u||/\n[\t ]+$/.test(i))return _r(i,r);const g=r.indent||(r.forceBlockIndent||Mc(i)?"  ":""),m=u==="literal"?!0:u==="folded"||e===de.BLOCK_FOLDED?!1:e===de.BLOCK_LITERAL?!0:!sC(i,d,g.length);if(!i)return m?`|
`:`>
`;let y,S;for(S=i.length;S>0;--S){const K=i[S-1];if(K!==`
`&&K!=="    "&&K!==" ")break}let w=i.substring(S);const E=w.indexOf(`
`);E===-1?y="-":i===w||E!==w.length-1?(y="+",o&&o()):y="",w&&(i=i.slice(0,-w.length),w[w.length-1]===`
`&&(w=w.slice(0,-1)),w=w.replace(Jh,`$&${g}`));let x=!1,_,A=-1;for(_=0;_<i.length;++_){const K=i[_];if(K===" ")x=!0;else if(K===`
`)A=_;else break}let C=i.substring(0,A<_?A+1:_);C&&(i=i.substring(C.length),C=C.replace(/\n+/g,`$&${g}`));let V=(x?g?"2":"1":"")+y;if(n&&(V+=" "+f(n.replace(/ ?[\r\n]+/g," ")),a&&a()),!m){const K=i.replace(/\n+/g,`
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${g}`);let Q=!1;const j=kc(r,!0);u!=="folded"&&e!==de.BLOCK_FOLDED&&(j.onOverflow=()=>{Q=!0});const I=Nc(`${C}${K}${w}`,g,Qh,j);if(!Q)return`>${V}
${g}${I}`}return i=i.replace(/\n+/g,`$&${g}`),`|${V}
${g}${C}${i}${w}`}function rC(n,e,i,r){const{type:a,value:o}=n,{actualString:u,implicitKey:f,indent:d,indentStep:g,inFlow:m}=e;if(f&&o.includes(`
`)||m&&/[[\]{},]/.test(o))return _r(o,e);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return f||m||!o.includes(`
`)?_r(o,e):nc(n,e,i,r);if(!f&&!m&&a!==de.PLAIN&&o.includes(`
`))return nc(n,e,i,r);if(Mc(o)){if(d==="")return e.forceBlockIndent=!0,nc(n,e,i,r);if(f&&d===g)return _r(o,e)}const y=o.replace(/\n+/g,`$&
${d}`);if(u){const S=x=>{var _;return x.default&&x.tag!=="tag:yaml.org,2002:str"&&((_=x.test)==null?void 0:_.test(y))},{compat:w,tags:E}=e.doc.schema;if(E.some(S)||w!=null&&w.some(S))return _r(o,e)}return f?y:Nc(y,d,hS,kc(e,!1))}function pl(n,e,i,r){const{implicitKey:a,inFlow:o}=e,u=typeof n.value=="string"?n:Object.assign({},n,{value:String(n.value)});let{type:f}=n;f!==de.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(u.value)&&(f=de.QUOTE_DOUBLE);const d=m=>{switch(m){case de.BLOCK_FOLDED:case de.BLOCK_LITERAL:return a||o?_r(u.value,e):nc(u,e,i,r);case de.QUOTE_DOUBLE:return nl(u.value,e);case de.QUOTE_SINGLE:return Ph(u.value,e);case de.PLAIN:return rC(u,e,i,r);default:return null}};let g=d(f);if(g===null){const{defaultKeyType:m,defaultStringType:y}=e.options,S=a&&m||y;if(g=d(S),g===null)throw new Error(`Unsupported default string type ${S}`)}return g}function dS(n,e){const i=Object.assign({blockQuote:!0,commentString:iC,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},n.schema.toStringOptions,e);let r;switch(i.collectionStyle){case"block":r=!1;break;case"flow":r=!0;break;default:r=null}return{anchors:new Set,doc:n,flowCollectionPadding:i.flowCollectionPadding?" ":"",indent:"",indentStep:typeof i.indent=="number"?" ".repeat(i.indent):"  ",inFlow:r,options:i}}function aC(n,e){var a;if(e.tag){const o=n.filter(u=>u.tag===e.tag);if(o.length>0)return o.find(u=>u.format===e.format)??o[0]}let i,r;if(ze(e)){r=e.value;let o=n.filter(u=>{var f;return(f=u.identify)==null?void 0:f.call(u,r)});if(o.length>1){const u=o.filter(f=>f.test);u.length>0&&(o=u)}i=o.find(u=>u.format===e.format)??o.find(u=>!u.format)}else r=e,i=n.find(o=>o.nodeClass&&r instanceof o.nodeClass);if(!i){const o=((a=r==null?void 0:r.constructor)==null?void 0:a.name)??(r===null?"null":typeof r);throw new Error(`Tag not resolved for ${o} value`)}return i}function lC(n,e,{anchors:i,doc:r}){if(!r.directives)return"";const a=[],o=(ze(n)||Ke(n))&&n.anchor;o&&lS(o)&&(i.add(o),a.push(`&${o}`));const u=n.tag??(e.default?null:e.tag);return u&&a.push(r.directives.tagString(u)),a.join(" ")}function Nr(n,e,i,r){var d;if(Ve(n))return n.toString(e,i,r);if(Hi(n)){if(e.doc.directives)return n.toString(e);if((d=e.resolvedAliases)!=null&&d.has(n))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(n):e.resolvedAliases=new Set([n]),n=n.resolve(e.doc)}let a;const o=Xe(n)?n:e.doc.createNode(n,{onTagObj:g=>a=g});a??(a=aC(e.doc.schema.tags,o));const u=lC(o,a,e);u.length>0&&(e.indentAtStart=(e.indentAtStart??0)+u.length+1);const f=typeof a.stringify=="function"?a.stringify(o,e,i,r):ze(o)?pl(o,e,i,r):o.toString(e,i,r);return u?ze(o)||f[0]==="{"||f[0]==="["?`${u} ${f}`:`${u}
${e.indent}${f}`:f}function oC({key:n,value:e},i,r,a){const{allNullValues:o,doc:u,indent:f,indentStep:d,options:{commentString:g,indentSeq:m,simpleKeys:y}}=i;let S=Xe(n)&&n.comment||null;if(y){if(S)throw new Error("With simple keys, key nodes cannot have comments");if(Ke(n)||!Xe(n)&&typeof n=="object"){const j="With simple keys, collection cannot be used as a key value";throw new Error(j)}}let w=!y&&(!n||S&&e==null&&!i.inFlow||Ke(n)||(ze(n)?n.type===de.BLOCK_FOLDED||n.type===de.BLOCK_LITERAL:typeof n=="object"));i=Object.assign({},i,{allNullValues:!1,implicitKey:!w&&(y||!o),indent:f+d});let E=!1,x=!1,_=Nr(n,i,()=>E=!0,()=>x=!0);if(!w&&!i.inFlow&&_.length>1024){if(y)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");w=!0}if(i.inFlow){if(o||e==null)return E&&r&&r(),_===""?"?":w?`? ${_}`:_}else if(o&&!y||e==null&&w)return _=`? ${_}`,S&&!E?_+=us(_,i.indent,g(S)):x&&a&&a(),_;E&&(S=null),w?(S&&(_+=us(_,i.indent,g(S))),_=`? ${_}
${f}:`):(_=`${_}:`,S&&(_+=us(_,i.indent,g(S))));let A,C,H;Xe(e)?(A=!!e.spaceBefore,C=e.commentBefore,H=e.comment):(A=!1,C=null,H=null,e&&typeof e=="object"&&(e=u.createNode(e))),i.implicitKey=!1,!w&&!S&&ze(e)&&(i.indentAtStart=_.length+1),x=!1,!m&&d.length>=2&&!i.inFlow&&!w&&zr(e)&&!e.flow&&!e.tag&&!e.anchor&&(i.indent=i.indent.substring(2));let V=!1;const K=Nr(e,i,()=>V=!0,()=>x=!0);let Q=" ";if(S||A||C){if(Q=A?`
`:"",C){const j=g(C);Q+=`
${si(j,i.indent)}`}K===""&&!i.inFlow?Q===`
`&&H&&(Q=`
`):Q+=`
${i.indent}`}else if(!w&&Ke(e)){const j=K[0],I=K.indexOf(`
`),O=I!==-1,P=i.inFlow??e.flow??e.items.length===0;if(O||!P){let J=!1;if(O&&(j==="&"||j==="!")){let $=K.indexOf(" ");j==="&"&&$!==-1&&$<I&&K[$+1]==="!"&&($=K.indexOf(" ",$+1)),($===-1||I<$)&&(J=!0)}J||(Q=`
${i.indent}`)}}else(K===""||K[0]===`
`)&&(Q="");return _+=Q+K,i.inFlow?V&&r&&r():H&&!V?_+=us(_,i.indent,g(H)):x&&a&&a(),_}function pS(n,e){(n==="debug"||n==="warn")&&console.warn(e)}const $o="<<",ri={identify:n=>n===$o||typeof n=="symbol"&&n.description===$o,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new de(Symbol($o)),{addToJSMap:gS}),stringify:()=>$o},cC=(n,e)=>(ri.identify(e)||ze(e)&&(!e.type||e.type===de.PLAIN)&&ri.identify(e.value))&&(n==null?void 0:n.doc.schema.tags.some(i=>i.tag===ri.tag&&i.default));function gS(n,e,i){if(i=n&&Hi(i)?i.resolve(n.doc):i,zr(i))for(const r of i.items)xh(n,e,r);else if(Array.isArray(i))for(const r of i)xh(n,e,r);else xh(n,e,i)}function xh(n,e,i){const r=n&&Hi(i)?i.resolve(n.doc):i;if(!Dr(r))throw new Error("Merge sources must be maps or map aliases");const a=r.toJSON(null,n,Map);for(const[o,u]of a)e instanceof Map?e.has(o)||e.set(o,u):e instanceof Set?e.add(o):Object.prototype.hasOwnProperty.call(e,o)||Object.defineProperty(e,o,{value:u,writable:!0,enumerable:!0,configurable:!0});return e}function mS(n,e,{key:i,value:r}){if(Xe(i)&&i.addToJSMap)i.addToJSMap(n,e,r);else if(cC(n,i))gS(n,e,r);else{const a=yn(i,"",n);if(e instanceof Map)e.set(a,yn(r,a,n));else if(e instanceof Set)e.add(a);else{const o=uC(i,a,n),u=yn(r,o,n);o in e?Object.defineProperty(e,o,{value:u,writable:!0,enumerable:!0,configurable:!0}):e[o]=u}}return e}function uC(n,e,i){if(e===null)return"";if(typeof e!="object")return String(e);if(Xe(n)&&(i!=null&&i.doc)){const r=dS(i.doc,{});r.anchors=new Set;for(const o of i.anchors.keys())r.anchors.add(o.anchor);r.inFlow=!0,r.inStringifyKey=!0;const a=n.toString(r);if(!i.mapKeyWarned){let o=JSON.stringify(a);o.length>40&&(o=o.substring(0,36)+'..."'),pS(i.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),i.mapKeyWarned=!0}return a}return JSON.stringify(e)}function Bd(n,e,i){const r=ll(n,void 0,i),a=ll(e,void 0,i);return new Nt(r,a)}class Nt{constructor(e,i=null){Object.defineProperty(this,bn,{value:tS}),this.key=e,this.value=i}clone(e){let{key:i,value:r}=this;return Xe(i)&&(i=i.clone(e)),Xe(r)&&(r=r.clone(e)),new Nt(i,r)}toJSON(e,i){const r=i!=null&&i.mapAsMap?new Map:{};return mS(i,r,this)}toString(e,i,r){return e!=null&&e.doc?oC(this,e,i,r):JSON.stringify(this)}}function yS(n,e,i){return(e.inFlow??n.flow?hC:fC)(n,e,i)}function fC({comment:n,items:e},i,{blockItemPrefix:r,flowChars:a,itemIndent:o,onChompKeep:u,onComment:f}){const{indent:d,options:{commentString:g}}=i,m=Object.assign({},i,{indent:o,type:null});let y=!1;const S=[];for(let E=0;E<e.length;++E){const x=e[E];let _=null;if(Xe(x))!y&&x.spaceBefore&&S.push(""),pc(i,S,x.commentBefore,y),x.comment&&(_=x.comment);else if(Ve(x)){const C=Xe(x.key)?x.key:null;C&&(!y&&C.spaceBefore&&S.push(""),pc(i,S,C.commentBefore,y))}y=!1;let A=Nr(x,m,()=>_=null,()=>y=!0);_&&(A+=us(A,o,g(_))),y&&_&&(y=!1),S.push(r+A)}let w;if(S.length===0)w=a.start+a.end;else{w=S[0];for(let E=1;E<S.length;++E){const x=S[E];w+=x?`
${d}${x}`:`
`}}return n?(w+=`
`+si(g(n),d),f&&f()):y&&u&&u(),w}function hC({items:n},e,{flowChars:i,itemIndent:r}){const{indent:a,indentStep:o,flowCollectionPadding:u,options:{commentString:f}}=e;r+=o;const d=Object.assign({},e,{indent:r,inFlow:!0,type:null});let g=!1,m=0;const y=[];for(let E=0;E<n.length;++E){const x=n[E];let _=null;if(Xe(x))x.spaceBefore&&y.push(""),pc(e,y,x.commentBefore,!1),x.comment&&(_=x.comment);else if(Ve(x)){const C=Xe(x.key)?x.key:null;C&&(C.spaceBefore&&y.push(""),pc(e,y,C.commentBefore,!1),C.comment&&(g=!0));const H=Xe(x.value)?x.value:null;H?(H.comment&&(_=H.comment),H.commentBefore&&(g=!0)):x.value==null&&(C!=null&&C.comment)&&(_=C.comment)}_&&(g=!0);let A=Nr(x,d,()=>_=null);g||(g=y.length>m||A.includes(`
`)),E<n.length-1?A+=",":e.options.trailingComma&&(e.options.lineWidth>0&&(g||(g=y.reduce((C,H)=>C+H.length+2,2)+(A.length+2)>e.options.lineWidth)),g&&(A+=",")),_&&(A+=us(A,r,f(_))),y.push(A),m=y.length}const{start:S,end:w}=i;if(y.length===0)return S+w;if(!g){const E=y.reduce((x,_)=>x+_.length+2,2);g=e.options.lineWidth>0&&E>e.options.lineWidth}if(g){let E=S;for(const x of y)E+=x?`
${o}${a}${x}`:`
`;return`${E}
${a}${w}`}else return`${S}${u}${y.join(" ")}${u}${w}`}function pc({indent:n,options:{commentString:e}},i,r,a){if(r&&a&&(r=r.replace(/^\n+/,"")),r){const o=si(e(r),n);i.push(o.trimStart())}}function fs(n,e){const i=ze(e)?e.value:e;for(const r of n)if(Ve(r)&&(r.key===e||r.key===i||ze(r.key)&&r.key.value===i))return r}class nn extends fS{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(Di,e),this.items=[]}static from(e,i,r){const{keepUndefined:a,replacer:o}=r,u=new this(e),f=(d,g)=>{if(typeof o=="function")g=o.call(i,d,g);else if(Array.isArray(o)&&!o.includes(d))return;(g!==void 0||a)&&u.items.push(Bd(d,g,r))};if(i instanceof Map)for(const[d,g]of i)f(d,g);else if(i&&typeof i=="object")for(const d of Object.keys(i))f(d,i[d]);return typeof e.sortMapEntries=="function"&&u.items.sort(e.sortMapEntries),u}add(e,i){var u;let r;Ve(e)?r=e:!e||typeof e!="object"||!("key"in e)?r=new Nt(e,e==null?void 0:e.value):r=new Nt(e.key,e.value);const a=fs(this.items,r.key),o=(u=this.schema)==null?void 0:u.sortMapEntries;if(a){if(!i)throw new Error(`Key ${r.key} already set`);ze(a.value)&&uS(r.value)?a.value.value=r.value:a.value=r.value}else if(o){const f=this.items.findIndex(d=>o(r,d)<0);f===-1?this.items.push(r):this.items.splice(f,0,r)}else this.items.push(r)}delete(e){const i=fs(this.items,e);return i?this.items.splice(this.items.indexOf(i),1).length>0:!1}get(e,i){const r=fs(this.items,e),a=r==null?void 0:r.value;return(!i&&ze(a)?a.value:a)??void 0}has(e){return!!fs(this.items,e)}set(e,i){this.add(new Nt(e,i),!0)}toJSON(e,i,r){const a=r?new r:i!=null&&i.mapAsMap?new Map:{};i!=null&&i.onCreate&&i.onCreate(a);for(const o of this.items)mS(i,a,o);return a}toString(e,i,r){if(!e)return JSON.stringify(this);for(const a of this.items)if(!Ve(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),yS(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:r,onComment:i})}}const Ur={collection:"map",default:!0,nodeClass:nn,tag:"tag:yaml.org,2002:map",resolve(n,e){return Dr(n)||e("Expected a mapping for this tag"),n},createNode:(n,e,i)=>nn.from(n,e,i)};class zi extends fS{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(Rr,e),this.items=[]}add(e){this.items.push(e)}delete(e){const i=Io(e);return typeof i!="number"?!1:this.items.splice(i,1).length>0}get(e,i){const r=Io(e);if(typeof r!="number")return;const a=this.items[r];return!i&&ze(a)?a.value:a}has(e){const i=Io(e);return typeof i=="number"&&i<this.items.length}set(e,i){const r=Io(e);if(typeof r!="number")throw new Error(`Expected a valid index, not ${e}.`);const a=this.items[r];ze(a)&&uS(i)?a.value=i:this.items[r]=i}toJSON(e,i){const r=[];i!=null&&i.onCreate&&i.onCreate(r);let a=0;for(const o of this.items)r.push(yn(o,String(a++),i));return r}toString(e,i,r){return e?yS(this,e,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(e.indent||"")+"  ",onChompKeep:r,onComment:i}):JSON.stringify(this)}static from(e,i,r){const{replacer:a}=r,o=new this(e);if(i&&Symbol.iterator in Object(i)){let u=0;for(let f of i){if(typeof a=="function"){const d=i instanceof Set?f:String(u++);f=a.call(i,d,f)}o.items.push(ll(f,void 0,r))}}return o}}function Io(n){let e=ze(n)?n.value:n;return e&&typeof e=="string"&&(e=Number(e)),typeof e=="number"&&Number.isInteger(e)&&e>=0?e:null}const Hr={collection:"seq",default:!0,nodeClass:zi,tag:"tag:yaml.org,2002:seq",resolve(n,e){return zr(n)||e("Expected a sequence for this tag"),n},createNode:(n,e,i)=>zi.from(n,e,i)},Oc={identify:n=>typeof n=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:n=>n,stringify(n,e,i,r){return e=Object.assign({actualString:!0},e),pl(n,e,i,r)}},jc={identify:n=>n==null,createNode:()=>new de(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new de(null),stringify:({source:n},e)=>typeof n=="string"&&jc.test.test(n)?n:e.options.nullStr},qd={identify:n=>typeof n=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:n=>new de(n[0]==="t"||n[0]==="T"),stringify({source:n,value:e},i){if(n&&qd.test.test(n)){const r=n[0]==="t"||n[0]==="T";if(e===r)return n}return e?i.options.trueStr:i.options.falseStr}};function En({format:n,minFractionDigits:e,tag:i,value:r}){if(typeof r=="bigint")return String(r);const a=typeof r=="number"?r:Number(r);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let o=Object.is(r,-0)?"-0":JSON.stringify(r);if(!n&&e&&(!i||i==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let u=o.indexOf(".");u<0&&(u=o.length,o+=".");let f=e-(o.length-u-1);for(;f-- >0;)o+="0"}return o}const bS={identify:n=>typeof n=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:n=>n.slice(-3).toLowerCase()==="nan"?NaN:n[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:En},vS={identify:n=>typeof n=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:n=>parseFloat(n),stringify(n){const e=Number(n.value);return isFinite(e)?e.toExponential():En(n)}},SS={identify:n=>typeof n=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(n){const e=new de(parseFloat(n)),i=n.indexOf(".");return i!==-1&&n[n.length-1]==="0"&&(e.minFractionDigits=n.length-i-1),e},stringify:En},Lc=n=>typeof n=="bigint"||Number.isInteger(n),$d=(n,e,i,{intAsBigInt:r})=>r?BigInt(n):parseInt(n.substring(e),i);function wS(n,e,i){const{value:r}=n;return Lc(r)&&r>=0?i+r.toString(e):En(n)}const xS={identify:n=>Lc(n)&&n>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(n,e,i)=>$d(n,2,8,i),stringify:n=>wS(n,8,"0o")},_S={identify:Lc,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(n,e,i)=>$d(n,0,10,i),stringify:En},ES={identify:n=>Lc(n)&&n>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(n,e,i)=>$d(n,2,16,i),stringify:n=>wS(n,16,"0x")},dC=[Ur,Hr,Oc,jc,qd,xS,_S,ES,bS,vS,SS];function Zb(n){return typeof n=="bigint"||Number.isInteger(n)}const Vo=({value:n})=>JSON.stringify(n),pC=[{identify:n=>typeof n=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:n=>n,stringify:Vo},{identify:n=>n==null,createNode:()=>new de(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:Vo},{identify:n=>typeof n=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:n=>n==="true",stringify:Vo},{identify:Zb,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(n,e,{intAsBigInt:i})=>i?BigInt(n):parseInt(n,10),stringify:({value:n})=>Zb(n)?n.toString():JSON.stringify(n)},{identify:n=>typeof n=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:n=>parseFloat(n),stringify:Vo}],gC={default:!0,tag:"",test:/^/,resolve(n,e){return e(`Unresolved plain scalar ${JSON.stringify(n)}`),n}},mC=[Ur,Hr].concat(pC,gC),Id={identify:n=>n instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(n,e){if(typeof atob=="function"){const i=atob(n.replace(/[\n\r]/g,"")),r=new Uint8Array(i.length);for(let a=0;a<i.length;++a)r[a]=i.charCodeAt(a);return r}else return e("This environment does not support reading binary tags; either Buffer or atob is required"),n},stringify({comment:n,type:e,value:i},r,a,o){if(!i)return"";const u=i;let f;if(typeof btoa=="function"){let d="";for(let g=0;g<u.length;++g)d+=String.fromCharCode(u[g]);f=btoa(d)}else throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(e??(e=de.BLOCK_LITERAL),e!==de.QUOTE_DOUBLE){const d=Math.max(r.options.lineWidth-r.indent.length,r.options.minContentWidth),g=Math.ceil(f.length/d),m=new Array(g);for(let y=0,S=0;y<g;++y,S+=d)m[y]=f.substr(S,d);f=m.join(e===de.BLOCK_LITERAL?`
`:" ")}return pl({comment:n,type:e,value:f},r,a,o)}};function TS(n,e){if(zr(n))for(let i=0;i<n.items.length;++i){let r=n.items[i];if(!Ve(r)){if(Dr(r)){r.items.length>1&&e("Each pair must have its own sequence indicator");const a=r.items[0]||new Nt(new de(null));if(r.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${r.commentBefore}
${a.key.commentBefore}`:r.commentBefore),r.comment){const o=a.value??a.key;o.comment=o.comment?`${r.comment}
${o.comment}`:r.comment}r=a}n.items[i]=Ve(r)?r:new Nt(r)}}else e("Expected a sequence for this tag");return n}function AS(n,e,i){const{replacer:r}=i,a=new zi(n);a.tag="tag:yaml.org,2002:pairs";let o=0;if(e&&Symbol.iterator in Object(e))for(let u of e){typeof r=="function"&&(u=r.call(e,String(o++),u));let f,d;if(Array.isArray(u))if(u.length===2)f=u[0],d=u[1];else throw new TypeError(`Expected [key, value] tuple: ${u}`);else if(u&&u instanceof Object){const g=Object.keys(u);if(g.length===1)f=g[0],d=u[f];else throw new TypeError(`Expected tuple with one key, not ${g.length} keys`)}else f=u;a.items.push(Bd(f,d,i))}return a}const Vd={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:TS,createNode:AS};class Ar extends zi{constructor(){super(),this.add=nn.prototype.add.bind(this),this.delete=nn.prototype.delete.bind(this),this.get=nn.prototype.get.bind(this),this.has=nn.prototype.has.bind(this),this.set=nn.prototype.set.bind(this),this.tag=Ar.tag}toJSON(e,i){if(!i)return super.toJSON(e);const r=new Map;i!=null&&i.onCreate&&i.onCreate(r);for(const a of this.items){let o,u;if(Ve(a)?(o=yn(a.key,"",i),u=yn(a.value,o,i)):o=yn(a,"",i),r.has(o))throw new Error("Ordered maps must not include duplicate keys");r.set(o,u)}return r}static from(e,i,r){const a=AS(e,i,r),o=new this;return o.items=a.items,o}}Ar.tag="tag:yaml.org,2002:omap";const Gd={collection:"seq",identify:n=>n instanceof Map,nodeClass:Ar,default:!1,tag:"tag:yaml.org,2002:omap",resolve(n,e){const i=TS(n,e),r=[];for(const{key:a}of i.items)ze(a)&&(r.includes(a.value)?e(`Ordered maps must not include duplicate keys: ${a.value}`):r.push(a.value));return Object.assign(new Ar,i)},createNode:(n,e,i)=>Ar.from(n,e,i)};function CS({value:n,source:e},i){return e&&(n?NS:kS).test.test(e)?e:n?i.options.trueStr:i.options.falseStr}const NS={identify:n=>n===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new de(!0),stringify:CS},kS={identify:n=>n===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new de(!1),stringify:CS},yC={identify:n=>typeof n=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:n=>n.slice(-3).toLowerCase()==="nan"?NaN:n[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:En},bC={identify:n=>typeof n=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:n=>parseFloat(n.replace(/_/g,"")),stringify(n){const e=Number(n.value);return isFinite(e)?e.toExponential():En(n)}},vC={identify:n=>typeof n=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(n){const e=new de(parseFloat(n.replace(/_/g,""))),i=n.indexOf(".");if(i!==-1){const r=n.substring(i+1).replace(/_/g,"");r[r.length-1]==="0"&&(e.minFractionDigits=r.length)}return e},stringify:En},gl=n=>typeof n=="bigint"||Number.isInteger(n);function Rc(n,e,i,{intAsBigInt:r}){const a=n[0];if((a==="-"||a==="+")&&(e+=1),n=n.substring(e).replace(/_/g,""),r){switch(i){case 2:n=`0b${n}`;break;case 8:n=`0o${n}`;break;case 16:n=`0x${n}`;break}const u=BigInt(n);return a==="-"?BigInt(-1)*u:u}const o=parseInt(n,i);return a==="-"?-1*o:o}function Kd(n,e,i){const{value:r}=n;if(gl(r)){const a=r.toString(e);return r<0?"-"+i+a.substr(1):i+a}return En(n)}const SC={identify:gl,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(n,e,i)=>Rc(n,2,2,i),stringify:n=>Kd(n,2,"0b")},wC={identify:gl,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(n,e,i)=>Rc(n,1,8,i),stringify:n=>Kd(n,8,"0")},xC={identify:gl,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(n,e,i)=>Rc(n,0,10,i),stringify:En},_C={identify:gl,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(n,e,i)=>Rc(n,2,16,i),stringify:n=>Kd(n,16,"0x")};class Cr extends nn{constructor(e){super(e),this.tag=Cr.tag}add(e){let i;Ve(e)?i=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?i=new Nt(e.key,null):i=new Nt(e,null),fs(this.items,i.key)||this.items.push(i)}get(e,i){const r=fs(this.items,e);return!i&&Ve(r)?ze(r.key)?r.key.value:r.key:r}set(e,i){if(typeof i!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof i}`);const r=fs(this.items,e);r&&!i?this.items.splice(this.items.indexOf(r),1):!r&&i&&this.items.push(new Nt(e))}toJSON(e,i){return super.toJSON(e,i,Set)}toString(e,i,r){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),i,r);throw new Error("Set items must all have null values")}static from(e,i,r){const{replacer:a}=r,o=new this(e);if(i&&Symbol.iterator in Object(i))for(let u of i)typeof a=="function"&&(u=a.call(i,u,u)),o.items.push(Bd(u,null,r));return o}}Cr.tag="tag:yaml.org,2002:set";const Xd={collection:"map",identify:n=>n instanceof Set,nodeClass:Cr,default:!1,tag:"tag:yaml.org,2002:set",createNode:(n,e,i)=>Cr.from(n,e,i),resolve(n,e){if(Dr(n)){if(n.hasAllNullValues(!0))return Object.assign(new Cr,n);e("Set items must all have null values")}else e("Expected a mapping for this tag");return n}};function Yd(n,e){const i=n[0],r=i==="-"||i==="+"?n.substring(1):n,a=u=>e?BigInt(u):Number(u),o=r.replace(/_/g,"").split(":").reduce((u,f)=>u*a(60)+a(f),a(0));return i==="-"?a(-1)*o:o}function MS(n){let{value:e}=n,i=u=>u;if(typeof e=="bigint")i=u=>BigInt(u);else if(isNaN(e)||!isFinite(e))return En(n);let r="";e<0&&(r="-",e*=i(-1));const a=i(60),o=[e%a];return e<60?o.unshift(0):(e=(e-o[0])/a,o.unshift(e%a),e>=60&&(e=(e-o[0])/a,o.unshift(e))),r+o.map(u=>String(u).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}const OS={identify:n=>typeof n=="bigint"||Number.isInteger(n),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(n,e,{intAsBigInt:i})=>Yd(n,i),stringify:MS},jS={identify:n=>typeof n=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:n=>Yd(n,!1),stringify:MS},Dc={identify:n=>n instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(n){const e=n.match(Dc.test);if(!e)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,i,r,a,o,u,f]=e.map(Number),d=e[7]?Number((e[7]+"00").substr(1,3)):0;let g=Date.UTC(i,r-1,a,o||0,u||0,f||0,d);const m=e[8];if(m&&m!=="Z"){let y=Yd(m,!1);Math.abs(y)<30&&(y*=60),g-=6e4*y}return new Date(g)},stringify:({value:n})=>(n==null?void 0:n.toISOString().replace(/(T00:00:00)?\.000Z$/,""))??""},Wb=[Ur,Hr,Oc,jc,NS,kS,SC,wC,xC,_C,yC,bC,vC,Id,ri,Gd,Vd,Xd,OS,jS,Dc],e0=new Map([["core",dC],["failsafe",[Ur,Hr,Oc]],["json",mC],["yaml11",Wb],["yaml-1.1",Wb]]),t0={binary:Id,bool:qd,float:SS,floatExp:vS,floatNaN:bS,floatTime:jS,int:_S,intHex:ES,intOct:xS,intTime:OS,map:Ur,merge:ri,null:jc,omap:Gd,pairs:Vd,seq:Hr,set:Xd,timestamp:Dc},EC={"tag:yaml.org,2002:binary":Id,"tag:yaml.org,2002:merge":ri,"tag:yaml.org,2002:omap":Gd,"tag:yaml.org,2002:pairs":Vd,"tag:yaml.org,2002:set":Xd,"tag:yaml.org,2002:timestamp":Dc};function _h(n,e,i){const r=e0.get(e);if(r&&!n)return i&&!r.includes(ri)?r.concat(ri):r.slice();let a=r;if(!a)if(Array.isArray(n))a=[];else{const o=Array.from(e0.keys()).filter(u=>u!=="yaml11").map(u=>JSON.stringify(u)).join(", ");throw new Error(`Unknown schema "${e}"; use one of ${o} or define customTags array`)}if(Array.isArray(n))for(const o of n)a=a.concat(o);else typeof n=="function"&&(a=n(a.slice()));return i&&(a=a.concat(ri)),a.reduce((o,u)=>{const f=typeof u=="string"?t0[u]:u;if(!f){const d=JSON.stringify(u),g=Object.keys(t0).map(m=>JSON.stringify(m)).join(", ");throw new Error(`Unknown custom tag ${d}; use one of ${g}`)}return o.includes(f)||o.push(f),o},[])}const TC=(n,e)=>n.key<e.key?-1:n.key>e.key?1:0;class zc{constructor({compat:e,customTags:i,merge:r,resolveKnownTags:a,schema:o,sortMapEntries:u,toStringDefaults:f}){this.compat=Array.isArray(e)?_h(e,"compat"):e?_h(null,e):null,this.name=typeof o=="string"&&o||"core",this.knownTags=a?EC:{},this.tags=_h(i,this.name,r),this.toStringOptions=f??null,Object.defineProperty(this,Di,{value:Ur}),Object.defineProperty(this,jn,{value:Oc}),Object.defineProperty(this,Rr,{value:Hr}),this.sortMapEntries=typeof u=="function"?u:u===!0?TC:null}clone(){const e=Object.create(zc.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}}function AC(n,e){var d;const i=[];let r=e.directives===!0;if(e.directives!==!1&&n.directives){const g=n.directives.toString(n);g?(i.push(g),r=!0):n.directives.docStart&&(r=!0)}r&&i.push("---");const a=dS(n,e),{commentString:o}=a.options;if(n.commentBefore){i.length!==1&&i.unshift("");const g=o(n.commentBefore);i.unshift(si(g,""))}let u=!1,f=null;if(n.contents){if(Xe(n.contents)){if(n.contents.spaceBefore&&r&&i.push(""),n.contents.commentBefore){const y=o(n.contents.commentBefore);i.push(si(y,""))}a.forceBlockIndent=!!n.comment,f=n.contents.comment}const g=f?void 0:()=>u=!0;let m=Nr(n.contents,a,()=>f=null,g);f&&(m+=us(m,"",o(f))),(m[0]==="|"||m[0]===">")&&i[i.length-1]==="---"?i[i.length-1]=`--- ${m}`:i.push(m)}else i.push(Nr(n.contents,a));if((d=n.directives)!=null&&d.docEnd)if(n.comment){const g=o(n.comment);g.includes(`
`)?(i.push("..."),i.push(si(g,""))):i.push(`... ${g}`)}else i.push("...");else{let g=n.comment;g&&u&&(g=g.replace(/^\n+/,"")),g&&((!u||f)&&i[i.length-1]!==""&&i.push(""),i.push(si(o(g),"")))}return i.join(`
`)+`
`}class Br{constructor(e,i,r){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,bn,{value:Fh});let a=null;typeof i=="function"||Array.isArray(i)?a=i:r===void 0&&i&&(r=i,i=void 0);const o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},r);this.options=o;let{version:u}=o;r!=null&&r._directives?(this.directives=r._directives.atDocument(),this.directives.yaml.explicit&&(u=this.directives.yaml.version)):this.directives=new Ot({version:u}),this.setSchema(u,r),this.contents=e===void 0?null:this.createNode(e,a,r)}clone(){const e=Object.create(Br.prototype,{[bn]:{value:Fh}});return e.commentBefore=this.commentBefore,e.comment=this.comment,e.errors=this.errors.slice(),e.warnings=this.warnings.slice(),e.options=Object.assign({},this.options),this.directives&&(e.directives=this.directives.clone()),e.schema=this.schema.clone(),e.contents=Xe(this.contents)?this.contents.clone(e.schema):this.contents,this.range&&(e.range=this.range.slice()),e}add(e){hr(this.contents)&&this.contents.add(e)}addIn(e,i){hr(this.contents)&&this.contents.addIn(e,i)}createAlias(e,i){if(!e.anchor){const r=oS(this);e.anchor=!i||r.has(i)?cS(i||"a",r):i}return new Cc(e.anchor)}createNode(e,i,r){let a;if(typeof i=="function")e=i.call({"":e},"",e),a=i;else if(Array.isArray(i)){const _=C=>typeof C=="number"||C instanceof String||C instanceof Number,A=i.filter(_).map(String);A.length>0&&(i=i.concat(A)),a=i}else r===void 0&&i&&(r=i,i=void 0);const{aliasDuplicateObjects:o,anchorPrefix:u,flow:f,keepUndefined:d,onTagObj:g,tag:m}=r??{},{onAnchor:y,setAnchors:S,sourceObjects:w}=eC(this,u||"a"),E={aliasDuplicateObjects:o??!0,keepUndefined:d??!1,onAnchor:y,onTagObj:g,replacer:a,schema:this.schema,sourceObjects:w},x=ll(e,m,E);return f&&Ke(x)&&(x.flow=!0),S(),x}createPair(e,i,r={}){const a=this.createNode(e,null,r),o=this.createNode(i,null,r);return new Nt(a,o)}delete(e){return hr(this.contents)?this.contents.delete(e):!1}deleteIn(e){return Ya(e)?this.contents==null?!1:(this.contents=null,!0):hr(this.contents)?this.contents.deleteIn(e):!1}get(e,i){return Ke(this.contents)?this.contents.get(e,i):void 0}getIn(e,i){return Ya(e)?!i&&ze(this.contents)?this.contents.value:this.contents:Ke(this.contents)?this.contents.getIn(e,i):void 0}has(e){return Ke(this.contents)?this.contents.has(e):!1}hasIn(e){return Ya(e)?this.contents!==void 0:Ke(this.contents)?this.contents.hasIn(e):!1}set(e,i){this.contents==null?this.contents=dc(this.schema,[e],i):hr(this.contents)&&this.contents.set(e,i)}setIn(e,i){Ya(e)?this.contents=i:this.contents==null?this.contents=dc(this.schema,Array.from(e),i):hr(this.contents)&&this.contents.setIn(e,i)}setSchema(e,i={}){typeof e=="number"&&(e=String(e));let r;switch(e){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new Ot({version:"1.1"}),r={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=e:this.directives=new Ot({version:e}),r={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,r=null;break;default:{const a=JSON.stringify(e);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(i.schema instanceof Object)this.schema=i.schema;else if(r)this.schema=new zc(Object.assign(r,i));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:e,jsonArg:i,mapAsMap:r,maxAliasCount:a,onAnchor:o,reviver:u}={}){const f={anchors:new Map,doc:this,keep:!e,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},d=yn(this.contents,i??"",f);if(typeof o=="function")for(const{count:g,res:m}of f.anchors.values())o(m,g);return typeof u=="function"?xr(u,{"":d},"",d):d}toJSON(e,i){return this.toJS({json:!0,jsonArg:e,mapAsMap:!1,onAnchor:i})}toString(e={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in e&&(!Number.isInteger(e.indent)||Number(e.indent)<=0)){const i=JSON.stringify(e.indent);throw new Error(`"indent" option must be a positive integer, not ${i}`)}return AC(this,e)}}function hr(n){if(Ke(n))return!0;throw new Error("Expected a YAML collection as document contents")}class Fd extends Error{constructor(e,i,r,a){super(),this.name=e,this.code=r,this.message=a,this.pos=i}}class hs extends Fd{constructor(e,i,r){super("YAMLParseError",e,i,r)}}class LS extends Fd{constructor(e,i,r){super("YAMLWarning",e,i,r)}}const gc=(n,e)=>i=>{if(i.pos[0]===-1)return;i.linePos=i.pos.map(f=>e.linePos(f));const{line:r,col:a}=i.linePos[0];i.message+=` at line ${r}, column ${a}`;let o=a-1,u=n.substring(e.lineStarts[r-1],e.lineStarts[r]).replace(/[\n\r]+$/,"");if(o>=60&&u.length>80){const f=Math.min(o-39,u.length-79);u="…"+u.substring(f),o-=f-1}if(u.length>80&&(u=u.substring(0,79)+"…"),r>1&&/^ *$/.test(u.substring(0,o))){let f=n.substring(e.lineStarts[r-2],e.lineStarts[r-1]);f.length>80&&(f=f.substring(0,79)+`…
`),u=f+u}if(/[^ ]/.test(u)){let f=1;const d=i.linePos[1];(d==null?void 0:d.line)===r&&d.col>a&&(f=Math.max(1,Math.min(d.col-a,80-o)));const g=" ".repeat(o)+"^".repeat(f);i.message+=`:
${u}
${g}
`}};function kr(n,{flow:e,indicator:i,next:r,offset:a,onError:o,parentIndent:u,startOnNewline:f}){let d=!1,g=f,m=f,y="",S="",w=!1,E=!1,x=null,_=null,A=null,C=null,H=null,V=null,K=null;for(const I of n)switch(E&&(I.type!=="space"&&I.type!=="newline"&&I.type!=="comma"&&o(I.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),E=!1),x&&(g&&I.type!=="comment"&&I.type!=="newline"&&o(x,"TAB_AS_INDENT","Tabs are not allowed as indentation"),x=null),I.type){case"space":!e&&(i!=="doc-start"||(r==null?void 0:r.type)!=="flow-collection")&&I.source.includes("    ")&&(x=I),m=!0;break;case"comment":{m||o(I,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const O=I.source.substring(1)||" ";y?y+=S+O:y=O,S="",g=!1;break}case"newline":g?y?y+=I.source:(!V||i!=="seq-item-ind")&&(d=!0):S+=I.source,g=!0,w=!0,(_||A)&&(C=I),m=!0;break;case"anchor":_&&o(I,"MULTIPLE_ANCHORS","A node can have at most one anchor"),I.source.endsWith(":")&&o(I.offset+I.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),_=I,K??(K=I.offset),g=!1,m=!1,E=!0;break;case"tag":{A&&o(I,"MULTIPLE_TAGS","A node can have at most one tag"),A=I,K??(K=I.offset),g=!1,m=!1,E=!0;break}case i:(_||A)&&o(I,"BAD_PROP_ORDER",`Anchors and tags must be after the ${I.source} indicator`),V&&o(I,"UNEXPECTED_TOKEN",`Unexpected ${I.source} in ${e??"collection"}`),V=I,g=i==="seq-item-ind"||i==="explicit-key-ind",m=!1;break;case"comma":if(e){H&&o(I,"UNEXPECTED_TOKEN",`Unexpected , in ${e}`),H=I,g=!1,m=!1;break}default:o(I,"UNEXPECTED_TOKEN",`Unexpected ${I.type} token`),g=!1,m=!1}const Q=n[n.length-1],j=Q?Q.offset+Q.source.length:a;return E&&r&&r.type!=="space"&&r.type!=="newline"&&r.type!=="comma"&&(r.type!=="scalar"||r.source!=="")&&o(r.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),x&&(g&&x.indent<=u||(r==null?void 0:r.type)==="block-map"||(r==null?void 0:r.type)==="block-seq")&&o(x,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:H,found:V,spaceBefore:d,comment:y,hasNewline:w,anchor:_,tag:A,newlineAfterProp:C,end:j,start:K??j}}function ol(n){if(!n)return null;switch(n.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(n.source.includes(`
`))return!0;if(n.end){for(const e of n.end)if(e.type==="newline")return!0}return!1;case"flow-collection":for(const e of n.items){for(const i of e.start)if(i.type==="newline")return!0;if(e.sep){for(const i of e.sep)if(i.type==="newline")return!0}if(ol(e.key)||ol(e.value))return!0}return!1;default:return!0}}function Zh(n,e,i){if((e==null?void 0:e.type)==="flow-collection"){const r=e.end[0];r.indent===n&&(r.source==="]"||r.source==="}")&&ol(e)&&i(r,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function RS(n,e,i){const{uniqueKeys:r}=n.options;if(r===!1)return!1;const a=typeof r=="function"?r:(o,u)=>o===u||ze(o)&&ze(u)&&o.value===u.value;return e.some(o=>a(o.key,i))}const n0="All mapping items must start at the same column";function CC({composeNode:n,composeEmptyNode:e},i,r,a,o){var m;const u=(o==null?void 0:o.nodeClass)??nn,f=new u(i.schema);i.atRoot&&(i.atRoot=!1);let d=r.offset,g=null;for(const y of r.items){const{start:S,key:w,sep:E,value:x}=y,_=kr(S,{indicator:"explicit-key-ind",next:w??(E==null?void 0:E[0]),offset:d,onError:a,parentIndent:r.indent,startOnNewline:!0}),A=!_.found;if(A){if(w&&(w.type==="block-seq"?a(d,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in w&&w.indent!==r.indent&&a(d,"BAD_INDENT",n0)),!_.anchor&&!_.tag&&!E){g=_.end,_.comment&&(f.comment?f.comment+=`
`+_.comment:f.comment=_.comment);continue}(_.newlineAfterProp||ol(w))&&a(w??S[S.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else((m=_.found)==null?void 0:m.indent)!==r.indent&&a(d,"BAD_INDENT",n0);i.atKey=!0;const C=_.end,H=w?n(i,w,_,a):e(i,C,S,null,_,a);i.schema.compat&&Zh(r.indent,w,a),i.atKey=!1,RS(i,f.items,H)&&a(C,"DUPLICATE_KEY","Map keys must be unique");const V=kr(E??[],{indicator:"map-value-ind",next:x,offset:H.range[2],onError:a,parentIndent:r.indent,startOnNewline:!w||w.type==="block-scalar"});if(d=V.end,V.found){A&&((x==null?void 0:x.type)==="block-map"&&!V.hasNewline&&a(d,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),i.options.strict&&_.start<V.found.offset-1024&&a(H.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key"));const K=x?n(i,x,V,a):e(i,d,E,null,V,a);i.schema.compat&&Zh(r.indent,x,a),d=K.range[2];const Q=new Nt(H,K);i.options.keepSourceTokens&&(Q.srcToken=y),f.items.push(Q)}else{A&&a(H.range,"MISSING_CHAR","Implicit map keys need to be followed by map values"),V.comment&&(H.comment?H.comment+=`
`+V.comment:H.comment=V.comment);const K=new Nt(H);i.options.keepSourceTokens&&(K.srcToken=y),f.items.push(K)}}return g&&g<d&&a(g,"IMPOSSIBLE","Map comment with trailing content"),f.range=[r.offset,d,g??d],f}function NC({composeNode:n,composeEmptyNode:e},i,r,a,o){const u=(o==null?void 0:o.nodeClass)??zi,f=new u(i.schema);i.atRoot&&(i.atRoot=!1),i.atKey&&(i.atKey=!1);let d=r.offset,g=null;for(const{start:m,value:y}of r.items){const S=kr(m,{indicator:"seq-item-ind",next:y,offset:d,onError:a,parentIndent:r.indent,startOnNewline:!0});if(!S.found)if(S.anchor||S.tag||y)(y==null?void 0:y.type)==="block-seq"?a(S.end,"BAD_INDENT","All sequence items must start at the same column"):a(d,"MISSING_CHAR","Sequence item without - indicator");else{g=S.end,S.comment&&(f.comment=S.comment);continue}const w=y?n(i,y,S,a):e(i,S.end,m,null,S,a);i.schema.compat&&Zh(r.indent,y,a),d=w.range[2],f.items.push(w)}return f.range=[r.offset,d,g??d],f}function ml(n,e,i,r){let a="";if(n){let o=!1,u="";for(const f of n){const{source:d,type:g}=f;switch(g){case"space":o=!0;break;case"comment":{i&&!o&&r(f,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const m=d.substring(1)||" ";a?a+=u+m:a=m,u="";break}case"newline":a&&(u+=d),o=!0;break;default:r(f,"UNEXPECTED_TOKEN",`Unexpected ${g} at node end`)}e+=d.length}}return{comment:a,offset:e}}const Eh="Block collections are not allowed within flow collections",Th=n=>n&&(n.type==="block-map"||n.type==="block-seq");function kC({composeNode:n,composeEmptyNode:e},i,r,a,o){var _;const u=r.start.source==="{",f=u?"flow map":"flow sequence",d=(o==null?void 0:o.nodeClass)??(u?nn:zi),g=new d(i.schema);g.flow=!0;const m=i.atRoot;m&&(i.atRoot=!1),i.atKey&&(i.atKey=!1);let y=r.offset+r.start.source.length;for(let A=0;A<r.items.length;++A){const C=r.items[A],{start:H,key:V,sep:K,value:Q}=C,j=kr(H,{flow:f,indicator:"explicit-key-ind",next:V??(K==null?void 0:K[0]),offset:y,onError:a,parentIndent:r.indent,startOnNewline:!1});if(!j.found){if(!j.anchor&&!j.tag&&!K&&!Q){A===0&&j.comma?a(j.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${f}`):A<r.items.length-1&&a(j.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${f}`),j.comment&&(g.comment?g.comment+=`
`+j.comment:g.comment=j.comment),y=j.end;continue}!u&&i.options.strict&&ol(V)&&a(V,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(A===0)j.comma&&a(j.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${f}`);else if(j.comma||a(j.start,"MISSING_CHAR",`Missing , between ${f} items`),j.comment){let I="";e:for(const O of H)switch(O.type){case"comma":case"space":break;case"comment":I=O.source.substring(1);break e;default:break e}if(I){let O=g.items[g.items.length-1];Ve(O)&&(O=O.value??O.key),O.comment?O.comment+=`
`+I:O.comment=I,j.comment=j.comment.substring(I.length+1)}}if(!u&&!K&&!j.found){const I=Q?n(i,Q,j,a):e(i,j.end,K,null,j,a);g.items.push(I),y=I.range[2],Th(Q)&&a(I.range,"BLOCK_IN_FLOW",Eh)}else{i.atKey=!0;const I=j.end,O=V?n(i,V,j,a):e(i,I,H,null,j,a);Th(V)&&a(O.range,"BLOCK_IN_FLOW",Eh),i.atKey=!1;const P=kr(K??[],{flow:f,indicator:"map-value-ind",next:Q,offset:O.range[2],onError:a,parentIndent:r.indent,startOnNewline:!1});if(P.found){if(!u&&!j.found&&i.options.strict){if(K)for(const ee of K){if(ee===P.found)break;if(ee.type==="newline"){a(ee,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}j.start<P.found.offset-1024&&a(P.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else Q&&("source"in Q&&((_=Q.source)==null?void 0:_[0])===":"?a(Q,"MISSING_CHAR",`Missing space after : in ${f}`):a(P.start,"MISSING_CHAR",`Missing , or : between ${f} items`));const J=Q?n(i,Q,P,a):P.found?e(i,P.end,K,null,P,a):null;J?Th(Q)&&a(J.range,"BLOCK_IN_FLOW",Eh):P.comment&&(O.comment?O.comment+=`
`+P.comment:O.comment=P.comment);const $=new Nt(O,J);if(i.options.keepSourceTokens&&($.srcToken=C),u){const ee=g;RS(i,ee.items,O)&&a(I,"DUPLICATE_KEY","Map keys must be unique"),ee.items.push($)}else{const ee=new nn(i.schema);ee.flow=!0,ee.items.push($);const ce=(J??O).range;ee.range=[O.range[0],ce[1],ce[2]],g.items.push(ee)}y=J?J.range[2]:P.end}}const S=u?"}":"]",[w,...E]=r.end;let x=y;if((w==null?void 0:w.source)===S)x=w.offset+w.source.length;else{const A=f[0].toUpperCase()+f.substring(1),C=m?`${A} must end with a ${S}`:`${A} in block collection must be sufficiently indented and end with a ${S}`;a(y,m?"MISSING_CHAR":"BAD_INDENT",C),w&&w.source.length!==1&&E.unshift(w)}if(E.length>0){const A=ml(E,x,i.options.strict,a);A.comment&&(g.comment?g.comment+=`
`+A.comment:g.comment=A.comment),g.range=[r.offset,x,A.offset]}else g.range=[r.offset,x,x];return g}function Ah(n,e,i,r,a,o){const u=i.type==="block-map"?CC(n,e,i,r,o):i.type==="block-seq"?NC(n,e,i,r,o):kC(n,e,i,r,o),f=u.constructor;return a==="!"||a===f.tagName?(u.tag=f.tagName,u):(a&&(u.tag=a),u)}function MC(n,e,i,r,a){var S;const o=r.tag,u=o?e.directives.tagName(o.source,w=>a(o,"TAG_RESOLVE_FAILED",w)):null;if(i.type==="block-seq"){const{anchor:w,newlineAfterProp:E}=r,x=w&&o?w.offset>o.offset?w:o:w??o;x&&(!E||E.offset<x.offset)&&a(x,"MISSING_CHAR","Missing newline after block sequence props")}const f=i.type==="block-map"?"map":i.type==="block-seq"?"seq":i.start.source==="{"?"map":"seq";if(!o||!u||u==="!"||u===nn.tagName&&f==="map"||u===zi.tagName&&f==="seq")return Ah(n,e,i,a,u);let d=e.schema.tags.find(w=>w.tag===u&&w.collection===f);if(!d){const w=e.schema.knownTags[u];if((w==null?void 0:w.collection)===f)e.schema.tags.push(Object.assign({},w,{default:!1})),d=w;else return w?a(o,"BAD_COLLECTION_TYPE",`${w.tag} used for ${f} collection, but expects ${w.collection??"scalar"}`,!0):a(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${u}`,!0),Ah(n,e,i,a,u)}const g=Ah(n,e,i,a,u,d),m=((S=d.resolve)==null?void 0:S.call(d,g,w=>a(o,"TAG_RESOLVE_FAILED",w),e.options))??g,y=Xe(m)?m:new de(m);return y.range=g.range,y.tag=u,d!=null&&d.format&&(y.format=d.format),y}function DS(n,e,i){const r=e.offset,a=OC(e,n.options.strict,i);if(!a)return{value:"",type:null,comment:"",range:[r,r,r]};const o=a.mode===">"?de.BLOCK_FOLDED:de.BLOCK_LITERAL,u=e.source?jC(e.source):[];let f=u.length;for(let x=u.length-1;x>=0;--x){const _=u[x][1];if(_===""||_==="\r")f=x;else break}if(f===0){const x=a.chomp==="+"&&u.length>0?`
`.repeat(Math.max(1,u.length-1)):"";let _=r+a.length;return e.source&&(_+=e.source.length),{value:x,type:o,comment:a.comment,range:[r,_,_]}}let d=e.indent+a.indent,g=e.offset+a.length,m=0;for(let x=0;x<f;++x){const[_,A]=u[x];if(A===""||A==="\r")a.indent===0&&_.length>d&&(d=_.length);else{_.length<d&&i(g+_.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),a.indent===0&&(d=_.length),m=x,d===0&&!n.atRoot&&i(g,"BAD_INDENT","Block scalar values in collections must be indented");break}g+=_.length+A.length+1}for(let x=u.length-1;x>=f;--x)u[x][0].length>d&&(f=x+1);let y="",S="",w=!1;for(let x=0;x<m;++x)y+=u[x][0].slice(d)+`
`;for(let x=m;x<f;++x){let[_,A]=u[x];g+=_.length+A.length+1;const C=A[A.length-1]==="\r";if(C&&(A=A.slice(0,-1)),A&&_.length<d){const V=`Block scalar lines must not be less indented than their ${a.indent?"explicit indentation indicator":"first line"}`;i(g-A.length-(C?2:1),"BAD_INDENT",V),_=""}o===de.BLOCK_LITERAL?(y+=S+_.slice(d)+A,S=`
`):_.length>d||A[0]==="    "?(S===" "?S=`
`:!w&&S===`
`&&(S=`
`),y+=S+_.slice(d)+A,S=`
`,w=!0):A===""?S===`
`?y+=`
`:S=`
`:(y+=S+A,S=" ",w=!1)}switch(a.chomp){case"-":break;case"+":for(let x=f;x<u.length;++x)y+=`
`+u[x][0].slice(d);y[y.length-1]!==`
`&&(y+=`
`);break;default:y+=`
`}const E=r+a.length+e.source.length;return{value:y,type:o,comment:a.comment,range:[r,E,E]}}function OC({offset:n,props:e},i,r){if(e[0].type!=="block-scalar-header")return r(e[0],"IMPOSSIBLE","Block scalar header not found"),null;const{source:a}=e[0],o=a[0];let u=0,f="",d=-1;for(let S=1;S<a.length;++S){const w=a[S];if(!f&&(w==="-"||w==="+"))f=w;else{const E=Number(w);!u&&E?u=E:d===-1&&(d=n+S)}}d!==-1&&r(d,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${a}`);let g=!1,m="",y=a.length;for(let S=1;S<e.length;++S){const w=e[S];switch(w.type){case"space":g=!0;case"newline":y+=w.source.length;break;case"comment":i&&!g&&r(w,"MISSING_CHAR","Comments must be separated from other tokens by white space characters"),y+=w.source.length,m=w.source.substring(1);break;case"error":r(w,"UNEXPECTED_TOKEN",w.message),y+=w.source.length;break;default:{const E=`Unexpected token in block scalar header: ${w.type}`;r(w,"UNEXPECTED_TOKEN",E);const x=w.source;x&&typeof x=="string"&&(y+=x.length)}}}return{mode:o,indent:u,chomp:f,comment:m,length:y}}function jC(n){const e=n.split(/\n( *)/),i=e[0],r=i.match(/^( *)/),o=[r!=null&&r[1]?[r[1],i.slice(r[1].length)]:["",i]];for(let u=1;u<e.length;u+=2)o.push([e[u],e[u+1]]);return o}function zS(n,e,i){const{offset:r,type:a,source:o,end:u}=n;let f,d;const g=(S,w,E)=>i(r+S,w,E);switch(a){case"scalar":f=de.PLAIN,d=LC(o,g);break;case"single-quoted-scalar":f=de.QUOTE_SINGLE,d=RC(o,g);break;case"double-quoted-scalar":f=de.QUOTE_DOUBLE,d=DC(o,g);break;default:return i(n,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[r,r+o.length,r+o.length]}}const m=r+o.length,y=ml(u,m,e,i);return{value:d,type:f,comment:y.comment,range:[r,m,y.offset]}}function LC(n,e){let i="";switch(n[0]){case"    ":i="a tab character";break;case",":i="flow indicator character ,";break;case"%":i="directive indicator character %";break;case"|":case">":{i=`block scalar indicator ${n[0]}`;break}case"@":case"`":{i=`reserved character ${n[0]}`;break}}return i&&e(0,"BAD_SCALAR_START",`Plain value cannot start with ${i}`),US(n)}function RC(n,e){return(n[n.length-1]!=="'"||n.length===1)&&e(n.length,"MISSING_CHAR","Missing closing 'quote"),US(n.slice(1,-1)).replace(/''/g,"'")}function US(n){let e,i;try{e=new RegExp(`(.*?)(?<![     ])[     ]*\r?
`,"sy"),i=new RegExp(`[     ]*(.*?)(?:(?<![     ])[     ]*)?\r?
`,"sy")}catch{e=/(.*?)[ \t]*\r?\n/sy,i=/[ \t]*(.*?)[ \t]*\r?\n/sy}let r=e.exec(n);if(!r)return n;let a=r[1],o=" ",u=e.lastIndex;for(i.lastIndex=u;r=i.exec(n);)r[1]===""?o===`
`?a+=o:o=`
`:(a+=o+r[1],o=" "),u=i.lastIndex;const f=/[ \t]*(.*)/sy;return f.lastIndex=u,r=f.exec(n),a+o+((r==null?void 0:r[1])??"")}function DC(n,e){let i="";for(let r=1;r<n.length-1;++r){const a=n[r];if(!(a==="\r"&&n[r+1]===`
`))if(a===`
`){const{fold:o,offset:u}=zC(n,r);i+=o,r=u}else if(a==="\\"){let o=n[++r];const u=UC[o];if(u)i+=u;else if(o===`
`)for(o=n[r+1];o===" "||o==="    ";)o=n[++r+1];else if(o==="\r"&&n[r+1]===`
`)for(o=n[++r+1];o===" "||o==="    ";)o=n[++r+1];else if(o==="x"||o==="u"||o==="U"){const f={x:2,u:4,U:8}[o];i+=HC(n,r+1,f,e),r+=f}else{const f=n.substr(r-1,2);e(r-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${f}`),i+=f}}else if(a===" "||a==="    "){const o=r;let u=n[r+1];for(;u===" "||u==="    ";)u=n[++r+1];u!==`
`&&!(u==="\r"&&n[r+2]===`
`)&&(i+=r>o?n.slice(o,r+1):a)}else i+=a}return(n[n.length-1]!=='"'||n.length===1)&&e(n.length,"MISSING_CHAR",'Missing closing "quote'),i}function zC(n,e){let i="",r=n[e+1];for(;(r===" "||r==="    "||r===`
`||r==="\r")&&!(r==="\r"&&n[e+2]!==`
`);)r===`
`&&(i+=`
`),e+=1,r=n[e+1];return i||(i=" "),{fold:i,offset:e}}const UC={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
`,r:"\r",t:"    ",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","    ":"    "};function HC(n,e,i,r){const a=n.substr(e,i),u=a.length===i&&/^[0-9a-fA-F]+$/.test(a)?parseInt(a,16):NaN;if(isNaN(u)){const f=n.substr(e-2,i+2);return r(e-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${f}`),f}return String.fromCodePoint(u)}function HS(n,e,i,r){const{value:a,type:o,comment:u,range:f}=e.type==="block-scalar"?DS(n,e,r):zS(e,n.options.strict,r),d=i?n.directives.tagName(i.source,y=>r(i,"TAG_RESOLVE_FAILED",y)):null;let g;n.options.stringKeys&&n.atKey?g=n.schema[jn]:d?g=BC(n.schema,a,d,i,r):e.type==="scalar"?g=qC(n,a,e,r):g=n.schema[jn];let m;try{const y=g.resolve(a,S=>r(i??e,"TAG_RESOLVE_FAILED",S),n.options);m=ze(y)?y:new de(y)}catch(y){const S=y instanceof Error?y.message:String(y);r(i??e,"TAG_RESOLVE_FAILED",S),m=new de(a)}return m.range=f,m.source=a,o&&(m.type=o),d&&(m.tag=d),g.format&&(m.format=g.format),u&&(m.comment=u),m}function BC(n,e,i,r,a){var f;if(i==="!")return n[jn];const o=[];for(const d of n.tags)if(!d.collection&&d.tag===i)if(d.default&&d.test)o.push(d);else return d;for(const d of o)if((f=d.test)!=null&&f.test(e))return d;const u=n.knownTags[i];return u&&!u.collection?(n.tags.push(Object.assign({},u,{default:!1,test:void 0})),u):(a(r,"TAG_RESOLVE_FAILED",`Unresolved tag: ${i}`,i!=="tag:yaml.org,2002:str"),n[jn])}function qC({atKey:n,directives:e,schema:i},r,a,o){const u=i.tags.find(f=>{var d;return(f.default===!0||n&&f.default==="key")&&((d=f.test)==null?void 0:d.test(r))})||i[jn];if(i.compat){const f=i.compat.find(d=>{var g;return d.default&&((g=d.test)==null?void 0:g.test(r))})??i[jn];if(u.tag!==f.tag){const d=e.tagString(u.tag),g=e.tagString(f.tag),m=`Value may be parsed as either ${d} or ${g}`;o(a,"TAG_RESOLVE_FAILED",m,!0)}}return u}function $C(n,e,i){if(e){i??(i=e.length);for(let r=i-1;r>=0;--r){let a=e[r];switch(a.type){case"space":case"comment":case"newline":n-=a.source.length;continue}for(a=e[++r];(a==null?void 0:a.type)==="space";)n+=a.source.length,a=e[++r];break}}return n}const IC={composeNode:BS,composeEmptyNode:Qd};function BS(n,e,i,r){const a=n.atKey,{spaceBefore:o,comment:u,anchor:f,tag:d}=i;let g,m=!0;switch(e.type){case"alias":g=VC(n,e,r),(f||d)&&r(e,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":g=HS(n,e,d,r),f&&(g.anchor=f.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":try{g=MC(IC,n,e,i,r),f&&(g.anchor=f.source.substring(1))}catch(y){const S=y instanceof Error?y.message:String(y);r(e,"RESOURCE_EXHAUSTION",S)}break;default:{const y=e.type==="error"?e.message:`Unsupported token (type: ${e.type})`;r(e,"UNEXPECTED_TOKEN",y),m=!1}}return g??(g=Qd(n,e.offset,void 0,null,i,r)),f&&g.anchor===""&&r(f,"BAD_ALIAS","Anchor cannot be an empty string"),a&&n.options.stringKeys&&(!ze(g)||typeof g.value!="string"||g.tag&&g.tag!=="tag:yaml.org,2002:str")&&r(d??e,"NON_STRING_KEY","With stringKeys, all keys must be strings"),o&&(g.spaceBefore=!0),u&&(e.type==="scalar"&&e.source===""?g.comment=u:g.commentBefore=u),n.options.keepSourceTokens&&m&&(g.srcToken=e),g}function Qd(n,e,i,r,{spaceBefore:a,comment:o,anchor:u,tag:f,end:d},g){const m={type:"scalar",offset:$C(e,i,r),indent:-1,source:""},y=HS(n,m,f,g);return u&&(y.anchor=u.source.substring(1),y.anchor===""&&g(u,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(y.spaceBefore=!0),o&&(y.comment=o,y.range[2]=d),y}function VC({options:n},{offset:e,source:i,end:r},a){const o=new Cc(i.substring(1));o.source===""&&a(e,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&a(e+i.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);const u=e+i.length,f=ml(r,u,n.strict,a);return o.range=[e,u,f.offset],f.comment&&(o.comment=f.comment),o}function GC(n,e,{offset:i,start:r,value:a,end:o},u){const f=Object.assign({_directives:e},n),d=new Br(void 0,f),g={atKey:!1,atRoot:!0,directives:d.directives,options:d.options,schema:d.schema},m=kr(r,{indicator:"doc-start",next:a??(o==null?void 0:o[0]),offset:i,onError:u,parentIndent:0,startOnNewline:!0});m.found&&(d.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!m.hasNewline&&u(m.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),d.contents=a?BS(g,a,m,u):Qd(g,m.end,r,null,m,u);const y=d.contents.range[2],S=ml(o,y,!1,u);return S.comment&&(d.comment=S.comment),d.range=[i,y,S.offset],d}function qa(n){if(typeof n=="number")return[n,n+1];if(Array.isArray(n))return n.length===2?n:[n[0],n[1]];const{offset:e,source:i}=n;return[e,e+(typeof i=="string"?i.length:1)]}function i0(n){var a;let e="",i=!1,r=!1;for(let o=0;o<n.length;++o){const u=n[o];switch(u[0]){case"#":e+=(e===""?"":r?`
`:`
`)+(u.substring(1)||" "),i=!0,r=!1;break;case"%":((a=n[o+1])==null?void 0:a[0])!=="#"&&(o+=1),i=!1;break;default:i||(r=!0),i=!1}}return{comment:e,afterEmptyLine:r}}class Pd{constructor(e={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(i,r,a,o)=>{const u=qa(i);o?this.warnings.push(new LS(u,r,a)):this.errors.push(new hs(u,r,a))},this.directives=new Ot({version:e.version||"1.2"}),this.options=e}decorate(e,i){const{comment:r,afterEmptyLine:a}=i0(this.prelude);if(r){const o=e.contents;if(i)e.comment=e.comment?`${e.comment}
${r}`:r;else if(a||e.directives.docStart||!o)e.commentBefore=r;else if(Ke(o)&&!o.flow&&o.items.length>0){let u=o.items[0];Ve(u)&&(u=u.key);const f=u.commentBefore;u.commentBefore=f?`${r}
${f}`:r}else{const u=o.commentBefore;o.commentBefore=u?`${r}
${u}`:r}}i?(Array.prototype.push.apply(e.errors,this.errors),Array.prototype.push.apply(e.warnings,this.warnings)):(e.errors=this.errors,e.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:i0(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(e,i=!1,r=-1){for(const a of e)yield*this.next(a);yield*this.end(i,r)}*next(e){switch(e.type){case"directive":this.directives.add(e.source,(i,r,a)=>{const o=qa(e);o[0]+=i,this.onError(o,"BAD_DIRECTIVE",r,a)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{const i=GC(this.options,this.directives,e,this.onError);this.atDirectives&&!i.directives.docStart&&this.onError(e,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(i,!1),this.doc&&(yield this.doc),this.doc=i,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(e.source);break;case"error":{const i=e.source?`${e.message}: ${JSON.stringify(e.source)}`:e.message,r=new hs(qa(e),"UNEXPECTED_TOKEN",i);this.atDirectives||!this.doc?this.errors.push(r):this.doc.errors.push(r);break}case"doc-end":{if(!this.doc){const r="Unexpected doc-end without preceding document";this.errors.push(new hs(qa(e),"UNEXPECTED_TOKEN",r));break}this.doc.directives.docEnd=!0;const i=ml(e.end,e.offset+e.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),i.comment){const r=this.doc.comment;this.doc.comment=r?`${r}
${i.comment}`:i.comment}this.doc.range[2]=i.offset;break}default:this.errors.push(new hs(qa(e),"UNEXPECTED_TOKEN",`Unsupported token ${e.type}`))}}*end(e=!1,i=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(e){const r=Object.assign({_directives:this.directives},this.options),a=new Br(void 0,r);this.atDirectives&&this.onError(i,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,i,i],this.decorate(a,!1),yield a}}}function KC(n,e=!0,i){if(n){const r=(a,o,u)=>{const f=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(i)i(f,o,u);else throw new hs([f,f+1],o,u)};switch(n.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return zS(n,e,r);case"block-scalar":return DS({options:{strict:e}},n,r)}}return null}function XC(n,e){const{implicitKey:i=!1,indent:r,inFlow:a=!1,offset:o=-1,type:u="PLAIN"}=e,f=pl({type:u,value:n},{implicitKey:i,indent:r>0?" ".repeat(r):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),d=e.end??[{type:"newline",offset:-1,indent:r,source:`
`}];switch(f[0]){case"|":case">":{const g=f.indexOf(`
`),m=f.substring(0,g),y=f.substring(g+1)+`
`,S=[{type:"block-scalar-header",offset:o,indent:r,source:m}];return qS(S,d)||S.push({type:"newline",offset:-1,indent:r,source:`
`}),{type:"block-scalar",offset:o,indent:r,props:S,source:y}}case'"':return{type:"double-quoted-scalar",offset:o,indent:r,source:f,end:d};case"'":return{type:"single-quoted-scalar",offset:o,indent:r,source:f,end:d};default:return{type:"scalar",offset:o,indent:r,source:f,end:d}}}function YC(n,e,i={}){let{afterKey:r=!1,implicitKey:a=!1,inFlow:o=!1,type:u}=i,f="indent"in n?n.indent:null;if(r&&typeof f=="number"&&(f+=2),!u)switch(n.type){case"single-quoted-scalar":u="QUOTE_SINGLE";break;case"double-quoted-scalar":u="QUOTE_DOUBLE";break;case"block-scalar":{const g=n.props[0];if(g.type!=="block-scalar-header")throw new Error("Invalid block scalar header");u=g.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:u="PLAIN"}const d=pl({type:u,value:e},{implicitKey:a||f===null,indent:f!==null&&f>0?" ".repeat(f):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(d[0]){case"|":case">":FC(n,d);break;case'"':Ch(n,d,"double-quoted-scalar");break;case"'":Ch(n,d,"single-quoted-scalar");break;default:Ch(n,d,"scalar")}}function FC(n,e){const i=e.indexOf(`
`),r=e.substring(0,i),a=e.substring(i+1)+`
`;if(n.type==="block-scalar"){const o=n.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=r,n.source=a}else{const{offset:o}=n,u="indent"in n?n.indent:-1,f=[{type:"block-scalar-header",offset:o,indent:u,source:r}];qS(f,"end"in n?n.end:void 0)||f.push({type:"newline",offset:-1,indent:u,source:`
`});for(const d of Object.keys(n))d!=="type"&&d!=="offset"&&delete n[d];Object.assign(n,{type:"block-scalar",indent:u,props:f,source:a})}}function qS(n,e){if(e)for(const i of e)switch(i.type){case"space":case"comment":n.push(i);break;case"newline":return n.push(i),!0}return!1}function Ch(n,e,i){switch(n.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":n.type=i,n.source=e;break;case"block-scalar":{const r=n.props.slice(1);let a=e.length;n.props[0].type==="block-scalar-header"&&(a-=n.props[0].source.length);for(const o of r)o.offset+=a;delete n.props,Object.assign(n,{type:i,source:e,end:r});break}case"block-map":case"block-seq":{const a={type:"newline",offset:n.offset+e.length,indent:n.indent,source:`
`};delete n.items,Object.assign(n,{type:i,source:e,end:[a]});break}default:{const r="indent"in n?n.indent:-1,a="end"in n&&Array.isArray(n.end)?n.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(const o of Object.keys(n))o!=="type"&&o!=="offset"&&delete n[o];Object.assign(n,{type:i,indent:r,source:e,end:a})}}}const QC=n=>"type"in n?mc(n):ic(n);function mc(n){switch(n.type){case"block-scalar":{let e="";for(const i of n.props)e+=mc(i);return e+n.source}case"block-map":case"block-seq":{let e="";for(const i of n.items)e+=ic(i);return e}case"flow-collection":{let e=n.start.source;for(const i of n.items)e+=ic(i);for(const i of n.end)e+=i.source;return e}case"document":{let e=ic(n);if(n.end)for(const i of n.end)e+=i.source;return e}default:{let e=n.source;if("end"in n&&n.end)for(const i of n.end)e+=i.source;return e}}}function ic({start:n,key:e,sep:i,value:r}){let a="";for(const o of n)a+=o.source;if(e&&(a+=mc(e)),i)for(const o of i)a+=o.source;return r&&(a+=mc(r)),a}const Wh=Symbol("break visit"),PC=Symbol("skip children"),$S=Symbol("remove item");function ps(n,e){"type"in n&&n.type==="document"&&(n={start:n.start,value:n.value}),IS(Object.freeze([]),n,e)}ps.BREAK=Wh;ps.SKIP=PC;ps.REMOVE=$S;ps.itemAtPath=(n,e)=>{let i=n;for(const[r,a]of e){const o=i==null?void 0:i[r];if(o&&"items"in o)i=o.items[a];else return}return i};ps.parentCollection=(n,e)=>{const i=ps.itemAtPath(n,e.slice(0,-1)),r=e[e.length-1][0],a=i==null?void 0:i[r];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function IS(n,e,i){let r=i(e,n);if(typeof r=="symbol")return r;for(const a of["key","value"]){const o=e[a];if(o&&"items"in o){for(let u=0;u<o.items.length;++u){const f=IS(Object.freeze(n.concat([[a,u]])),o.items[u],i);if(typeof f=="number")u=f-1;else{if(f===Wh)return Wh;f===$S&&(o.items.splice(u,1),u-=1)}}typeof r=="function"&&a==="key"&&(r=r(e,n))}}return typeof r=="function"?r(e,n):r}const Uc="\uFEFF",Hc="",Bc="",cl="",JC=n=>!!n&&"items"in n,ZC=n=>!!n&&(n.type==="scalar"||n.type==="single-quoted-scalar"||n.type==="double-quoted-scalar"||n.type==="block-scalar");function WC(n){switch(n){case Uc:return"<BOM>";case Hc:return"<DOC>";case Bc:return"<FLOW_END>";case cl:return"<SCALAR>";default:return JSON.stringify(n)}}function VS(n){switch(n){case Uc:return"byte-order-mark";case Hc:return"doc-mode";case Bc:return"flow-error-end";case cl:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
`:case`\r
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(n[0]){case" ":case"    ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}const e2=Object.freeze(Object.defineProperty({__proto__:null,BOM:Uc,DOCUMENT:Hc,FLOW_END:Bc,SCALAR:cl,createScalarToken:XC,isCollection:JC,isScalar:ZC,prettyToken:WC,resolveAsScalar:KC,setScalarValue:YC,stringify:QC,tokenType:VS,visit:ps},Symbol.toStringTag,{value:"Module"}));function xn(n){switch(n){case void 0:case" ":case`
`:case"\r":case"    ":return!0;default:return!1}}const s0=new Set("0123456789ABCDEFabcdef"),t2=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),Go=new Set(",[]{}"),n2=new Set(` ,[]{}
\r    `),Nh=n=>!n||n2.has(n);class GS{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(e,i=!1){if(e){if(typeof e!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null}this.atEnd=!i;let r=this.next??"stream";for(;r&&(i||this.hasChars(1));)r=yield*this.parseNext(r)}atLineEnd(){let e=this.pos,i=this.buffer[e];for(;i===" "||i==="    ";)i=this.buffer[++e];return!i||i==="#"||i===`
`?!0:i==="\r"?this.buffer[e+1]===`
`:!1}charAt(e){return this.buffer[this.pos+e]}continueScalar(e){let i=this.buffer[e];if(this.indentNext>0){let r=0;for(;i===" ";)i=this.buffer[++r+e];if(i==="\r"){const a=this.buffer[r+e+1];if(a===`
`||!a&&!this.atEnd)return e+r+1}return i===`
`||r>=this.indentNext||!i&&!this.atEnd?e+r:-1}if(i==="-"||i==="."){const r=this.buffer.substr(e,3);if((r==="---"||r==="...")&&xn(this.buffer[e+3]))return-1}return e}getLine(){let e=this.lineEndPos;return(typeof e!="number"||e!==-1&&e<this.pos)&&(e=this.buffer.indexOf(`
`,this.pos),this.lineEndPos=e),e===-1?this.atEnd?this.buffer.substring(this.pos):null:(this.buffer[e-1]==="\r"&&(e-=1),this.buffer.substring(this.pos,e))}hasChars(e){return this.pos+e<=this.buffer.length}setNext(e){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=e,null}peek(e){return this.buffer.substr(this.pos,e)}*parseNext(e){switch(e){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let e=this.getLine();if(e===null)return this.setNext("stream");if(e[0]===Uc&&(yield*this.pushCount(1),e=e.substring(1)),e[0]==="%"){let i=e.length,r=e.indexOf("#");for(;r!==-1;){const o=e[r-1];if(o===" "||o==="    "){i=r-1;break}else r=e.indexOf("#",r+1)}for(;;){const o=e[i-1];if(o===" "||o==="    ")i-=1;else break}const a=(yield*this.pushCount(i))+(yield*this.pushSpaces(!0));return yield*this.pushCount(e.length-a),this.pushNewline(),"stream"}if(this.atLineEnd()){const i=yield*this.pushSpaces(!0);return yield*this.pushCount(e.length-i),yield*this.pushNewline(),"stream"}return yield Hc,yield*this.parseLineStart()}*parseLineStart(){const e=this.charAt(0);if(!e&&!this.atEnd)return this.setNext("line-start");if(e==="-"||e==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");const i=this.peek(3);if((i==="---"||i==="...")&&xn(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,i==="---"?"doc":"stream"}return this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!xn(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){const[e,i]=this.peek(2);if(!i&&!this.atEnd)return this.setNext("block-start");if((e==="-"||e==="?"||e===":")&&xn(i)){const r=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=r,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);const e=this.getLine();if(e===null)return this.setNext("doc");let i=yield*this.pushIndicators();switch(e[i]){case"#":yield*this.pushCount(e.length-i);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(Nh),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return i+=yield*this.parseBlockScalarHeader(),i+=yield*this.pushSpaces(!0),yield*this.pushCount(e.length-i),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let e,i,r=-1;do e=yield*this.pushNewline(),e>0?(i=yield*this.pushSpaces(!1),this.indentValue=r=i):i=0,i+=yield*this.pushSpaces(!0);while(e+i>0);const a=this.getLine();if(a===null)return this.setNext("flow");if((r!==-1&&r<this.indentNext&&a[0]!=="#"||r===0&&(a.startsWith("---")||a.startsWith("..."))&&xn(a[3]))&&!(r===this.indentNext-1&&this.flowLevel===1&&(a[0]==="]"||a[0]==="}")))return this.flowLevel=0,yield Bc,yield*this.parseLineStart();let o=0;for(;a[o]===",";)o+=yield*this.pushCount(1),o+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(o+=yield*this.pushIndicators(),a[o]){case void 0:return"flow";case"#":return yield*this.pushCount(a.length-o),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(Nh),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{const u=this.charAt(1);if(this.flowKey||xn(u)||u===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){const e=this.charAt(0);let i=this.buffer.indexOf(e,this.pos+1);if(e==="'")for(;i!==-1&&this.buffer[i+1]==="'";)i=this.buffer.indexOf("'",i+2);else for(;i!==-1;){let o=0;for(;this.buffer[i-1-o]==="\\";)o+=1;if(o%2===0)break;i=this.buffer.indexOf('"',i+1)}const r=this.buffer.substring(0,i);let a=r.indexOf(`
`,this.pos);if(a!==-1){for(;a!==-1;){const o=this.continueScalar(a+1);if(o===-1)break;a=r.indexOf(`
`,o)}a!==-1&&(i=a-(r[a-1]==="\r"?2:1))}if(i===-1){if(!this.atEnd)return this.setNext("quoted-scalar");i=this.buffer.length}return yield*this.pushToIndex(i+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let e=this.pos;for(;;){const i=this.buffer[++e];if(i==="+")this.blockScalarKeep=!0;else if(i>"0"&&i<="9")this.blockScalarIndent=Number(i)-1;else if(i!=="-")break}return yield*this.pushUntil(i=>xn(i)||i==="#")}*parseBlockScalar(){let e=this.pos-1,i=0,r;e:for(let o=this.pos;r=this.buffer[o];++o)switch(r){case" ":i+=1;break;case`
`:e=o,i=0;break;case"\r":{const u=this.buffer[o+1];if(!u&&!this.atEnd)return this.setNext("block-scalar");if(u===`
`)break}default:break e}if(!r&&!this.atEnd)return this.setNext("block-scalar");if(i>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=i:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{const o=this.continueScalar(e+1);if(o===-1)break;e=this.buffer.indexOf(`
`,o)}while(e!==-1);if(e===-1){if(!this.atEnd)return this.setNext("block-scalar");e=this.buffer.length}}let a=e+1;for(r=this.buffer[a];r===" ";)r=this.buffer[++a];if(r==="    "){for(;r==="    "||r===" "||r==="\r"||r===`
`;)r=this.buffer[++a];e=a-1}else if(!this.blockScalarKeep)do{let o=e-1,u=this.buffer[o];u==="\r"&&(u=this.buffer[--o]);const f=o;for(;u===" ";)u=this.buffer[--o];if(u===`
`&&o>=this.pos&&o+1+i>f)e=o;else break}while(!0);return yield cl,yield*this.pushToIndex(e+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){const e=this.flowLevel>0;let i=this.pos-1,r=this.pos-1,a;for(;a=this.buffer[++r];)if(a===":"){const o=this.buffer[r+1];if(xn(o)||e&&Go.has(o))break;i=r}else if(xn(a)){let o=this.buffer[r+1];if(a==="\r"&&(o===`
`?(r+=1,a=`
`,o=this.buffer[r+1]):i=r),o==="#"||e&&Go.has(o))break;if(a===`
`){const u=this.continueScalar(r+1);if(u===-1)break;r=Math.max(r,u-2)}}else{if(e&&Go.has(a))break;i=r}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield cl,yield*this.pushToIndex(i+1,!0),e?"flow":"doc")}*pushCount(e){return e>0?(yield this.buffer.substr(this.pos,e),this.pos+=e,e):0}*pushToIndex(e,i){const r=this.buffer.slice(this.pos,e);return r?(yield r,this.pos+=r.length,r.length):(i&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(Nh))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{const e=this.flowLevel>0,i=this.charAt(1);if(xn(i)||e&&Go.has(i))return e?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let e=this.pos+2,i=this.buffer[e];for(;!xn(i)&&i!==">";)i=this.buffer[++e];return yield*this.pushToIndex(i===">"?e+1:e,!1)}else{let e=this.pos+1,i=this.buffer[e];for(;i;)if(t2.has(i))i=this.buffer[++e];else if(i==="%"&&s0.has(this.buffer[e+1])&&s0.has(this.buffer[e+2]))i=this.buffer[e+=3];else break;return yield*this.pushToIndex(e,!1)}}*pushNewline(){const e=this.buffer[this.pos];return e===`
`?yield*this.pushCount(1):e==="\r"&&this.charAt(1)===`
`?yield*this.pushCount(2):0}*pushSpaces(e){let i=this.pos-1,r;do r=this.buffer[++i];while(r===" "||e&&r==="    ");const a=i-this.pos;return a>0&&(yield this.buffer.substr(this.pos,a),this.pos=i),a}*pushUntil(e){let i=this.pos,r=this.buffer[i];for(;!e(r);)r=this.buffer[++i];return yield*this.pushToIndex(i,!1)}}class KS{constructor(){this.lineStarts=[],this.addNewLine=e=>this.lineStarts.push(e),this.linePos=e=>{let i=0,r=this.lineStarts.length;for(;i<r;){const o=i+r>>1;this.lineStarts[o]<e?i=o+1:r=o}if(this.lineStarts[i]===e)return{line:i+1,col:1};if(i===0)return{line:0,col:e};const a=this.lineStarts[i-1];return{line:i,col:e-a+1}}}}function Li(n,e){for(let i=0;i<n.length;++i)if(n[i].type===e)return!0;return!1}function r0(n){for(let e=0;e<n.length;++e)switch(n[e].type){case"space":case"comment":case"newline":break;default:return e}return-1}function XS(n){switch(n==null?void 0:n.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function Ko(n){switch(n.type){case"document":return n.start;case"block-map":{const e=n.items[n.items.length-1];return e.sep??e.start}case"block-seq":return n.items[n.items.length-1].start;default:return[]}}function dr(n){var i;if(n.length===0)return[];let e=n.length;e:for(;--e>=0;)switch(n[e].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;((i=n[++e])==null?void 0:i.type)==="space";);return n.splice(e,n.length)}function a0(n){if(n.start.type==="flow-seq-start")for(const e of n.items)e.sep&&!e.value&&!Li(e.start,"explicit-key-ind")&&!Li(e.sep,"map-value-ind")&&(e.key&&(e.value=e.key),delete e.key,XS(e.value)?e.value.end?Array.prototype.push.apply(e.value.end,e.sep):e.value.end=e.sep:Array.prototype.push.apply(e.start,e.sep),delete e.sep)}class Jd{constructor(e){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new GS,this.onNewLine=e}*parse(e,i=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(const r of this.lexer.lex(e,i))yield*this.next(r);i||(yield*this.end())}*next(e){if(this.source=e,this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=e.length;return}const i=VS(e);if(i)if(i==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=i,yield*this.step(),i){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+e.length);break;case"space":this.atNewLine&&e[0]===" "&&(this.indent+=e.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=e.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=e.length}else{const r=`Not a YAML token: ${e}`;yield*this.pop({type:"error",offset:this.offset,message:r,source:e}),this.offset+=e.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){const e=this.peek(1);if(this.type==="doc-end"&&(e==null?void 0:e.type)!=="doc-end"){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!e)return yield*this.stream();switch(e.type){case"document":return yield*this.document(e);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(e);case"block-scalar":return yield*this.blockScalar(e);case"block-map":return yield*this.blockMap(e);case"block-seq":return yield*this.blockSequence(e);case"flow-collection":return yield*this.flowCollection(e);case"doc-end":return yield*this.documentEnd(e)}yield*this.pop()}peek(e){return this.stack[this.stack.length-e]}*pop(e){const i=e??this.stack.pop();if(!i)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield i;else{const r=this.peek(1);switch(i.type==="block-scalar"?i.indent="indent"in r?r.indent:0:i.type==="flow-collection"&&r.type==="document"&&(i.indent=0),i.type==="flow-collection"&&a0(i),r.type){case"document":r.value=i;break;case"block-scalar":r.props.push(i);break;case"block-map":{const a=r.items[r.items.length-1];if(a.value){r.items.push({start:[],key:i,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=i;else{Object.assign(a,{key:i,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{const a=r.items[r.items.length-1];a.value?r.items.push({start:[],value:i}):a.value=i;break}case"flow-collection":{const a=r.items[r.items.length-1];!a||a.value?r.items.push({start:[],key:i,sep:[]}):a.sep?a.value=i:Object.assign(a,{key:i,sep:[]});return}default:yield*this.pop(),yield*this.pop(i)}if((r.type==="document"||r.type==="block-map"||r.type==="block-seq")&&(i.type==="block-map"||i.type==="block-seq")){const a=i.items[i.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&r0(a.start)===-1&&(i.indent===0||a.start.every(o=>o.type!=="comment"||o.indent<i.indent))&&(r.type==="document"?r.end=a.start:r.items.push({start:a.start}),i.items.splice(-1,1))}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{const e={type:"document",offset:this.offset,start:[]};this.type==="doc-start"&&e.start.push(this.sourceToken),this.stack.push(e);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(e){if(e.value)return yield*this.lineEnd(e);switch(this.type){case"doc-start":{r0(e.start)!==-1?(yield*this.pop(),yield*this.step()):e.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":e.start.push(this.sourceToken);return}const i=this.startBlockValue(e);i?this.stack.push(i):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(e){if(this.type==="map-value-ind"){const i=Ko(this.peek(2)),r=dr(i);let a;e.end?(a=e.end,a.push(this.sourceToken),delete e.end):a=[this.sourceToken];const o={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:r,key:e,sep:a}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=o}else yield*this.lineEnd(e)}*blockScalar(e){switch(this.type){case"space":case"comment":case"newline":e.props.push(this.sourceToken);return;case"scalar":if(e.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let i=this.source.indexOf(`
`)+1;for(;i!==0;)this.onNewLine(this.offset+i),i=this.source.indexOf(`
`,i)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(e){var r;const i=e.items[e.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,i.value){const a="end"in i.value?i.value.end:void 0,o=Array.isArray(a)?a[a.length-1]:void 0;(o==null?void 0:o.type)==="comment"?a==null||a.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else i.sep?i.sep.push(this.sourceToken):i.start.push(this.sourceToken);return;case"space":case"comment":if(i.value)e.items.push({start:[this.sourceToken]});else if(i.sep)i.sep.push(this.sourceToken);else{if(this.atIndentedComment(i.start,e.indent)){const a=e.items[e.items.length-2],o=(r=a==null?void 0:a.value)==null?void 0:r.end;if(Array.isArray(o)){Array.prototype.push.apply(o,i.start),o.push(this.sourceToken),e.items.pop();return}}i.start.push(this.sourceToken)}return}if(this.indent>=e.indent){const a=!this.onKeyLine&&this.indent===e.indent,o=a&&(i.sep||i.explicitKey)&&this.type!=="seq-item-ind";let u=[];if(o&&i.sep&&!i.value){const f=[];for(let d=0;d<i.sep.length;++d){const g=i.sep[d];switch(g.type){case"newline":f.push(d);break;case"space":break;case"comment":g.indent>e.indent&&(f.length=0);break;default:f.length=0}}f.length>=2&&(u=i.sep.splice(f[1]))}switch(this.type){case"anchor":case"tag":o||i.value?(u.push(this.sourceToken),e.items.push({start:u}),this.onKeyLine=!0):i.sep?i.sep.push(this.sourceToken):i.start.push(this.sourceToken);return;case"explicit-key-ind":!i.sep&&!i.explicitKey?(i.start.push(this.sourceToken),i.explicitKey=!0):o||i.value?(u.push(this.sourceToken),e.items.push({start:u,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(i.explicitKey)if(i.sep)if(i.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Li(i.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:u,key:null,sep:[this.sourceToken]}]});else if(XS(i.key)&&!Li(i.sep,"newline")){const f=dr(i.start),d=i.key,g=i.sep;g.push(this.sourceToken),delete i.key,delete i.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:f,key:d,sep:g}]})}else u.length>0?i.sep=i.sep.concat(u,this.sourceToken):i.sep.push(this.sourceToken);else if(Li(i.start,"newline"))Object.assign(i,{key:null,sep:[this.sourceToken]});else{const f=dr(i.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:f,key:null,sep:[this.sourceToken]}]})}else i.sep?i.value||o?e.items.push({start:u,key:null,sep:[this.sourceToken]}):Li(i.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):i.sep.push(this.sourceToken):Object.assign(i,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const f=this.flowScalar(this.type);o||i.value?(e.items.push({start:u,key:f,sep:[]}),this.onKeyLine=!0):i.sep?this.stack.push(f):(Object.assign(i,{key:f,sep:[]}),this.onKeyLine=!0);return}default:{const f=this.startBlockValue(e);if(f){if(f.type==="block-seq"){if(!i.explicitKey&&i.sep&&!Li(i.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else a&&e.items.push({start:u});this.stack.push(f);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(e){var r;const i=e.items[e.items.length-1];switch(this.type){case"newline":if(i.value){const a="end"in i.value?i.value.end:void 0,o=Array.isArray(a)?a[a.length-1]:void 0;(o==null?void 0:o.type)==="comment"?a==null||a.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else i.start.push(this.sourceToken);return;case"space":case"comment":if(i.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(i.start,e.indent)){const a=e.items[e.items.length-2],o=(r=a==null?void 0:a.value)==null?void 0:r.end;if(Array.isArray(o)){Array.prototype.push.apply(o,i.start),o.push(this.sourceToken),e.items.pop();return}}i.start.push(this.sourceToken)}return;case"anchor":case"tag":if(i.value||this.indent<=e.indent)break;i.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==e.indent)break;i.value||Li(i.start,"seq-item-ind")?e.items.push({start:[this.sourceToken]}):i.start.push(this.sourceToken);return}if(this.indent>e.indent){const a=this.startBlockValue(e);if(a){this.stack.push(a);return}}yield*this.pop(),yield*this.step()}*flowCollection(e){const i=e.items[e.items.length-1];if(this.type==="flow-error-end"){let r;do yield*this.pop(),r=this.peek(1);while((r==null?void 0:r.type)==="flow-collection")}else if(e.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!i||i.sep?e.items.push({start:[this.sourceToken]}):i.start.push(this.sourceToken);return;case"map-value-ind":!i||i.value?e.items.push({start:[],key:null,sep:[this.sourceToken]}):i.sep?i.sep.push(this.sourceToken):Object.assign(i,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!i||i.value?e.items.push({start:[this.sourceToken]}):i.sep?i.sep.push(this.sourceToken):i.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const a=this.flowScalar(this.type);!i||i.value?e.items.push({start:[],key:a,sep:[]}):i.sep?this.stack.push(a):Object.assign(i,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":e.end.push(this.sourceToken);return}const r=this.startBlockValue(e);r?this.stack.push(r):(yield*this.pop(),yield*this.step())}else{const r=this.peek(2);if(r.type==="block-map"&&(this.type==="map-value-ind"&&r.indent===e.indent||this.type==="newline"&&!r.items[r.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&r.type!=="flow-collection"){const a=Ko(r),o=dr(a);a0(e);const u=e.end.splice(1,e.end.length);u.push(this.sourceToken);const f={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:o,key:e,sep:u}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=f}else yield*this.lineEnd(e)}}flowScalar(e){if(this.onNewLine){let i=this.source.indexOf(`
`)+1;for(;i!==0;)this.onNewLine(this.offset+i),i=this.source.indexOf(`
`,i)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const i=Ko(e),r=dr(i);return r.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;const i=Ko(e),r=dr(i);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,i){return this.type!=="comment"||this.indent<=i?!1:e.every(r=>r.type==="newline"||r.type==="space")}*documentEnd(e){this.type!=="doc-mode"&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}}function YS(n){const e=n.prettyErrors!==!1;return{lineCounter:n.lineCounter||e&&new KS||null,prettyErrors:e}}function i2(n,e={}){const{lineCounter:i,prettyErrors:r}=YS(e),a=new Jd(i==null?void 0:i.addNewLine),o=new Pd(e),u=Array.from(o.compose(a.parse(n)));if(r&&i)for(const f of u)f.errors.forEach(gc(n,i)),f.warnings.forEach(gc(n,i));return u.length>0?u:Object.assign([],{empty:!0},o.streamInfo())}function FS(n,e={}){const{lineCounter:i,prettyErrors:r}=YS(e),a=new Jd(i==null?void 0:i.addNewLine),o=new Pd(e);let u=null;for(const f of o.compose(a.parse(n),!0,n.length))if(!u)u=f;else if(u.options.logLevel!=="silent"){u.errors.push(new hs(f.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return r&&i&&(u.errors.forEach(gc(n,i)),u.warnings.forEach(gc(n,i))),u}function s2(n,e,i){let r;typeof e=="function"?r=e:i===void 0&&e&&typeof e=="object"&&(i=e);const a=FS(n,i);if(!a)return null;if(a.warnings.forEach(o=>pS(a.options.logLevel,o)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:r},i))}function r2(n,e,i){let r=null;if(typeof e=="function"||Array.isArray(e)?r=e:i===void 0&&e&&(i=e),typeof i=="string"&&(i=i.length),typeof i=="number"){const a=Math.round(i);i=a<1?void 0:a>8?{indent:8}:{indent:a}}if(n===void 0){const{keepUndefined:a}=i??e??{};if(!a)return}return ms(n)&&!r?n.toString(i):new Br(n,r,i).toString(i)}const QS=Object.freeze(Object.defineProperty({__proto__:null,Alias:Cc,CST:e2,Composer:Pd,Document:Br,Lexer:GS,LineCounter:KS,Pair:Nt,Parser:Jd,Scalar:de,Schema:zc,YAMLError:Fd,YAMLMap:nn,YAMLParseError:hs,YAMLSeq:zi,YAMLWarning:LS,isAlias:Hi,isCollection:Ke,isDocument:ms,isMap:Dr,isNode:Xe,isPair:Ve,isScalar:ze,isSeq:zr,parse:s2,parseAllDocuments:i2,parseDocument:FS,stringify:r2,visit:ys,visitAsync:Ac},Symbol.toStringTag,{value:"Module"})),l0=[.5,1,2];function a2(n,e,i,r,a){const[o,u]=R.useState(!1),[f,d]=R.useState(1),[g,m]=R.useState(!1),[y,S]=R.useState(void 0),[w,E]=R.useState(void 0),x=l0[f],_=e?n.indexOf(e):-1,A=a.minimum,C=a.maximum,H=C-A||1,V=r?r.minimum:A,K=r?r.maximum:C,Q=R.useMemo(()=>r?n.filter(fe=>fe.startTime>=r.minimum&&fe.startTime<=r.maximum):n,[n,r]),j=Q.length?n.indexOf(Q[0]):0,I=Q.length?n.indexOf(Q[Q.length-1]):n.length-1,O=R.useRef(n);O.current=n;const P=R.useRef(i);P.current=i;const J=R.useRef(null),$=R.useCallback(fe=>{let _e=0,Ue=n.length-1;for(;_e<Ue;){const He=_e+Ue+1>>1;n[He].startTime<=fe?_e=He:Ue=He-1}if(_e<n.length-1){const He=fe-n[_e].startTime;n[_e+1].startTime-fe<He&&(_e=_e+1)}return Math.max(j,Math.min(I,_e))},[n,j,I]),ee=e?e.startTime:A;let ce;g&&y!==void 0?ce=y*100:o&&w!==void 0?ce=Math.max(0,Math.min(100,(w-A)/H*100)):ce=Math.max(0,Math.min(100,(ee-A)/H*100));const Me=R.useRef(V);Me.current=V;const q=R.useRef(K);q.current=K,R.useEffect(()=>{if(!o)return;let fe,_e,Ue=ee;Ue<Me.current&&(Ue=Me.current);let He=_;E(Ue);const Xt=Ye=>{if(_e!==void 0){const bs=(Ye-_e)*x;Ue=Math.min(Ue+bs,q.current)}_e=Ye,E(Ue);const Yt=$(Ue);if(Yt!==He&&(He=Yt,P.current(O.current[Yt])),Ue>=q.current){u(!1);return}fe=requestAnimationFrame(Xt)};return fe=requestAnimationFrame(Xt),()=>cancelAnimationFrame(fe)},[o,x]),R.useEffect(()=>{o||E(void 0)},[o]);const Z=R.useCallback(()=>{if(!n.length)return;const fe=_>=I;!o&&fe&&i(n[j]),u(!o)},[o,n,_,i,j,I]),re=R.useCallback(()=>{u(!1),n.length&&i(n[j])},[n,i,j]),me=R.useCallback(()=>{const fe=Math.max(_-1,j);fe!==_&&i(n[fe])},[n,_,i,j]),Ee=R.useCallback(()=>{const fe=Math.min(_+1,I);fe!==_&&i(n[fe])},[n,_,i,I]),M=R.useCallback(()=>{d(fe=>(fe+1)%l0.length)},[]);R.useEffect(()=>{u(!1)},[n]);const X=R.useCallback(fe=>{const _e=J.current.getBoundingClientRect();return Math.max(0,Math.min(1,(fe.clientX-_e.left)/_e.width))},[]),W=R.useCallback(fe=>{if(!n.length)return;const _e=A+fe*H,Ue=$(_e);P.current(O.current[Ue])},[n,A,H,$]),te=R.useRef(null);R.useEffect(()=>()=>{var fe;return(fe=te.current)==null?void 0:fe.call(te)},[]);const ue=R.useCallback(fe=>{var Xt;if(!n.length||fe.button!==0)return;fe.preventDefault(),fe.stopPropagation(),(Xt=J.current)==null||Xt.focus(),m(!0),u(!1);const _e=X(fe);S(_e),W(_e);const Ue=Ye=>{const Yt=X(Ye);S(Yt),W(Yt)},He=Ye=>{document.removeEventListener("mousemove",Ue),document.removeEventListener("mouseup",He),te.current=null;const Yt=X(Ye);W(Yt),S(void 0),m(!1)};document.addEventListener("mousemove",Ue),document.addEventListener("mouseup",He),te.current=()=>{document.removeEventListener("mousemove",Ue),document.removeEventListener("mouseup",He)}},[n,W,X]),se=!o&&!g,xe=n.length>0&&n.length<=200?n.map(fe=>(fe.startTime-A)/H*100):void 0,nt=_>j,Re=_<I,Rn=o||_>j;return{playing:o,speed:x,currentIndex:_,percent:ce,animating:se,togglePlay:Z,stop:re,prev:me,next:Ee,cycleSpeed:M,onScrubberMouseDown:ue,scrubberRef:J,actionsLength:n.length,canPrev:nt,canNext:Re,canStop:Rn,ticks:xe}}const l2=({playback:n})=>b.jsxs(b.Fragment,{children:[b.jsx(ct,{icon:"chevron-left",title:"Previous action",onClick:n.prev,disabled:!n.canPrev}),b.jsx(ct,{icon:n.playing?"debug-pause":"play",disabled:!n.actionsLength,title:n.playing?"Pause":"Play",onClick:n.togglePlay}),b.jsx(ct,{icon:"debug-stop",title:"Stop",onClick:n.stop,disabled:!n.canStop}),b.jsx(ct,{icon:"chevron-right",title:"Next action",onClick:n.next,disabled:!n.canNext}),b.jsxs("button",{className:"playback-speed",onClick:n.cycleSpeed,title:"Playback speed",children:[n.speed,"x"]})]}),o2=({playback:n})=>{var i;const e=R.useCallback(r=>{r.key==="ArrowLeft"?(r.preventDefault(),n.prev()):r.key==="ArrowRight"&&(r.preventDefault(),n.next())},[n]);return b.jsxs("div",{className:"playback-scrubber",ref:n.scrubberRef,onMouseDown:n.onScrubberMouseDown,onKeyDown:e,tabIndex:0,role:"slider","aria-label":"Playback position","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(n.percent),children:[b.jsx("div",{className:"playback-track"}),b.jsx("div",{className:"playback-track-filled"+(n.animating?" animated":""),style:{width:`${n.percent}%`}}),(i=n.ticks)==null?void 0:i.map((r,a)=>b.jsx("div",{className:"playback-tick",style:{left:`${r}%`}},a)),b.jsx("div",{className:"playback-thumb"+(n.animating?" animated":""),style:{left:`${n.percent}%`}})]})},c2=({action:n,model:e,sdkLanguage:i,testIdAttributeName:r,isInspecting:a,setIsInspecting:o,highlightedElement:u,setHighlightedElement:f,playback:d})=>{const[g,m]=R.useState("action"),[y]=jt("shouldPopulateCanvasFromScreenshot",!1),S=R.useMemo(()=>d2(n),[n]),{snapshotInfoUrl:w,snapshotUrl:E,popoutUrl:x}=R.useMemo(()=>{const A=S[g];return e&&A?p2(e.traceUri,A,y):{snapshotInfoUrl:void 0,snapshotUrl:void 0,popoutUrl:void 0}},[S,g,y,e]),_=R.useMemo(()=>w!==void 0?{snapshotInfoUrl:w,snapshotUrl:E,popoutUrl:x}:void 0,[w,E,x]);return b.jsxs("div",{className:"snapshot-tab vbox",children:[b.jsxs(dl,{children:[b.jsx(ct,{className:"pick-locator",title:"Pick locator",icon:"target",toggled:a,onClick:()=>o(!a)}),b.jsx("div",{className:"hbox",style:{height:"100%"},role:"tablist",children:["action","before","after"].map(A=>b.jsx(W0,{id:A,title:h2(A),selected:g===A,onSelect:()=>m(A)},A))}),b.jsx("div",{style:{flex:"auto"}}),b.jsx(l2,{playback:d}),b.jsx(ct,{icon:"link-external",title:"Open snapshot in a new tab",disabled:!(_!=null&&_.popoutUrl),onClick:()=>{const A=window.open((_==null?void 0:_.popoutUrl)||"","_blank");A==null||A.addEventListener("DOMContentLoaded",()=>{new Qv(A,{isUnderTest:JS,sdkLanguage:i,testIdAttributeName:r,stableRafCount:1,browserName:"chromium",customEngines:[]}).consoleApi.install()})}})]}),b.jsx(u2,{snapshotUrls:_,sdkLanguage:i,testIdAttributeName:r,isInspecting:a,setIsInspecting:o,highlightedElement:u,setHighlightedElement:f})]})},u2=({snapshotUrls:n,sdkLanguage:e,testIdAttributeName:i,isInspecting:r,setIsInspecting:a,highlightedElement:o,setHighlightedElement:u})=>{const f=R.useRef(null),d=R.useRef(null),[g,m]=R.useState({viewport:ZS,url:""}),y=R.useRef({iteration:0,visibleIframe:0});return R.useEffect(()=>{(async()=>{const S=y.current.iteration+1,w=1-y.current.visibleIframe;y.current.iteration=S;const E=await g2(n==null?void 0:n.snapshotInfoUrl);if(y.current.iteration!==S)return;const x=[f,d][w].current;if(x){let _=()=>{};const A=new Promise(C=>_=C);try{x.addEventListener("load",_),x.addEventListener("error",_);const C=(n==null?void 0:n.snapshotUrl)||YA;x.contentWindow?x.contentWindow.location.replace(C):x.src=C,await A}catch{}finally{x.removeEventListener("load",_),x.removeEventListener("error",_)}}y.current.iteration===S&&(y.current.visibleIframe=w,m(E))})()},[n]),b.jsxs("div",{className:"vbox",tabIndex:0,onKeyDown:S=>{S.key==="Escape"&&r&&a(!1)},children:[b.jsx(o0,{isInspecting:r,sdkLanguage:e,testIdAttributeName:i,highlightedElement:o,setHighlightedElement:u,iframe:f.current,iteration:y.current.iteration}),b.jsx(o0,{isInspecting:r,sdkLanguage:e,testIdAttributeName:i,highlightedElement:o,setHighlightedElement:u,iframe:d.current,iteration:y.current.iteration}),b.jsx(f2,{snapshotInfo:g,children:b.jsxs("div",{className:"snapshot-switcher",children:[b.jsx("iframe",{ref:f,name:"snapshot",title:"DOM Snapshot",sandbox:"allow-same-origin allow-scripts",className:ut(y.current.visibleIframe===0&&"snapshot-visible")}),b.jsx("iframe",{ref:d,name:"snapshot",title:"DOM Snapshot",sandbox:"allow-same-origin allow-scripts",className:ut(y.current.visibleIframe===1&&"snapshot-visible")})]})})]})},f2=({snapshotInfo:n,children:e})=>{const[i,r]=gs(),a=40,o={width:n.viewport.width,height:n.viewport.height},u={width:Math.max(o.width,480),height:Math.max(o.height+a,320)},f=Math.min(i.width/u.width,i.height/u.height,1),d={x:(i.width-u.width)/2,y:(i.height-u.height)/2};return b.jsx("div",{ref:r,className:"snapshot-wrapper",children:b.jsxs("div",{className:"snapshot-container",style:{width:u.width+"px",height:u.height+"px",transform:`translate(${d.x}px, ${d.y}px) scale(${f})`},children:[b.jsx(JA,{url:n.url}),b.jsx("div",{className:"snapshot-browser-body",children:b.jsx("div",{style:{width:o.width+"px",height:o.height+"px"},children:e})})]})})};function h2(n){return n==="before"?"Before":n==="after"?"After":n==="action"?"Action":n}const o0=({iframe:n,isInspecting:e,sdkLanguage:i,testIdAttributeName:r,highlightedElement:a,setHighlightedElement:o,iteration:u})=>(R.useEffect(()=>{const f=a.lastEdited==="ariaSnapshot"?a.ariaSnapshot:void 0,d=a.lastEdited==="locator"?a.locator:void 0,g=!!f||!!d||e,m=[],y=new URLSearchParams(window.location.search).get("isUnderTest")==="true";try{PS(m,g,i,r,y,"",n==null?void 0:n.contentWindow)}catch{}const S=f?dd(QS,f):void 0,w=d?QA(i,d,r):void 0;for(const{recorder:E,frameSelector:x}of m){const _=w!=null&&w.startsWith(x)?w.substring(x.length).trim():void 0,A=(S==null?void 0:S.errors.length)===0?S.fragment:void 0;E.setUIState({mode:e?"inspecting":"none",actionSelector:_,ariaTemplate:A,language:i,testIdAttributeName:r,overlay:{offsetX:0}},{async elementPicked(C){o({locator:Ri(i,x+C.selector),ariaSnapshot:C.ariaSnapshot,lastEdited:"none"})},highlightUpdated(){for(const C of m)C.recorder!==E&&C.recorder.clearHighlight()}})}},[n,e,a,o,i,r,u]),b.jsx(b.Fragment,{}));function PS(n,e,i,r,a,o,u){if(!u)return;const f=u;if(!f._recorder&&e){const d=new Qv(u,{isUnderTest:a,sdkLanguage:i,testIdAttributeName:r,stableRafCount:1,browserName:"chromium",customEngines:[]}),g=new IA(d);f._injectedScript=d,f._recorder={recorder:g,frameSelector:o},a&&(window._weakRecordersForTest=window._weakRecordersForTest||new Set,window._weakRecordersForTest.add(new WeakRef(g)))}f._recorder&&n.push(f._recorder);for(let d=0;d<u.frames.length;++d){const g=u.frames[d],m=g.frameElement?f._injectedScript.generateSelectorSimple(g.frameElement,{omitInternalEngines:!0,testIdAttributeName:r})+" >> internal:control=enter-frame >> ":"";PS(n,e,i,r,a,o+m,g)}}const $a=(n,e)=>{if(!n)return;const i=n[e];if(i){if(!n.pageId){console.error("snapshot action must have a pageId");return}return{action:n,snapshotName:i,pageId:n.pageId,point:n.point}}};function d2(n){if(!n)return{};let e=$a(n,"beforeSnapshot");if(!e){for(let a=ob(n);a;a=ob(a))if(a.endTime<=n.startTime&&a.afterSnapshot){e=$a(a,"afterSnapshot");break}}let i=$a(n,"afterSnapshot");if(!i){let a;for(let o=cb(n);o&&o.startTime<=n.endTime;o=cb(o))o.endTime>n.endTime||!o.afterSnapshot||a&&a.endTime>o.endTime||(a=o);a?i=$a(a,"afterSnapshot"):i=e}const r=$a(n,"inputSnapshot")??i;return r&&(r.point=n.point),{action:r,before:e,after:i}}const JS=new URLSearchParams(window.location.search).has("isUnderTest");function p2(n,e,i){const r=new URLSearchParams;r.set("trace",n),r.set("name",e.snapshotName),JS&&r.set("isUnderTest","true"),e.point&&(r.set("pointX",String(e.point.x)),r.set("pointY",String(e.point.y))),i&&r.set("shouldPopulateCanvasFromScreenshot","1");const a=new URL(`snapshot/${e.pageId}?${r.toString()}`,window.location.href).toString(),o=new URL(`snapshotInfo/${e.pageId}?${r.toString()}`,window.location.href).toString(),u=new URLSearchParams;u.set("r",a),u.set("trace",n);const f=new URL(`snapshot.html?${u.toString()}`,window.location.href).toString();return{snapshotInfoUrl:o,snapshotUrl:a,popoutUrl:f}}async function g2(n){const e={url:"",viewport:ZS,timestamp:void 0,wallTime:void 0};if(n){const r=await(await fetch(n)).json();r.error||(e.url=r.url,e.viewport=r.viewport,e.timestamp=r.timestamp,e.wallTime=r.wallTime)}return e}const ZS={width:1280,height:720},m2=hl,y2=({stack:n,setSelectedFrame:e,selectedFrame:i})=>{const r=n||[];return b.jsx(m2,{name:"stack-trace",ariaLabel:"Stack trace",items:r,selectedItem:r[i],render:a=>{const o=a.file[1]===":"?"\\":"/";return b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"stack-trace-frame-function",children:a.function||"(anonymous)"}),b.jsx("span",{className:"stack-trace-frame-location",children:a.file.split(o).pop()}),b.jsx("span",{className:"stack-trace-frame-line",children:":"+a.line})]})},onSelected:a=>e(r.indexOf(a))})};function b2(n,e,i,r,a){const o=Ln();return yc(async()=>{var w,E,x,_;const u=n==null?void 0:n[e],f=u!=null&&u.file?u:a;if(!f)return{source:{file:"",errors:[],content:void 0},targetLine:0,highlight:[]};const d=f.file;let g=i.get(d);g||(g={errors:((w=a==null?void 0:a.source)==null?void 0:w.errors)||[],content:(E=a==null?void 0:a.source)==null?void 0:E.content},i.set(d,g));const m=(f==null?void 0:f.line)||((x=g.errors[0])==null?void 0:x.line)||0,y=r&&d.startsWith(r)?d.substring(r.length+1):d,S=g.errors.map(A=>({type:"error",line:A.line,message:A.message}));if(S.push({line:m,type:"running"}),((_=a==null?void 0:a.source)==null?void 0:_.content)!==void 0)g.content=a.source.content;else if(g.content===void 0||f===a){const A=await S2(d);try{let C=o?await fetch(o.createRelativeUrl(`sha1/src@${A}.txt`)):void 0;(!C||C.status===404)&&(C=await fetch(`file?path=${encodeURIComponent(d)}`)),C.status>=400?g.content="":g.content=await C.text()}catch{g.content=`<Unable to read "${d}">`}}return{model:o,source:g,highlight:S,targetLine:m,fileName:y,location:f}},[n,e,r,a],{source:{errors:[],content:"Loading…"},highlight:[]})}const v2=({stack:n,sources:e,rootDir:i,fallbackLocation:r,stackFrameLocation:a,onOpenExternally:o})=>{const[u,f]=R.useState(),[d,g]=R.useState(0);R.useEffect(()=>{u!==n&&(f(n),g(0))},[n,u,f,g]);const{source:m,highlight:y,targetLine:S,fileName:w,location:E}=b2(n,d,e,i,r),x=R.useCallback(()=>{E&&(o?o(E):window.location.href=`vscode://file//${E.file}:${E.line}`)},[o,E]),_=((n==null?void 0:n.length)??0)>1,A=w2(w),C=A.endsWith(".md")?"markdown":"javascript";return b.jsx(il,{sidebarSize:200,orientation:a==="bottom"?"vertical":"horizontal",sidebarHidden:!_,main:b.jsxs("div",{className:"vbox","data-testid":"source-code",children:[w&&b.jsxs(dl,{children:[b.jsx("div",{className:"source-tab-file-name",title:w,children:b.jsx("div",{children:A})}),b.jsx(ud,{description:"Copy filename",value:A}),E&&b.jsx(ct,{icon:"link-external",title:"Open in VS Code",onClick:x})]}),b.jsx(ds,{text:m.content||"",highlighter:C,highlight:y,revealLine:S,readOnly:!0,lineNumbers:!0,dataTestId:"source-code-mirror"})]}),sidebar:b.jsx(y2,{stack:n,selectedFrame:d,setSelectedFrame:g})})};async function S2(n){const e=new TextEncoder().encode(n),i=await crypto.subtle.digest("SHA-1",e),r=[],a=new DataView(i);for(let o=0;o<a.byteLength;o+=1){const u=a.getUint8(o).toString(16).padStart(2,"0");r.push(u)}return r.join("")}function w2(n){if(!n)return"";const e=n!=null&&n.includes("/")?"/":"\\";return(n==null?void 0:n.split(e).pop())??""}const WS={width:200,height:45},mr=2.5,x2=WS.height+mr*2,_2=({boundaries:n,previewPoint:e})=>{var m,y;const i=Ln(),[r,a]=gs(),o=R.useRef(null);let u=0;if(o.current&&e){const S=o.current.getBoundingClientRect();u=(e.clientY-S.top+o.current.scrollTop)/x2|0}const f=(y=(m=i==null?void 0:i.pages)==null?void 0:m[u])==null?void 0:y.screencastFrames;let d,g;if(e!==void 0&&f&&f.length){const S=n.minimum+(n.maximum-n.minimum)*e.x/r.width;d=f[u0(f,S,ew)-1];const w={width:Math.min(800,window.innerWidth/2|0),height:Math.min(800,window.innerHeight/2|0)};g=d?tw({width:d.width,height:d.height},w):void 0}return b.jsxs("div",{className:"film-strip",ref:a,children:[b.jsx("div",{className:"film-strip-lanes",ref:o,children:i==null?void 0:i.pages.map((S,w)=>S.screencastFrames.length?b.jsx(E2,{boundaries:n,page:S,width:r.width},w):null)}),i&&(e==null?void 0:e.x)!==void 0&&b.jsxs("div",{className:"film-strip-hover",style:{top:r.bottom+5,left:Math.min(e.x,r.width-(g?g.width:0)-10)},children:[d&&g&&b.jsx("div",{style:{width:g.width,height:g.height},children:b.jsx("img",{src:i.createRelativeUrl(`sha1/${d.sha1}`),width:g.width,height:g.height})}),e.action&&b.jsx("div",{className:"film-strip-hover-title",children:od(e.action,e)})]})]})},E2=({boundaries:n,page:e,width:i})=>{const r=Ln(),a={width:0,height:0},o=e.screencastFrames;for(const _ of o)a.width=Math.max(a.width,_.width),a.height=Math.max(a.height,_.height);const u=tw(a,WS),f=o[0].timestamp,d=o[o.length-1].timestamp,g=n.maximum-n.minimum,m=(f-n.minimum)/g*i,y=(n.maximum-d)/g*i,w=(d-f)/g*i/(u.width+2*mr)|0,E=(d-f)/w,x=[];for(let _=0;f&&E&&_<w;++_){const A=f+E*_,C=u0(o,A,ew)-1;x.push(b.jsx("div",{className:"film-strip-frame",style:{width:u.width,height:u.height,backgroundImage:`url(${r==null?void 0:r.createRelativeUrl("sha1/"+o[C].sha1)})`,backgroundSize:`${u.width}px ${u.height}px`,margin:mr,marginRight:mr}},_))}return x.push(b.jsx("div",{className:"film-strip-frame",style:{width:u.width,height:u.height,backgroundImage:`url(${r==null?void 0:r.createRelativeUrl("sha1/"+o[o.length-1].sha1)})`,backgroundSize:`${u.width}px ${u.height}px`,margin:mr,marginRight:mr}},x.length)),b.jsx("div",{className:"film-strip-lane",style:{marginLeft:m+"px",marginRight:y+"px"},children:x})};function ew(n,e){return n-e.timestamp}function tw(n,e){const i=Math.max(n.width/e.width,n.height/e.height);return{width:n.width/i|0,height:n.height/i|0}}const T2=({model:n,boundaries:e,onSelected:i,selectedTime:r,setSelectedTime:a,highlightedTime:o,sdkLanguage:u,scrubber:f})=>{const[d,g]=gs(),[m,y]=R.useState(),[S,w]=R.useState(),[E]=jt("actionsFilter",[]),{offsets:x,curtainLeft:_,curtainRight:A}=R.useMemo(()=>{let P=r||e;if(m&&m.startX!==m.endX){const ce=Mn(d.width,e,m.startX),Me=Mn(d.width,e,m.endX);P={minimum:Math.min(ce,Me),maximum:Math.max(ce,Me)}}const J=Oi(d.width,e,P.minimum),ee=Oi(d.width,e,e.maximum)-Oi(d.width,e,P.maximum);return{offsets:A2(d.width,e),curtainLeft:J,curtainRight:ee}},[r,e,m,d]),C=R.useMemo(()=>n==null?void 0:n.filteredActions(E),[n,E]),H=R.useMemo(()=>{if(!o)return;const P=Oi(d.width,e,o.minimum),J=Oi(d.width,e,o.maximum);return{left:P,width:Math.max(2,J-P)}},[o,e,d]),V=R.useCallback(P=>{if(w(void 0),!g.current)return;const J=P.clientX-g.current.getBoundingClientRect().left,$=Mn(d.width,e,J),ee=r?Oi(d.width,e,r.minimum):0,ce=r?Oi(d.width,e,r.maximum):0;r&&Math.abs(J-ee)<10?y({startX:ce,endX:J,type:"resize"}):r&&Math.abs(J-ce)<10?y({startX:ee,endX:J,type:"resize"}):r&&$>r.minimum&&$<r.maximum&&P.clientY-g.current.getBoundingClientRect().top<20?y({startX:ee,endX:ce,pivot:J,type:"move"}):y({startX:J,endX:J,type:"resize"})},[e,d,g,r]),K=R.useCallback(P=>{if(!g.current)return;const J=P.clientX-g.current.getBoundingClientRect().left,$=Mn(d.width,e,J),ee=C==null?void 0:C.findLast(Z=>Z.startTime<=$);if(!P.buttons){y(void 0);return}if(ee&&i(ee),!m)return;let ce=m;if(m.type==="resize")ce={...m,endX:J};else{const Z=J-m.pivot;let re=m.startX+Z,me=m.endX+Z;re<0&&(re=0,me=re+(m.endX-m.startX)),me>d.width&&(me=d.width,re=me-(m.endX-m.startX)),ce={...m,startX:re,endX:me,pivot:J}}y(ce);const Me=Mn(d.width,e,ce.startX),q=Mn(d.width,e,ce.endX);Me!==q&&a({minimum:Math.min(Me,q),maximum:Math.max(Me,q)})},[e,m,d,C,i,g,a]),Q=R.useCallback(()=>{if(w(void 0),!!m){if(m.startX!==m.endX){const P=Mn(d.width,e,m.startX),J=Mn(d.width,e,m.endX);a({minimum:Math.min(P,J),maximum:Math.max(P,J)})}else{const P=Mn(d.width,e,m.startX),J=C==null?void 0:C.findLast($=>$.startTime<=P);J&&i(J),a(void 0)}y(void 0)}},[e,m,d,C,a,i]),j=R.useCallback(P=>{if(!g.current)return;const J=P.clientX-g.current.getBoundingClientRect().left,$=Mn(d.width,e,J),ee=C==null?void 0:C.findLast(ce=>ce.startTime<=$);w({x:J,clientY:P.clientY,action:ee,sdkLanguage:u})},[e,d,C,g,u]),I=R.useCallback(()=>{w(void 0)},[]),O=R.useCallback(()=>{a(void 0)},[a]);return b.jsxs("div",{className:"timeline-view-container",children:[!!m&&b.jsx(Y0,{cursor:(m==null?void 0:m.type)==="resize"?"ew-resize":"grab",onPaneMouseUp:Q,onPaneMouseMove:K,onPaneDoubleClick:O}),b.jsxs("div",{ref:g,className:"timeline-view",onMouseDown:V,onMouseMove:j,onMouseLeave:I,children:[b.jsx("div",{className:"timeline-grid",children:x.map((P,J)=>b.jsx("div",{className:"timeline-divider",style:{left:P.position+"px"},children:b.jsx("div",{className:"timeline-time",children:yt(P.time-e.minimum)})},J))}),b.jsx(_2,{boundaries:e,previewPoint:S}),f,H&&b.jsx("div",{className:"timeline-highlight",style:{left:H.left,width:H.width}}),r&&b.jsxs("div",{className:"timeline-window",children:[b.jsx("div",{className:"timeline-window-curtain left",style:{width:_}}),b.jsx("div",{className:"timeline-window-resizer",style:{left:-5}}),b.jsx("div",{className:"timeline-window-center",children:b.jsx("div",{className:"timeline-window-drag"})}),b.jsx("div",{className:"timeline-window-resizer",style:{left:5}}),b.jsx("div",{className:"timeline-window-curtain right",style:{width:A}})]})]})]})};function A2(n,e){let r=n/64;const a=e.maximum-e.minimum,o=n/a;let u=a/r;const f=Math.ceil(Math.log(u)/Math.LN10);u=Math.pow(10,f),u*o>=320&&(u=u/5),u*o>=128&&(u=u/2);const d=e.minimum;let g=e.maximum;g+=64/o,r=Math.ceil((g-d)/u),u||(r=0);const m=[];for(let y=0;y<r;++y){const S=d+u*y;m.push({position:Oi(n,e,S),time:S})}return m}function Oi(n,e,i){return(i-e.minimum)/(e.maximum-e.minimum)*n}function Mn(n,e,i){return i/n*(e.maximum-e.minimum)+e.minimum}const C2=({model:n})=>{var i,r;if(!n)return b.jsx(b.Fragment,{});const e=n.wallTime!==void 0?new Date(n.wallTime).toLocaleString(void 0,{timeZoneName:"short"}):void 0;return b.jsxs("div",{style:{flex:"auto",display:"block",overflow:"hidden auto"},children:[b.jsx("div",{className:"call-section",style:{paddingTop:2},children:"Time"}),!!e&&b.jsxs("div",{className:"call-line",children:["start time:",b.jsx("span",{className:"call-value datetime",title:e,children:e})]}),b.jsxs("div",{className:"call-line",children:["duration:",b.jsx("span",{className:"call-value number",title:yt(n.endTime-n.startTime),children:yt(n.endTime-n.startTime)})]}),n.testTimeout!==void 0&&b.jsxs("div",{className:"call-line",children:["test timeout:",b.jsx("span",{className:"call-value number",title:yt(n.testTimeout),children:yt(n.testTimeout)})]}),b.jsx("div",{className:"call-section",children:"Browser"}),b.jsxs("div",{className:"call-line",children:["engine:",b.jsx("span",{className:"call-value string",title:n.browserName,children:n.browserName})]}),n.channel&&b.jsxs("div",{className:"call-line",children:["channel:",b.jsx("span",{className:"call-value string",title:n.channel,children:n.channel})]}),n.platform&&b.jsxs("div",{className:"call-line",children:["platform:",b.jsx("span",{className:"call-value string",title:n.platform,children:n.platform})]}),n.playwrightVersion&&b.jsxs("div",{className:"call-line",children:["playwright version:",b.jsx("span",{className:"call-value string",title:n.playwrightVersion,children:n.playwrightVersion})]}),n.options.userAgent&&b.jsxs("div",{className:"call-line",children:["user agent:",b.jsx("span",{className:"call-value datetime",title:n.options.userAgent,children:n.options.userAgent})]}),n.options.baseURL&&b.jsxs(b.Fragment,{children:[b.jsx("div",{className:"call-section",style:{paddingTop:2},children:"Config"}),b.jsxs("div",{className:"call-line",children:["baseURL:",mx(n.options.baseURL)?b.jsx("a",{className:"call-value string",href:n.options.baseURL,title:n.options.baseURL,target:"_blank",rel:"noopener noreferrer",children:n.options.baseURL}):b.jsx("span",{className:"call-value string",title:n.options.baseURL,children:n.options.baseURL})]})]}),b.jsx("div",{className:"call-section",children:"Viewport"}),n.options.viewport&&b.jsxs("div",{className:"call-line",children:["width:",b.jsx("span",{className:"call-value number",title:String(!!((i=n.options.viewport)!=null&&i.width)),children:n.options.viewport.width})]}),n.options.viewport&&b.jsxs("div",{className:"call-line",children:["height:",b.jsx("span",{className:"call-value number",title:String(!!((r=n.options.viewport)!=null&&r.height)),children:n.options.viewport.height})]}),b.jsxs("div",{className:"call-line",children:["is mobile:",b.jsx("span",{className:"call-value boolean",title:String(!!n.options.isMobile),children:String(!!n.options.isMobile)})]}),n.options.deviceScaleFactor&&b.jsxs("div",{className:"call-line",children:["device scale:",b.jsx("span",{className:"call-value number",title:String(n.options.deviceScaleFactor),children:String(n.options.deviceScaleFactor)})]}),b.jsx("div",{className:"call-section",children:"Counts"}),b.jsxs("div",{className:"call-line",children:["pages:",b.jsx("span",{className:"call-value number",children:n.pages.length})]}),b.jsxs("div",{className:"call-line",children:["actions:",b.jsx("span",{className:"call-value number",children:n.actions.length})]}),b.jsxs("div",{className:"call-line",children:["events:",b.jsx("span",{className:"call-value number",children:n.events.length})]})]})},N2=({annotations:n})=>n.length?b.jsx("div",{className:"annotations-tab",children:n.map((e,i)=>b.jsxs("div",{className:"annotation-item",children:[b.jsx("span",{style:{fontWeight:"bold"},children:e.type}),e.description&&b.jsxs("span",{children:[": ",P0(e.description)]})]},`annotation-${i}`))}):b.jsx(ai,{text:"No annotations"}),k2=({sdkLanguage:n,isInspecting:e,setIsInspecting:i,highlightedElement:r,setHighlightedElement:a})=>{const[o,u]=R.useState(),f=R.useCallback(d=>{const{errors:g}=dd(QS,d,{prettyErrors:!1}),m=g.map(y=>({message:y.message,line:y.range[1].line,column:y.range[1].col,type:"subtle-error"}));u(m),a({...r,ariaSnapshot:d,lastEdited:"ariaSnapshot"}),i(!1)},[r,a,i]);return b.jsxs("div",{style:{flex:"auto",backgroundColor:"var(--vscode-sideBar-background)",padding:"0 10px 10px 10px",overflow:"auto"},children:[b.jsxs("div",{className:"hbox",style:{lineHeight:"28px",color:"var(--vscode-editorCodeLens-foreground)"},children:[b.jsx("div",{children:"Locator"}),b.jsx(ct,{style:{margin:"0 4px"},title:"Pick locator",icon:"target",toggled:e,onClick:()=>i(!e)}),b.jsx("div",{style:{flex:"auto"}}),b.jsx(ct,{icon:"files",title:"Copy locator",onClick:()=>{Zy(r.locator||"")}})]}),b.jsx("div",{style:{height:50},children:b.jsx(ds,{text:r.locator||"",highlighter:n,isFocused:!0,wrapLines:!0,onChange:d=>{a({...r,locator:d,lastEdited:"locator"}),i(!1)}})}),b.jsxs("div",{className:"hbox",style:{lineHeight:"28px",color:"var(--vscode-editorCodeLens-foreground)"},children:[b.jsx("div",{style:{flex:"auto"},children:"Aria snapshot"}),b.jsx(ct,{icon:"files",title:"Copy snapshot",onClick:()=>{Zy(r.ariaSnapshot||"")}})]}),b.jsx("div",{style:{height:150},children:b.jsx(ds,{text:r.ariaSnapshot||"",highlighter:"yaml",wrapLines:!1,highlight:o,onChange:f})})]})},M2=({className:n,style:e,open:i,isModal:r,minWidth:a,verticalOffset:o,requestClose:u,anchor:f,dataTestId:d,children:g})=>{const m=R.useRef(null),[y,S]=R.useState(0),[w]=kh(m),[E,x]=kh(f),_=f?O2(w,E,o):void 0;return R.useEffect(()=>{const A=H=>{!m.current||!(H.target instanceof Node)||m.current.contains(H.target)||u==null||u()},C=H=>{H.key==="Escape"&&(u==null||u())};return i?(document.addEventListener("mousedown",A),document.addEventListener("keydown",C),()=>{document.removeEventListener("mousedown",A),document.removeEventListener("keydown",C)}):()=>{}},[i,u]),R.useLayoutEffect(()=>x(),[i,x]),R.useEffect(()=>{const A=()=>S(C=>C+1);return window.addEventListener("resize",A),()=>{window.removeEventListener("resize",A)}},[]),R.useLayoutEffect(()=>{m.current&&(i?r?m.current.showModal():m.current.show():m.current.close())},[i,r]),b.jsx("dialog",{ref:m,style:{position:"fixed",margin:_?0:void 0,zIndex:110,top:_==null?void 0:_.top,left:_==null?void 0:_.left,minWidth:a||0,...e},className:n,"data-testid":d,children:g})};function O2(n,e,i=4,r=4){let a=Math.max(r,e.left);a+n.width>window.innerWidth-r&&(a=window.innerWidth-n.width-r);let o=Math.max(0,e.bottom)+i;return o+n.height>window.innerHeight-i&&(Math.max(0,e.top)>n.height+i?o=Math.max(0,e.top)-n.height-i:o=window.innerHeight-i-n.height),{left:a,top:o}}const j2=({title:n,icon:e,buttonChildren:i,anchorRef:r,dialogDataTestId:a,children:o})=>{const u=R.useRef(null),f=r??u,[d,g]=R.useState(!1);return b.jsxs(b.Fragment,{children:[b.jsx(ct,{ref:u,icon:e,title:n,onClick:()=>g(m=>!m),children:i}),b.jsx(M2,{style:{backgroundColor:"var(--vscode-sideBar-background)",padding:"4px 8px"},open:d,verticalOffset:8,requestClose:()=>g(!1),anchor:f,dataTestId:a,children:o})]})},nw=({settings:n})=>b.jsx("div",{className:"vbox settings-view",children:n.map(e=>{const i=`setting-${e.name.replaceAll(/\s+/g,"-")}`;return b.jsx("div",{className:`setting setting-${e.type}`,title:e.title,children:L2(e,i)},e.name)})}),L2=(n,e)=>{switch(n.type){case"check":return b.jsxs(b.Fragment,{children:[b.jsx("input",{type:"checkbox",id:e,checked:n.value,onChange:()=>n.set(!n.value)}),b.jsxs("label",{htmlFor:e,children:[n.name,!!n.count&&b.jsx("span",{className:"setting-counter",children:n.count})]})]});case"select":return b.jsxs(b.Fragment,{children:[b.jsxs("label",{htmlFor:e,children:[n.name,":",!!n.count&&b.jsx("span",{className:"setting-counter",children:n.count})]}),b.jsx("select",{id:e,value:n.value,onChange:i=>n.set(i.target.value),children:n.options.map(i=>b.jsx("option",{value:i.value,children:i.label},i.value))})]});default:return null}},K2=n=>{var i;const e=z2((i=n.model)==null?void 0:i.traceUri);return b.jsx(J0.Provider,{value:n.model,children:b.jsx(R2,{partition:e,...n})})},R2=n=>{var Sl;const{partition:e,model:i,showSourcesFirst:r,rootDir:a,fallbackLocation:o,isLive:u,hideTimeline:f,status:d,annotations:g,inert:m,onOpenExternally:y,revealSource:S,testRunMetadata:w}=n,[E,x]=jt("navigatorTab","actions"),[_,A]=jt("propertiesTab",r?"source":"call"),[C,H]=jt("propertiesSidebarLocation","bottom"),[V]=jt("actionsFilter",[]),[K,Q]=or("selectedCallId"),[j,I]=or("selectedTime"),[O,P]=or("highlightedCallId"),[J,$]=or("revealedErrorKey"),[ee,ce]=or("revealedAttachmentCallId"),[Me,q]=or("treeState",{expandedItems:new Map}),[Z,re]=R.useState("");wx(e);const[me,Ee]=R.useState({lastEdited:"none"}),[M,X]=R.useState(!1),[W,te]=R.useState(void 0),ue=R.useCallback(le=>{Q(le==null?void 0:le.callId),$(void 0)},[Q,$]),se=R.useMemo(()=>i==null?void 0:i.filteredActions(V),[i,V]),xe=((i==null?void 0:i.actions.length)??0)-((se==null?void 0:se.length)??0),nt=R.useMemo(()=>se==null?void 0:se.find(le=>le.callId===O),[se,O]),Re=R.useCallback(le=>{P(le==null?void 0:le.callId)},[P]),Rn=R.useMemo(()=>(i==null?void 0:i.sources)||new Map,[i]);R.useEffect(()=>{I(void 0),$(void 0)},[i,I,$]);const fe=R.useMemo(()=>{if(K){const Tn=se==null?void 0:se.find(sn=>sn.callId===K);if(Tn)return Tn}const le=i==null?void 0:i.failedAction();if(le)return le;if(se!=null&&se.length){let Tn=se.length-1;for(let sn=0;sn<se.length;++sn)if(se[sn].title==="After Hooks"&&sn){Tn=sn-1;break}return se[Tn]}},[i,se,K]),_e=R.useMemo(()=>nt||fe,[fe,nt]),Ue=R.useCallback(le=>{ue(le),Re(void 0)},[ue,Re]),{boundaries:He}=R.useMemo(()=>{const le={minimum:(i==null?void 0:i.startTime)||0,maximum:(i==null?void 0:i.endTime)||3e4};return le.minimum>le.maximum&&(le.minimum=0,le.maximum=3e4),le.maximum+=(le.maximum-le.minimum)/20,{boundaries:le}},[i]),Xt=a2(se||[],fe,Ue,j,He),Ye=R.useCallback(le=>{A(le),le!=="inspector"&&X(!1)},[A]),Yt=R.useCallback(le=>{!M&&le&&Ye("inspector"),X(le)},[X,Ye,M]),bs=R.useCallback(le=>{Ee(le),Ye("inspector")},[Ye]),qr=R.useCallback(le=>{Ye("attachments"),ce({callId:le})},[Ye,ce]);R.useEffect(()=>{S&&Ye("source")},[S,Ye]);const vs=aE(i,j),Ss=qE(i,j),ws=nE(i),qc=R.useMemo(()=>{var le;return J!==void 0?(le=ws.errors.get(J))==null?void 0:le.stack:_e==null?void 0:_e.stack},[_e,J,ws]),it=(i==null?void 0:i.sdkLanguage)||"javascript",$c={id:"inspector",title:"Locator",render:()=>b.jsx(k2,{sdkLanguage:it,isInspecting:M,setIsInspecting:Yt,highlightedElement:me,setHighlightedElement:Ee})},yl={id:"call",title:"Call",render:()=>b.jsx(M_,{action:_e,startTimeOffset:(i==null?void 0:i.startTime)??0,sdkLanguage:it})},bl={id:"log",title:"Log",render:()=>b.jsx(L_,{action:_e,isLive:u})},xs={id:"errors",title:"Errors",errorCount:ws.errors.size,render:()=>b.jsx(sE,{errorsModel:ws,testRunMetadata:w,sdkLanguage:it,revealInSource:le=>{le.action?ue(le.action):$(le.message),Ye("source")},wallTime:(i==null?void 0:i.wallTime)??0})};let vl;!fe&&o&&(vl=(Sl=o.source)==null?void 0:Sl.errors.length);const _s={id:"source",title:"Source",errorCount:vl,render:()=>b.jsx(v2,{stack:qc,sources:Rn,rootDir:a,stackFrameLocation:C==="bottom"?"right":"bottom",fallbackLocation:o,onOpenExternally:y})},Ic={id:"console",title:"Console",count:vs.entries.length,render:()=>b.jsx(lE,{consoleModel:vs,boundaries:He,selectedTime:j,onEntryHovered:te,onAccepted:le=>I({minimum:le.timestamp,maximum:le.timestamp})})},Vc={id:"network",title:"Network",count:Ss.resources.length,render:()=>b.jsx($E,{boundaries:He,networkModel:Ss,onResourceHovered:te,sdkLanguage:(i==null?void 0:i.sdkLanguage)??"javascript"})},Bi={id:"attachments",title:"Attachments",count:i==null?void 0:i.visibleAttachments.length,render:()=>b.jsx(W_,{revealedAttachmentCallId:ee})},ft=[$c,yl,bl,xs,Ic,Vc,_s,Bi];if(g!==void 0){const le={id:"annotations",title:"Annotations",count:g.length,render:()=>b.jsx(N2,{annotations:g})};ft.push(le)}if(r){const le=ft.indexOf(_s);ft.splice(le,1),ft.splice(1,0,_s)}let Ft=0;!u&&i&&i.endTime>=0?Ft=i.endTime-i.startTime:i&&i.wallTime&&(Ft=Date.now()-i.wallTime);const kt={id:"actions",title:"Actions",component:b.jsxs("div",{className:"vbox",children:[d&&b.jsxs("div",{className:"workbench-run-status","data-testid":"workbench-run-status",children:[b.jsx("span",{className:ut("codicon",X0(d))}),b.jsx("div",{children:C_(d)}),b.jsx("div",{className:"spacer"}),b.jsx("div",{className:"workbench-run-duration",children:Ft?yt(Ft):""})]}),b.jsx("div",{className:"workbench-action-filter",children:b.jsx("input",{type:"search",placeholder:"Filter actions","aria-label":"Filter actions",spellCheck:!1,value:Z,onChange:le=>re(le.target.value)})}),b.jsx(k_,{sdkLanguage:it,actions:se||[],selectedAction:i?fe:void 0,selectedTime:j,setSelectedTime:I,treeState:Me,setTreeState:q,onSelected:Ue,onHighlighted:Re,revealActionAttachment:qr,revealConsole:()=>Ye("console"),isLive:u,actionFilterText:Z})]})},Gc={id:"metadata",title:"Metadata",component:b.jsx(C2,{model:i})},Kc=E==="actions"&&b.jsx(D2,{counters:i==null?void 0:i.actionCounters,hiddenActionsCount:xe});return b.jsxs("div",{className:"vbox workbench",...m?{inert:!0}:{},children:[!f&&b.jsx(T2,{model:i,boundaries:He,onSelected:Ue,sdkLanguage:it,selectedTime:j,setSelectedTime:I,highlightedTime:W,scrubber:b.jsx(o2,{playback:Xt})}),b.jsx(il,{sidebarSize:250,orientation:C==="bottom"?"vertical":"horizontal",settingName:"propertiesSidebar",main:b.jsx(il,{sidebarSize:250,orientation:"horizontal",sidebarIsFirst:!0,settingName:"actionListSidebar",main:b.jsx(c2,{action:_e,model:i,sdkLanguage:it,testIdAttributeName:(i==null?void 0:i.testIdAttributeName)||"data-testid",isInspecting:M,setIsInspecting:Yt,highlightedElement:me,setHighlightedElement:bs,playback:Xt}),sidebar:b.jsx(oc,{tabs:[kt,Gc],rightToolbar:[Kc],selectedTab:E,setSelectedTab:x})}),sidebar:b.jsx(oc,{tabs:ft,selectedTab:_,setSelectedTab:Ye,rightToolbar:[C==="bottom"?b.jsx(ct,{title:"Dock to right",icon:"layout-sidebar-right-off",onClick:()=>{H("right")}}):b.jsx(ct,{title:"Dock to bottom",icon:"layout-panel-off",onClick:()=>{H("bottom")}})],mode:C==="bottom"?"default":"select"})})]})},D2=({counters:n,hiddenActionsCount:e})=>{const[i,r]=jt("actionsFilter",[]),a=R.useRef(null),o=b.jsxs(b.Fragment,{children:[e>0&&b.jsxs("span",{className:"workbench-actions-hidden-count",title:e+" actions hidden by filters",children:[e," hidden"]}),b.jsx("span",{ref:a,className:"codicon codicon-filter"})]});return b.jsx(j2,{title:"Filter actions",dialogDataTestId:"actions-filter-dialog",buttonChildren:o,anchorRef:a,children:b.jsx(nw,{settings:[{type:"check",value:i.includes("getter"),set:u=>r(u?[...i,"getter"]:i.filter(f=>f!=="getter")),name:"Getters",count:n==null?void 0:n.get("getter")},{type:"check",value:i.includes("route"),set:u=>r(u?[...i,"route"]:i.filter(f=>f!=="route")),name:"Network routes",count:n==null?void 0:n.get("route")},{type:"check",value:i.includes("configuration"),set:u=>r(u?[...i,"configuration"]:i.filter(f=>f!=="configuration")),name:"Configuration",count:n==null?void 0:n.get("configuration")}]})})};function z2(n){if(!n)return"default";const e=new URL(n,"http://localhost");return e.searchParams.delete("timestamp"),e.toString()}var c0;(n=>{function e(i){for(const r of i.splice(0))r.dispose()}n.disposeAll=e})(c0||(c0={}));class pr{constructor(){this._listeners=new Set,this.event=(e,i)=>{this._listeners.add(e);let r=!1;const a=this,o={dispose(){r||(r=!0,a._listeners.delete(e))}};return i&&i.push(o),o}}fire(e){const i=!this._deliveryQueue;this._deliveryQueue||(this._deliveryQueue=[]);for(const r of this._listeners)this._deliveryQueue.push({listener:r,event:e});if(i){for(let r=0;r<this._deliveryQueue.length;r++){const{listener:a,event:o}=this._deliveryQueue[r];a.call(null,o)}this._deliveryQueue=void 0}}dispose(){this._listeners.clear(),this._deliveryQueue&&(this._deliveryQueue=[])}}class U2 extends Error{}class X2{constructor(e){this._ws=new WebSocket(e)}onmessage(e){this._ws.addEventListener("message",i=>e(i.data.toString()))}onopen(e){this._ws.addEventListener("open",e)}onerror(e){this._ws.addEventListener("error",e)}onclose(e){this._ws.addEventListener("close",e)}send(e){this._ws.send(e)}close(){this._ws.close()}}class Y2{constructor(e){this._onCloseEmitter=new pr,this._onReportEmitter=new pr,this._onStdioEmitter=new pr,this._onTestFilesChangedEmitter=new pr,this._onLoadTraceRequestedEmitter=new pr,this._onTestPausedEmitter=new pr,this._lastId=0,this._callbacks=new Map,this._isClosed=!1,this.onClose=this._onCloseEmitter.event,this.onReport=this._onReportEmitter.event,this.onStdio=this._onStdioEmitter.event,this.onTestFilesChanged=this._onTestFilesChangedEmitter.event,this.onLoadTraceRequested=this._onLoadTraceRequestedEmitter.event,this.onTestPaused=this._onTestPausedEmitter.event,this._transport=e,this._transport.onmessage(r=>{const a=JSON.parse(r),{id:o,result:u,error:f,method:d,params:g}=a;if(o){const m=this._callbacks.get(o);if(!m)return;this._callbacks.delete(o),f?m.reject(new Error(f)):m.resolve(u)}else this._dispatchEvent(d,g)});const i=setInterval(()=>this._sendMessage("ping").catch(()=>{}),3e4);this._connectedPromise=new Promise((r,a)=>{this._transport.onopen(r),this._transport.onerror(a)}),this._transport.onclose(()=>{this._isClosed=!0,this._onCloseEmitter.fire(),clearInterval(i);for(const r of this._callbacks.values())r.reject(r.error);this._callbacks.clear()})}isClosed(){return this._isClosed}async _sendMessage(e,i){const r=globalThis.__logForTest;r==null||r({method:e,params:i}),await this._connectedPromise;const a=++this._lastId,o={id:a,method:e,params:i},u=new U2(`${e}: test server connection closed`);return this._transport.send(JSON.stringify(o)),new Promise((f,d)=>{this._callbacks.set(a,{resolve:f,reject:d,error:u})})}_sendMessageNoReply(e,i){this._sendMessage(e,i).catch(()=>{})}_dispatchEvent(e,i){e==="report"?this._onReportEmitter.fire(i):e==="stdio"?this._onStdioEmitter.fire(i):e==="testFilesChanged"?this._onTestFilesChangedEmitter.fire(i):e==="loadTraceRequested"?this._onLoadTraceRequestedEmitter.fire(i):e==="testPaused"&&this._onTestPausedEmitter.fire(i)}async initialize(e){await this._sendMessage("initialize",e)}async ping(e){await this._sendMessage("ping",e)}async pingNoReply(e){this._sendMessageNoReply("ping",e)}async watch(e){await this._sendMessage("watch",e)}watchNoReply(e){this._sendMessageNoReply("watch",e)}async open(e){await this._sendMessage("open",e)}openNoReply(e){this._sendMessageNoReply("open",e)}async resizeTerminal(e){await this._sendMessage("resizeTerminal",e)}resizeTerminalNoReply(e){this._sendMessageNoReply("resizeTerminal",e)}async checkBrowsers(e){return await this._sendMessage("checkBrowsers",e)}async installBrowsers(e){await this._sendMessage("installBrowsers",e)}async runGlobalSetup(e){return await this._sendMessage("runGlobalSetup",e)}async runGlobalTeardown(e){return await this._sendMessage("runGlobalTeardown",e)}async clearCache(e){return await this._sendMessage("clearCache",e)}async listFiles(e){return await this._sendMessage("listFiles",e)}async listTests(e){return await this._sendMessage("listTests",e)}async runTests(e){return await this._sendMessage("runTests",e)}async findRelatedTestFiles(e){return await this._sendMessage("findRelatedTestFiles",e)}async stopTests(e){await this._sendMessage("stopTests",e)}stopTestsNoReply(e){this._sendMessageNoReply("stopTests",e)}async closeGracefully(e){await this._sendMessage("closeGracefully",e)}close(){try{this._transport.close()}catch{}}}const F2=({location:n})=>{const[e,i]=jt("shouldPopulateCanvasFromScreenshot",!1),[r,a]=Cx(),[o,u]=jt("mergeFiles",!1);return b.jsx(nw,{settings:[{type:"select",value:r,set:a,name:"Theme",options:Tx},...n==="ui-mode"?[{type:"check",value:o,set:u,name:"Merge files"}]:[],{type:"check",value:e,set:i,name:"Display canvas content",title:"Attempt to display the captured canvas appearance in the snapshot preview. May not be accurate."}]})};export{j2 as D,Q0 as E,Et as R,il as S,V2 as T,X2 as W,I_ as _,Y2 as a,F2 as b,K2 as c,M2 as d,B2 as e,I2 as f,Ax as g,q2 as h,$2 as i,b as j,ut as k,T_ as l,yt as m,dl as n,ct as o,jt as p,nw as q,R as r,ls as s,X0 as t,gs as u,yx as v};
scripts/node_modules/playwright-core/lib/vite/traceViewer/assets/urlMatch-BYQrIQwR.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const e of document.querySelectorAll('link[rel="modulepreload"]'))s(e);new MutationObserver(e=>{for(const t of e)if(t.type==="childList")for(const o of t.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function n(e){const t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin==="use-credentials"?t.credentials="include":e.crossOrigin==="anonymous"?t.credentials="omit":t.credentials="same-origin",t}function s(e){if(e.ep)return;e.ep=!0;const t=n(e);fetch(e.href,t)}})();function c(i,r){try{return["http:","https:"].includes(new URL(i,r).protocol)}catch{return!1}}export{c as i};
scripts/node_modules/playwright-core/lib/vite/traceViewer/assets/xtermModule-CsJ4vdCR.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
var fe={exports:{}},pe;function be(){return pe||(pe=1,(function(ce,Se){(function(ie,Y){ce.exports=Y()})(globalThis,(()=>(()=>{var ie={4567:function(O,r,a){var l=this&&this.__decorate||function(e,t,o,f){var u,p=arguments.length,c=p<3?t:f===null?f=Object.getOwnPropertyDescriptor(t,o):f;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")c=Reflect.decorate(e,t,o,f);else for(var m=e.length-1;m>=0;m--)(u=e[m])&&(c=(p<3?u(c):p>3?u(t,o,c):u(t,o))||c);return p>3&&c&&Object.defineProperty(t,o,c),c},_=this&&this.__param||function(e,t){return function(o,f){t(o,f,e)}};Object.defineProperty(r,"__esModule",{value:!0}),r.AccessibilityManager=void 0;const n=a(9042),d=a(9924),v=a(844),g=a(4725),h=a(2585),i=a(3656);let s=r.AccessibilityManager=class extends v.Disposable{constructor(e,t,o,f){super(),this._terminal=e,this._coreBrowserService=o,this._renderService=f,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="",this._accessibilityContainer=this._coreBrowserService.mainDocument.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=this._coreBrowserService.mainDocument.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let u=0;u<this._terminal.rows;u++)this._rowElements[u]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[u]);if(this._topBoundaryFocusListener=u=>this._handleBoundaryFocus(u,0),this._bottomBoundaryFocusListener=u=>this._handleBoundaryFocus(u,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions(),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=this._coreBrowserService.mainDocument.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this.register(new d.TimeBasedDebouncer(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this.register(this._terminal.onResize((u=>this._handleResize(u.rows)))),this.register(this._terminal.onRender((u=>this._refreshRows(u.start,u.end)))),this.register(this._terminal.onScroll((()=>this._refreshRows()))),this.register(this._terminal.onA11yChar((u=>this._handleChar(u)))),this.register(this._terminal.onLineFeed((()=>this._handleChar(`
`)))),this.register(this._terminal.onA11yTab((u=>this._handleTab(u)))),this.register(this._terminal.onKey((u=>this._handleKey(u.key)))),this.register(this._terminal.onBlur((()=>this._clearLiveRegion()))),this.register(this._renderService.onDimensionsChange((()=>this._refreshRowsDimensions()))),this.register((0,i.addDisposableDomListener)(document,"selectionchange",(()=>this._handleSelectionChange()))),this.register(this._coreBrowserService.onDprChange((()=>this._refreshRowsDimensions()))),this._refreshRows(),this.register((0,v.toDisposable)((()=>{this._accessibilityContainer.remove(),this._rowElements.length=0})))}_handleTab(e){for(let t=0;t<e;t++)this._handleChar(" ")}_handleChar(e){this._liveRegionLineCount<21&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,e===`
`&&(this._liveRegionLineCount++,this._liveRegionLineCount===21&&(this._liveRegion.textContent+=n.tooMuchOutput)))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(e){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(e)||this._charsToConsume.push(e)}_refreshRows(e,t){this._liveRegionDebouncer.refresh(e,t,this._terminal.rows)}_renderRows(e,t){const o=this._terminal.buffer,f=o.lines.length.toString();for(let u=e;u<=t;u++){const p=o.lines.get(o.ydisp+u),c=[],m=(p==null?void 0:p.translateToString(!0,void 0,void 0,c))||"",y=(o.ydisp+u+1).toString(),k=this._rowElements[u];k&&(m.length===0?(k.innerText=" ",this._rowColumns.set(k,[0,1])):(k.textContent=m,this._rowColumns.set(k,c)),k.setAttribute("aria-posinset",y),k.setAttribute("aria-setsize",f))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(e,t){const o=e.target,f=this._rowElements[t===0?1:this._rowElements.length-2];if(o.getAttribute("aria-posinset")===(t===0?"1":`${this._terminal.buffer.lines.length}`)||e.relatedTarget!==f)return;let u,p;if(t===0?(u=o,p=this._rowElements.pop(),this._rowContainer.removeChild(p)):(u=this._rowElements.shift(),p=o,this._rowContainer.removeChild(u)),u.removeEventListener("focus",this._topBoundaryFocusListener),p.removeEventListener("focus",this._bottomBoundaryFocusListener),t===0){const c=this._createAccessibilityTreeNode();this._rowElements.unshift(c),this._rowContainer.insertAdjacentElement("afterbegin",c)}else{const c=this._createAccessibilityTreeNode();this._rowElements.push(c),this._rowContainer.appendChild(c)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(t===0?-1:1),this._rowElements[t===0?1:this._rowElements.length-2].focus(),e.preventDefault(),e.stopImmediatePropagation()}_handleSelectionChange(){var m;if(this._rowElements.length===0)return;const e=document.getSelection();if(!e)return;if(e.isCollapsed)return void(this._rowContainer.contains(e.anchorNode)&&this._terminal.clearSelection());if(!e.anchorNode||!e.focusNode)return void console.error("anchorNode and/or focusNode are null");let t={node:e.anchorNode,offset:e.anchorOffset},o={node:e.focusNode,offset:e.focusOffset};if((t.node.compareDocumentPosition(o.node)&Node.DOCUMENT_POSITION_PRECEDING||t.node===o.node&&t.offset>o.offset)&&([t,o]=[o,t]),t.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(t={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(t.node))return;const f=this._rowElements.slice(-1)[0];if(o.node.compareDocumentPosition(f)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(o={node:f,offset:((m=f.textContent)==null?void 0:m.length)??0}),!this._rowContainer.contains(o.node))return;const u=({node:y,offset:k})=>{const L=y instanceof Text?y.parentNode:y;let w=parseInt(L==null?void 0:L.getAttribute("aria-posinset"),10)-1;if(isNaN(w))return console.warn("row is invalid. Race condition?"),null;const x=this._rowColumns.get(L);if(!x)return console.warn("columns is null. Race condition?"),null;let B=k<x.length?x[k]:x.slice(-1)[0]+1;return B>=this._terminal.cols&&(++w,B=0),{row:w,column:B}},p=u(t),c=u(o);if(p&&c){if(p.row>c.row||p.row===c.row&&p.column>=c.column)throw new Error("invalid range");this._terminal.select(p.column,p.row,(c.row-p.row)*this._terminal.cols-p.column+c.column)}}_handleResize(e){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let t=this._rowContainer.children.length;t<this._terminal.rows;t++)this._rowElements[t]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[t]);for(;this._rowElements.length>e;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){const e=this._coreBrowserService.mainDocument.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){this._accessibilityContainer.style.width=`${this._renderService.dimensions.css.canvas.width}px`,this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let e=0;e<this._terminal.rows;e++)this._refreshRowDimensions(this._rowElements[e])}}_refreshRowDimensions(e){e.style.height=`${this._renderService.dimensions.css.cell.height}px`}};r.AccessibilityManager=s=l([_(1,h.IInstantiationService),_(2,g.ICoreBrowserService),_(3,g.IRenderService)],s)},3614:(O,r)=>{function a(d){return d.replace(/\r?\n/g,"\r")}function l(d,v){return v?"\x1B[200~"+d+"\x1B[201~":d}function _(d,v,g,h){d=l(d=a(d),g.decPrivateModes.bracketedPasteMode&&h.rawOptions.ignoreBracketedPasteMode!==!0),g.triggerDataEvent(d,!0),v.value=""}function n(d,v,g){const h=g.getBoundingClientRect(),i=d.clientX-h.left-10,s=d.clientY-h.top-10;v.style.width="20px",v.style.height="20px",v.style.left=`${i}px`,v.style.top=`${s}px`,v.style.zIndex="1000",v.focus()}Object.defineProperty(r,"__esModule",{value:!0}),r.rightClickHandler=r.moveTextAreaUnderMouseCursor=r.paste=r.handlePasteEvent=r.copyHandler=r.bracketTextForPaste=r.prepareTextForTerminal=void 0,r.prepareTextForTerminal=a,r.bracketTextForPaste=l,r.copyHandler=function(d,v){d.clipboardData&&d.clipboardData.setData("text/plain",v.selectionText),d.preventDefault()},r.handlePasteEvent=function(d,v,g,h){d.stopPropagation(),d.clipboardData&&_(d.clipboardData.getData("text/plain"),v,g,h)},r.paste=_,r.moveTextAreaUnderMouseCursor=n,r.rightClickHandler=function(d,v,g,h,i){n(d,v,g),i&&h.rightClickSelect(d),v.value=h.selectionText,v.select()}},7239:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ColorContrastCache=void 0;const l=a(1505);r.ColorContrastCache=class{constructor(){this._color=new l.TwoKeyMap,this._css=new l.TwoKeyMap}setCss(_,n,d){this._css.set(_,n,d)}getCss(_,n){return this._css.get(_,n)}setColor(_,n,d){this._color.set(_,n,d)}getColor(_,n){return this._color.get(_,n)}clear(){this._color.clear(),this._css.clear()}}},3656:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.addDisposableDomListener=void 0,r.addDisposableDomListener=function(a,l,_,n){a.addEventListener(l,_,n);let d=!1;return{dispose:()=>{d||(d=!0,a.removeEventListener(l,_,n))}}}},3551:function(O,r,a){var l=this&&this.__decorate||function(s,e,t,o){var f,u=arguments.length,p=u<3?e:o===null?o=Object.getOwnPropertyDescriptor(e,t):o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")p=Reflect.decorate(s,e,t,o);else for(var c=s.length-1;c>=0;c--)(f=s[c])&&(p=(u<3?f(p):u>3?f(e,t,p):f(e,t))||p);return u>3&&p&&Object.defineProperty(e,t,p),p},_=this&&this.__param||function(s,e){return function(t,o){e(t,o,s)}};Object.defineProperty(r,"__esModule",{value:!0}),r.Linkifier=void 0;const n=a(3656),d=a(8460),v=a(844),g=a(2585),h=a(4725);let i=r.Linkifier=class extends v.Disposable{get currentLink(){return this._currentLink}constructor(s,e,t,o,f){super(),this._element=s,this._mouseService=e,this._renderService=t,this._bufferService=o,this._linkProviderService=f,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this.register(new d.EventEmitter),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this.register(new d.EventEmitter),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this.register((0,v.getDisposeArrayDisposable)(this._linkCacheDisposables)),this.register((0,v.toDisposable)((()=>{var u;this._lastMouseEvent=void 0,(u=this._activeProviderReplies)==null||u.clear()}))),this.register(this._bufferService.onResize((()=>{this._clearCurrentLink(),this._wasResized=!0}))),this.register((0,n.addDisposableDomListener)(this._element,"mouseleave",(()=>{this._isMouseOut=!0,this._clearCurrentLink()}))),this.register((0,n.addDisposableDomListener)(this._element,"mousemove",this._handleMouseMove.bind(this))),this.register((0,n.addDisposableDomListener)(this._element,"mousedown",this._handleMouseDown.bind(this))),this.register((0,n.addDisposableDomListener)(this._element,"mouseup",this._handleMouseUp.bind(this)))}_handleMouseMove(s){this._lastMouseEvent=s;const e=this._positionFromMouseEvent(s,this._element,this._mouseService);if(!e)return;this._isMouseOut=!1;const t=s.composedPath();for(let o=0;o<t.length;o++){const f=t[o];if(f.classList.contains("xterm"))break;if(f.classList.contains("xterm-hover"))return}this._lastBufferCell&&e.x===this._lastBufferCell.x&&e.y===this._lastBufferCell.y||(this._handleHover(e),this._lastBufferCell=e)}_handleHover(s){if(this._activeLine!==s.y||this._wasResized)return this._clearCurrentLink(),this._askForLink(s,!1),void(this._wasResized=!1);this._currentLink&&this._linkAtPosition(this._currentLink.link,s)||(this._clearCurrentLink(),this._askForLink(s,!0))}_askForLink(s,e){var o,f;this._activeProviderReplies&&e||((o=this._activeProviderReplies)==null||o.forEach((u=>{u==null||u.forEach((p=>{p.link.dispose&&p.link.dispose()}))})),this._activeProviderReplies=new Map,this._activeLine=s.y);let t=!1;for(const[u,p]of this._linkProviderService.linkProviders.entries())e?(f=this._activeProviderReplies)!=null&&f.get(u)&&(t=this._checkLinkProviderResult(u,s,t)):p.provideLinks(s.y,(c=>{var y,k;if(this._isMouseOut)return;const m=c==null?void 0:c.map((L=>({link:L})));(y=this._activeProviderReplies)==null||y.set(u,m),t=this._checkLinkProviderResult(u,s,t),((k=this._activeProviderReplies)==null?void 0:k.size)===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(s.y,this._activeProviderReplies)}))}_removeIntersectingLinks(s,e){const t=new Set;for(let o=0;o<e.size;o++){const f=e.get(o);if(f)for(let u=0;u<f.length;u++){const p=f[u],c=p.link.range.start.y<s?0:p.link.range.start.x,m=p.link.range.end.y>s?this._bufferService.cols:p.link.range.end.x;for(let y=c;y<=m;y++){if(t.has(y)){f.splice(u--,1);break}t.add(y)}}}}_checkLinkProviderResult(s,e,t){var u;if(!this._activeProviderReplies)return t;const o=this._activeProviderReplies.get(s);let f=!1;for(let p=0;p<s;p++)this._activeProviderReplies.has(p)&&!this._activeProviderReplies.get(p)||(f=!0);if(!f&&o){const p=o.find((c=>this._linkAtPosition(c.link,e)));p&&(t=!0,this._handleNewLink(p))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!t)for(let p=0;p<this._activeProviderReplies.size;p++){const c=(u=this._activeProviderReplies.get(p))==null?void 0:u.find((m=>this._linkAtPosition(m.link,e)));if(c){t=!0,this._handleNewLink(c);break}}return t}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(s){if(!this._currentLink)return;const e=this._positionFromMouseEvent(s,this._element,this._mouseService);e&&this._mouseDownLink===this._currentLink&&this._linkAtPosition(this._currentLink.link,e)&&this._currentLink.link.activate(s,this._currentLink.link.text)}_clearCurrentLink(s,e){this._currentLink&&this._lastMouseEvent&&(!s||!e||this._currentLink.link.range.start.y>=s&&this._currentLink.link.range.end.y<=e)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,(0,v.disposeArray)(this._linkCacheDisposables))}_handleNewLink(s){if(!this._lastMouseEvent)return;const e=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);e&&this._linkAtPosition(s.link,e)&&(this._currentLink=s,this._currentLink.state={decorations:{underline:s.link.decorations===void 0||s.link.decorations.underline,pointerCursor:s.link.decorations===void 0||s.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,s.link,this._lastMouseEvent),s.link.decorations={},Object.defineProperties(s.link.decorations,{pointerCursor:{get:()=>{var t,o;return(o=(t=this._currentLink)==null?void 0:t.state)==null?void 0:o.decorations.pointerCursor},set:t=>{var o;(o=this._currentLink)!=null&&o.state&&this._currentLink.state.decorations.pointerCursor!==t&&(this._currentLink.state.decorations.pointerCursor=t,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",t))}},underline:{get:()=>{var t,o;return(o=(t=this._currentLink)==null?void 0:t.state)==null?void 0:o.decorations.underline},set:t=>{var o,f,u;(o=this._currentLink)!=null&&o.state&&((u=(f=this._currentLink)==null?void 0:f.state)==null?void 0:u.decorations.underline)!==t&&(this._currentLink.state.decorations.underline=t,this._currentLink.state.isHovered&&this._fireUnderlineEvent(s.link,t))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange((t=>{if(!this._currentLink)return;const o=t.start===0?0:t.start+1+this._bufferService.buffer.ydisp,f=this._bufferService.buffer.ydisp+1+t.end;if(this._currentLink.link.range.start.y>=o&&this._currentLink.link.range.end.y<=f&&(this._clearCurrentLink(o,f),this._lastMouseEvent)){const u=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);u&&this._askForLink(u,!1)}}))))}_linkHover(s,e,t){var o;(o=this._currentLink)!=null&&o.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!0),this._currentLink.state.decorations.pointerCursor&&s.classList.add("xterm-cursor-pointer")),e.hover&&e.hover(t,e.text)}_fireUnderlineEvent(s,e){const t=s.range,o=this._bufferService.buffer.ydisp,f=this._createLinkUnderlineEvent(t.start.x-1,t.start.y-o-1,t.end.x,t.end.y-o-1,void 0);(e?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(f)}_linkLeave(s,e,t){var o;(o=this._currentLink)!=null&&o.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!1),this._currentLink.state.decorations.pointerCursor&&s.classList.remove("xterm-cursor-pointer")),e.leave&&e.leave(t,e.text)}_linkAtPosition(s,e){const t=s.range.start.y*this._bufferService.cols+s.range.start.x,o=s.range.end.y*this._bufferService.cols+s.range.end.x,f=e.y*this._bufferService.cols+e.x;return t<=f&&f<=o}_positionFromMouseEvent(s,e,t){const o=t.getCoords(s,e,this._bufferService.cols,this._bufferService.rows);if(o)return{x:o[0],y:o[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(s,e,t,o,f){return{x1:s,y1:e,x2:t,y2:o,cols:this._bufferService.cols,fg:f}}};r.Linkifier=i=l([_(1,h.IMouseService),_(2,h.IRenderService),_(3,g.IBufferService),_(4,h.ILinkProviderService)],i)},9042:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.tooMuchOutput=r.promptLabel=void 0,r.promptLabel="Terminal input",r.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},3730:function(O,r,a){var l=this&&this.__decorate||function(h,i,s,e){var t,o=arguments.length,f=o<3?i:e===null?e=Object.getOwnPropertyDescriptor(i,s):e;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")f=Reflect.decorate(h,i,s,e);else for(var u=h.length-1;u>=0;u--)(t=h[u])&&(f=(o<3?t(f):o>3?t(i,s,f):t(i,s))||f);return o>3&&f&&Object.defineProperty(i,s,f),f},_=this&&this.__param||function(h,i){return function(s,e){i(s,e,h)}};Object.defineProperty(r,"__esModule",{value:!0}),r.OscLinkProvider=void 0;const n=a(511),d=a(2585);let v=r.OscLinkProvider=class{constructor(h,i,s){this._bufferService=h,this._optionsService=i,this._oscLinkService=s}provideLinks(h,i){var m;const s=this._bufferService.buffer.lines.get(h-1);if(!s)return void i(void 0);const e=[],t=this._optionsService.rawOptions.linkHandler,o=new n.CellData,f=s.getTrimmedLength();let u=-1,p=-1,c=!1;for(let y=0;y<f;y++)if(p!==-1||s.hasContent(y)){if(s.loadCell(y,o),o.hasExtendedAttrs()&&o.extended.urlId){if(p===-1){p=y,u=o.extended.urlId;continue}c=o.extended.urlId!==u}else p!==-1&&(c=!0);if(c||p!==-1&&y===f-1){const k=(m=this._oscLinkService.getLinkData(u))==null?void 0:m.uri;if(k){const L={start:{x:p+1,y:h},end:{x:y+(c||y!==f-1?0:1),y:h}};let w=!1;if(!(t!=null&&t.allowNonHttpProtocols))try{const x=new URL(k);["http:","https:"].includes(x.protocol)||(w=!0)}catch{w=!0}w||e.push({text:k,range:L,activate:(x,B)=>t?t.activate(x,B,L):g(0,B),hover:(x,B)=>{var P;return(P=t==null?void 0:t.hover)==null?void 0:P.call(t,x,B,L)},leave:(x,B)=>{var P;return(P=t==null?void 0:t.leave)==null?void 0:P.call(t,x,B,L)}})}c=!1,o.hasExtendedAttrs()&&o.extended.urlId?(p=y,u=o.extended.urlId):(p=-1,u=-1)}}i(e)}};function g(h,i){if(confirm(`Do you want to navigate to ${i}?
WARNING: This link could potentially be dangerous`)){const s=window.open();if(s){try{s.opener=null}catch{}s.location.href=i}else console.warn("Opening link blocked as opener could not be cleared")}}r.OscLinkProvider=v=l([_(0,d.IBufferService),_(1,d.IOptionsService),_(2,d.IOscLinkService)],v)},6193:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.RenderDebouncer=void 0,r.RenderDebouncer=class{constructor(a,l){this._renderCallback=a,this._coreBrowserService=l,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(a){return this._refreshCallbacks.push(a),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._innerRefresh()))),this._animationFrame}refresh(a,l,_){this._rowCount=_,a=a!==void 0?a:0,l=l!==void 0?l:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,a):a,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,l):l,this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._innerRefresh())))}_innerRefresh(){if(this._animationFrame=void 0,this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return void this._runRefreshCallbacks();const a=Math.max(this._rowStart,0),l=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(a,l),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(const a of this._refreshCallbacks)a(0);this._refreshCallbacks=[]}}},3236:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Terminal=void 0;const l=a(3614),_=a(3656),n=a(3551),d=a(9042),v=a(3730),g=a(1680),h=a(3107),i=a(5744),s=a(2950),e=a(1296),t=a(428),o=a(4269),f=a(5114),u=a(8934),p=a(3230),c=a(9312),m=a(4725),y=a(6731),k=a(8055),L=a(8969),w=a(8460),x=a(844),B=a(6114),P=a(8437),U=a(2584),I=a(7399),S=a(5941),b=a(9074),E=a(2585),D=a(5435),T=a(4567),H=a(779);class N extends L.CoreTerminal{get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}constructor(R={}){super(R),this.browser=B,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this.register(new x.MutableDisposable),this._onCursorMove=this.register(new w.EventEmitter),this.onCursorMove=this._onCursorMove.event,this._onKey=this.register(new w.EventEmitter),this.onKey=this._onKey.event,this._onRender=this.register(new w.EventEmitter),this.onRender=this._onRender.event,this._onSelectionChange=this.register(new w.EventEmitter),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this.register(new w.EventEmitter),this.onTitleChange=this._onTitleChange.event,this._onBell=this.register(new w.EventEmitter),this.onBell=this._onBell.event,this._onFocus=this.register(new w.EventEmitter),this._onBlur=this.register(new w.EventEmitter),this._onA11yCharEmitter=this.register(new w.EventEmitter),this._onA11yTabEmitter=this.register(new w.EventEmitter),this._onWillOpen=this.register(new w.EventEmitter),this._setup(),this._decorationService=this._instantiationService.createInstance(b.DecorationService),this._instantiationService.setService(E.IDecorationService,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(H.LinkProviderService),this._instantiationService.setService(m.ILinkProviderService,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(v.OscLinkProvider)),this.register(this._inputHandler.onRequestBell((()=>this._onBell.fire()))),this.register(this._inputHandler.onRequestRefreshRows(((C,M)=>this.refresh(C,M)))),this.register(this._inputHandler.onRequestSendFocus((()=>this._reportFocus()))),this.register(this._inputHandler.onRequestReset((()=>this.reset()))),this.register(this._inputHandler.onRequestWindowsOptionsReport((C=>this._reportWindowsOptions(C)))),this.register(this._inputHandler.onColor((C=>this._handleColorEvent(C)))),this.register((0,w.forwardEvent)(this._inputHandler.onCursorMove,this._onCursorMove)),this.register((0,w.forwardEvent)(this._inputHandler.onTitleChange,this._onTitleChange)),this.register((0,w.forwardEvent)(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this.register((0,w.forwardEvent)(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this.register(this._bufferService.onResize((C=>this._afterResize(C.cols,C.rows)))),this.register((0,x.toDisposable)((()=>{var C,M;this._customKeyEventHandler=void 0,(M=(C=this.element)==null?void 0:C.parentNode)==null||M.removeChild(this.element)})))}_handleColorEvent(R){if(this._themeService)for(const C of R){let M,A="";switch(C.index){case 256:M="foreground",A="10";break;case 257:M="background",A="11";break;case 258:M="cursor",A="12";break;default:M="ansi",A="4;"+C.index}switch(C.type){case 0:const W=k.color.toColorRGB(M==="ansi"?this._themeService.colors.ansi[C.index]:this._themeService.colors[M]);this.coreService.triggerDataEvent(`${U.C0.ESC}]${A};${(0,S.toRgbString)(W)}${U.C1_ESCAPED.ST}`);break;case 1:if(M==="ansi")this._themeService.modifyColors((F=>F.ansi[C.index]=k.channels.toColor(...C.color)));else{const F=M;this._themeService.modifyColors((z=>z[F]=k.channels.toColor(...C.color)))}break;case 2:this._themeService.restoreColor(C.index)}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(R){R?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(T.AccessibilityManager,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(R){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(U.C0.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){var R;return(R=this.textarea)==null?void 0:R.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(U.C0.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;const R=this.buffer.ybase+this.buffer.y,C=this.buffer.lines.get(R);if(!C)return;const M=Math.min(this.buffer.x,this.cols-1),A=this._renderService.dimensions.css.cell.height,W=C.getWidth(M),F=this._renderService.dimensions.css.cell.width*W,z=this.buffer.y*this._renderService.dimensions.css.cell.height,q=M*this._renderService.dimensions.css.cell.width;this.textarea.style.left=q+"px",this.textarea.style.top=z+"px",this.textarea.style.width=F+"px",this.textarea.style.height=A+"px",this.textarea.style.lineHeight=A+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this.register((0,_.addDisposableDomListener)(this.element,"copy",(C=>{this.hasSelection()&&(0,l.copyHandler)(C,this._selectionService)})));const R=C=>(0,l.handlePasteEvent)(C,this.textarea,this.coreService,this.optionsService);this.register((0,_.addDisposableDomListener)(this.textarea,"paste",R)),this.register((0,_.addDisposableDomListener)(this.element,"paste",R)),B.isFirefox?this.register((0,_.addDisposableDomListener)(this.element,"mousedown",(C=>{C.button===2&&(0,l.rightClickHandler)(C,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)}))):this.register((0,_.addDisposableDomListener)(this.element,"contextmenu",(C=>{(0,l.rightClickHandler)(C,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)}))),B.isLinux&&this.register((0,_.addDisposableDomListener)(this.element,"auxclick",(C=>{C.button===1&&(0,l.moveTextAreaUnderMouseCursor)(C,this.textarea,this.screenElement)})))}_bindKeys(){this.register((0,_.addDisposableDomListener)(this.textarea,"keyup",(R=>this._keyUp(R)),!0)),this.register((0,_.addDisposableDomListener)(this.textarea,"keydown",(R=>this._keyDown(R)),!0)),this.register((0,_.addDisposableDomListener)(this.textarea,"keypress",(R=>this._keyPress(R)),!0)),this.register((0,_.addDisposableDomListener)(this.textarea,"compositionstart",(()=>this._compositionHelper.compositionstart()))),this.register((0,_.addDisposableDomListener)(this.textarea,"compositionupdate",(R=>this._compositionHelper.compositionupdate(R)))),this.register((0,_.addDisposableDomListener)(this.textarea,"compositionend",(()=>this._compositionHelper.compositionend()))),this.register((0,_.addDisposableDomListener)(this.textarea,"input",(R=>this._inputEvent(R)),!0)),this.register(this.onRender((()=>this._compositionHelper.updateCompositionElements())))}open(R){var M;if(!R)throw new Error("Terminal requires a parent element.");if(R.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),((M=this.element)==null?void 0:M.ownerDocument.defaultView)&&this._coreBrowserService)return void(this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView));this._document=R.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),R.appendChild(this.element);const C=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),C.appendChild(this._viewportElement),this._viewportScrollArea=this._document.createElement("div"),this._viewportScrollArea.classList.add("xterm-scroll-area"),this._viewportElement.appendChild(this._viewportScrollArea),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this.register((0,_.addDisposableDomListener)(this.screenElement,"mousemove",(A=>this.updateCursorStyle(A)))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),C.appendChild(this.screenElement),this.textarea=this._document.createElement("textarea"),this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",d.promptLabel),B.isChromeOS||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._coreBrowserService=this.register(this._instantiationService.createInstance(f.CoreBrowserService,this.textarea,R.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(m.ICoreBrowserService,this._coreBrowserService),this.register((0,_.addDisposableDomListener)(this.textarea,"focus",(A=>this._handleTextAreaFocus(A)))),this.register((0,_.addDisposableDomListener)(this.textarea,"blur",(()=>this._handleTextAreaBlur()))),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(t.CharSizeService,this._document,this._helperContainer),this._instantiationService.setService(m.ICharSizeService,this._charSizeService),this._themeService=this._instantiationService.createInstance(y.ThemeService),this._instantiationService.setService(m.IThemeService,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(o.CharacterJoinerService),this._instantiationService.setService(m.ICharacterJoinerService,this._characterJoinerService),this._renderService=this.register(this._instantiationService.createInstance(p.RenderService,this.rows,this.screenElement)),this._instantiationService.setService(m.IRenderService,this._renderService),this.register(this._renderService.onRenderedViewportChange((A=>this._onRender.fire(A)))),this.onResize((A=>this._renderService.resize(A.cols,A.rows))),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(s.CompositionHelper,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(u.MouseService),this._instantiationService.setService(m.IMouseService,this._mouseService),this.linkifier=this.register(this._instantiationService.createInstance(n.Linkifier,this.screenElement)),this.element.appendChild(C);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this.viewport=this._instantiationService.createInstance(g.Viewport,this._viewportElement,this._viewportScrollArea),this.viewport.onRequestScrollLines((A=>this.scrollLines(A.amount,A.suppressScrollEvent,1))),this.register(this._inputHandler.onRequestSyncScrollBar((()=>this.viewport.syncScrollArea()))),this.register(this.viewport),this.register(this.onCursorMove((()=>{this._renderService.handleCursorMove(),this._syncTextArea()}))),this.register(this.onResize((()=>this._renderService.handleResize(this.cols,this.rows)))),this.register(this.onBlur((()=>this._renderService.handleBlur()))),this.register(this.onFocus((()=>this._renderService.handleFocus()))),this.register(this._renderService.onDimensionsChange((()=>this.viewport.syncScrollArea()))),this._selectionService=this.register(this._instantiationService.createInstance(c.SelectionService,this.element,this.screenElement,this.linkifier)),this._instantiationService.setService(m.ISelectionService,this._selectionService),this.register(this._selectionService.onRequestScrollLines((A=>this.scrollLines(A.amount,A.suppressScrollEvent)))),this.register(this._selectionService.onSelectionChange((()=>this._onSelectionChange.fire()))),this.register(this._selectionService.onRequestRedraw((A=>this._renderService.handleSelectionChanged(A.start,A.end,A.columnSelectMode)))),this.register(this._selectionService.onLinuxMouseSelection((A=>{this.textarea.value=A,this.textarea.focus(),this.textarea.select()}))),this.register(this._onScroll.event((A=>{this.viewport.syncScrollArea(),this._selectionService.refresh()}))),this.register((0,_.addDisposableDomListener)(this._viewportElement,"scroll",(()=>this._selectionService.refresh()))),this.register(this._instantiationService.createInstance(h.BufferDecorationRenderer,this.screenElement)),this.register((0,_.addDisposableDomListener)(this.element,"mousedown",(A=>this._selectionService.handleMouseDown(A)))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(T.AccessibilityManager,this)),this.register(this.optionsService.onSpecificOptionChange("screenReaderMode",(A=>this._handleScreenReaderModeOptionChange(A)))),this.options.overviewRulerWidth&&(this._overviewRulerRenderer=this.register(this._instantiationService.createInstance(i.OverviewRulerRenderer,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRulerWidth",(A=>{!this._overviewRulerRenderer&&A&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this.register(this._instantiationService.createInstance(i.OverviewRulerRenderer,this._viewportElement,this.screenElement)))})),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(e.DomRenderer,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){const R=this,C=this.element;function M(F){const z=R._mouseService.getMouseReportCoords(F,R.screenElement);if(!z)return!1;let q,V;switch(F.overrideType||F.type){case"mousemove":V=32,F.buttons===void 0?(q=3,F.button!==void 0&&(q=F.button<3?F.button:3)):q=1&F.buttons?0:4&F.buttons?1:2&F.buttons?2:3;break;case"mouseup":V=0,q=F.button<3?F.button:3;break;case"mousedown":V=1,q=F.button<3?F.button:3;break;case"wheel":if(R._customWheelEventHandler&&R._customWheelEventHandler(F)===!1||R.viewport.getLinesScrolled(F)===0)return!1;V=F.deltaY<0?0:1,q=4;break;default:return!1}return!(V===void 0||q===void 0||q>4)&&R.coreMouseService.triggerMouseEvent({col:z.col,row:z.row,x:z.x,y:z.y,button:q,action:V,ctrl:F.ctrlKey,alt:F.altKey,shift:F.shiftKey})}const A={mouseup:null,wheel:null,mousedrag:null,mousemove:null},W={mouseup:F=>(M(F),F.buttons||(this._document.removeEventListener("mouseup",A.mouseup),A.mousedrag&&this._document.removeEventListener("mousemove",A.mousedrag)),this.cancel(F)),wheel:F=>(M(F),this.cancel(F,!0)),mousedrag:F=>{F.buttons&&M(F)},mousemove:F=>{F.buttons||M(F)}};this.register(this.coreMouseService.onProtocolChange((F=>{F?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(F)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),8&F?A.mousemove||(C.addEventListener("mousemove",W.mousemove),A.mousemove=W.mousemove):(C.removeEventListener("mousemove",A.mousemove),A.mousemove=null),16&F?A.wheel||(C.addEventListener("wheel",W.wheel,{passive:!1}),A.wheel=W.wheel):(C.removeEventListener("wheel",A.wheel),A.wheel=null),2&F?A.mouseup||(A.mouseup=W.mouseup):(this._document.removeEventListener("mouseup",A.mouseup),A.mouseup=null),4&F?A.mousedrag||(A.mousedrag=W.mousedrag):(this._document.removeEventListener("mousemove",A.mousedrag),A.mousedrag=null)}))),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this.register((0,_.addDisposableDomListener)(C,"mousedown",(F=>{if(F.preventDefault(),this.focus(),this.coreMouseService.areMouseEventsActive&&!this._selectionService.shouldForceSelection(F))return M(F),A.mouseup&&this._document.addEventListener("mouseup",A.mouseup),A.mousedrag&&this._document.addEventListener("mousemove",A.mousedrag),this.cancel(F)}))),this.register((0,_.addDisposableDomListener)(C,"wheel",(F=>{if(!A.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(F)===!1)return!1;if(!this.buffer.hasScrollback){const z=this.viewport.getLinesScrolled(F);if(z===0)return;const q=U.C0.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(F.deltaY<0?"A":"B");let V="";for(let X=0;X<Math.abs(z);X++)V+=q;return this.coreService.triggerDataEvent(V,!0),this.cancel(F,!0)}return this.viewport.handleWheel(F)?this.cancel(F):void 0}}),{passive:!1})),this.register((0,_.addDisposableDomListener)(C,"touchstart",(F=>{if(!this.coreMouseService.areMouseEventsActive)return this.viewport.handleTouchStart(F),this.cancel(F)}),{passive:!0})),this.register((0,_.addDisposableDomListener)(C,"touchmove",(F=>{if(!this.coreMouseService.areMouseEventsActive)return this.viewport.handleTouchMove(F)?void 0:this.cancel(F)}),{passive:!1}))}refresh(R,C){var M;(M=this._renderService)==null||M.refreshRows(R,C)}updateCursorStyle(R){var C;(C=this._selectionService)!=null&&C.shouldColumnSelect(R)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(R,C,M=0){var A;M===1?(super.scrollLines(R,C,M),this.refresh(0,this.rows-1)):(A=this.viewport)==null||A.scrollLines(R)}paste(R){(0,l.paste)(R,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(R){this._customKeyEventHandler=R}attachCustomWheelEventHandler(R){this._customWheelEventHandler=R}registerLinkProvider(R){return this._linkProviderService.registerLinkProvider(R)}registerCharacterJoiner(R){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");const C=this._characterJoinerService.register(R);return this.refresh(0,this.rows-1),C}deregisterCharacterJoiner(R){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(R)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(R){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+R)}registerDecoration(R){return this._decorationService.registerDecoration(R)}hasSelection(){return!!this._selectionService&&this._selectionService.hasSelection}select(R,C,M){this._selectionService.setSelection(R,C,M)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(this._selectionService&&this._selectionService.hasSelection)return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){var R;(R=this._selectionService)==null||R.clearSelection()}selectAll(){var R;(R=this._selectionService)==null||R.selectAll()}selectLines(R,C){var M;(M=this._selectionService)==null||M.selectLines(R,C)}_keyDown(R){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(R)===!1)return!1;const C=this.browser.isMac&&this.options.macOptionIsMeta&&R.altKey;if(!C&&!this._compositionHelper.keydown(R))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(),!1;C||R.key!=="Dead"&&R.key!=="AltGraph"||(this._unprocessedDeadKey=!0);const M=(0,I.evaluateKeyboardEvent)(R,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(R),M.type===3||M.type===2){const A=this.rows-1;return this.scrollLines(M.type===2?-A:A),this.cancel(R,!0)}return M.type===1&&this.selectAll(),!!this._isThirdLevelShift(this.browser,R)||(M.cancel&&this.cancel(R,!0),!M.key||!!(R.key&&!R.ctrlKey&&!R.altKey&&!R.metaKey&&R.key.length===1&&R.key.charCodeAt(0)>=65&&R.key.charCodeAt(0)<=90)||(this._unprocessedDeadKey?(this._unprocessedDeadKey=!1,!0):(M.key!==U.C0.ETX&&M.key!==U.C0.CR||(this.textarea.value=""),this._onKey.fire({key:M.key,domEvent:R}),this._showCursor(),this.coreService.triggerDataEvent(M.key,!0),!this.optionsService.rawOptions.screenReaderMode||R.altKey||R.ctrlKey?this.cancel(R,!0):void(this._keyDownHandled=!0))))}_isThirdLevelShift(R,C){const M=R.isMac&&!this.options.macOptionIsMeta&&C.altKey&&!C.ctrlKey&&!C.metaKey||R.isWindows&&C.altKey&&C.ctrlKey&&!C.metaKey||R.isWindows&&C.getModifierState("AltGraph");return C.type==="keypress"?M:M&&(!C.keyCode||C.keyCode>47)}_keyUp(R){this._keyDownSeen=!1,this._customKeyEventHandler&&this._customKeyEventHandler(R)===!1||((function(C){return C.keyCode===16||C.keyCode===17||C.keyCode===18})(R)||this.focus(),this.updateCursorStyle(R),this._keyPressHandled=!1)}_keyPress(R){let C;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(R)===!1)return!1;if(this.cancel(R),R.charCode)C=R.charCode;else if(R.which===null||R.which===void 0)C=R.keyCode;else{if(R.which===0||R.charCode===0)return!1;C=R.which}return!(!C||(R.altKey||R.ctrlKey||R.metaKey)&&!this._isThirdLevelShift(this.browser,R)||(C=String.fromCharCode(C),this._onKey.fire({key:C,domEvent:R}),this._showCursor(),this.coreService.triggerDataEvent(C,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,0))}_inputEvent(R){if(R.data&&R.inputType==="insertText"&&(!R.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;const C=R.data;return this.coreService.triggerDataEvent(C,!0),this.cancel(R),!0}return!1}resize(R,C){R!==this.cols||C!==this.rows?super.resize(R,C):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()}_afterResize(R,C){var M,A;(M=this._charSizeService)==null||M.measure(),(A=this.viewport)==null||A.syncScrollArea(!0)}clear(){var R;if(this.buffer.ybase!==0||this.buffer.y!==0){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let C=1;C<this.rows;C++)this.buffer.lines.push(this.buffer.getBlankLine(P.DEFAULT_ATTR_DATA));this._onScroll.fire({position:this.buffer.ydisp,source:0}),(R=this.viewport)==null||R.reset(),this.refresh(0,this.rows-1)}}reset(){var C,M;this.options.rows=this.rows,this.options.cols=this.cols;const R=this._customKeyEventHandler;this._setup(),super.reset(),(C=this._selectionService)==null||C.reset(),this._decorationService.reset(),(M=this.viewport)==null||M.reset(),this._customKeyEventHandler=R,this.refresh(0,this.rows-1)}clearTextureAtlas(){var R;(R=this._renderService)==null||R.clearTextureAtlas()}_reportFocus(){var R;(R=this.element)!=null&&R.classList.contains("focus")?this.coreService.triggerDataEvent(U.C0.ESC+"[I"):this.coreService.triggerDataEvent(U.C0.ESC+"[O")}_reportWindowsOptions(R){if(this._renderService)switch(R){case D.WindowsOptionsReportType.GET_WIN_SIZE_PIXELS:const C=this._renderService.dimensions.css.canvas.width.toFixed(0),M=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${U.C0.ESC}[4;${M};${C}t`);break;case D.WindowsOptionsReportType.GET_CELL_SIZE_PIXELS:const A=this._renderService.dimensions.css.cell.width.toFixed(0),W=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${U.C0.ESC}[6;${W};${A}t`)}}cancel(R,C){if(this.options.cancelEvents||C)return R.preventDefault(),R.stopPropagation(),!1}}r.Terminal=N},9924:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.TimeBasedDebouncer=void 0,r.TimeBasedDebouncer=class{constructor(a,l=1e3){this._renderCallback=a,this._debounceThresholdMS=l,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(a,l,_){this._rowCount=_,a=a!==void 0?a:0,l=l!==void 0?l:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,a):a,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,l):l;const n=Date.now();if(n-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=n,this._innerRefresh();else if(!this._additionalRefreshRequested){const d=n-this._lastRefreshMs,v=this._debounceThresholdMS-d;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout((()=>{this._lastRefreshMs=Date.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0}),v)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;const a=Math.max(this._rowStart,0),l=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(a,l)}}},1680:function(O,r,a){var l=this&&this.__decorate||function(s,e,t,o){var f,u=arguments.length,p=u<3?e:o===null?o=Object.getOwnPropertyDescriptor(e,t):o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")p=Reflect.decorate(s,e,t,o);else for(var c=s.length-1;c>=0;c--)(f=s[c])&&(p=(u<3?f(p):u>3?f(e,t,p):f(e,t))||p);return u>3&&p&&Object.defineProperty(e,t,p),p},_=this&&this.__param||function(s,e){return function(t,o){e(t,o,s)}};Object.defineProperty(r,"__esModule",{value:!0}),r.Viewport=void 0;const n=a(3656),d=a(4725),v=a(8460),g=a(844),h=a(2585);let i=r.Viewport=class extends g.Disposable{constructor(s,e,t,o,f,u,p,c){super(),this._viewportElement=s,this._scrollArea=e,this._bufferService=t,this._optionsService=o,this._charSizeService=f,this._renderService=u,this._coreBrowserService=p,this.scrollBarWidth=0,this._currentRowHeight=0,this._currentDeviceCellHeight=0,this._lastRecordedBufferLength=0,this._lastRecordedViewportHeight=0,this._lastRecordedBufferHeight=0,this._lastTouchY=0,this._lastScrollTop=0,this._wheelPartialScroll=0,this._refreshAnimationFrame=null,this._ignoreNextScrollEvent=!1,this._smoothScrollState={startTime:0,origin:-1,target:-1},this._onRequestScrollLines=this.register(new v.EventEmitter),this.onRequestScrollLines=this._onRequestScrollLines.event,this.scrollBarWidth=this._viewportElement.offsetWidth-this._scrollArea.offsetWidth||15,this.register((0,n.addDisposableDomListener)(this._viewportElement,"scroll",this._handleScroll.bind(this))),this._activeBuffer=this._bufferService.buffer,this.register(this._bufferService.buffers.onBufferActivate((m=>this._activeBuffer=m.activeBuffer))),this._renderDimensions=this._renderService.dimensions,this.register(this._renderService.onDimensionsChange((m=>this._renderDimensions=m))),this._handleThemeChange(c.colors),this.register(c.onChangeColors((m=>this._handleThemeChange(m)))),this.register(this._optionsService.onSpecificOptionChange("scrollback",(()=>this.syncScrollArea()))),setTimeout((()=>this.syncScrollArea()))}_handleThemeChange(s){this._viewportElement.style.backgroundColor=s.background.css}reset(){this._currentRowHeight=0,this._currentDeviceCellHeight=0,this._lastRecordedBufferLength=0,this._lastRecordedViewportHeight=0,this._lastRecordedBufferHeight=0,this._lastTouchY=0,this._lastScrollTop=0,this._coreBrowserService.window.requestAnimationFrame((()=>this.syncScrollArea()))}_refresh(s){if(s)return this._innerRefresh(),void(this._refreshAnimationFrame!==null&&this._coreBrowserService.window.cancelAnimationFrame(this._refreshAnimationFrame));this._refreshAnimationFrame===null&&(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._innerRefresh())))}_innerRefresh(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderDimensions.device.cell.height/this._coreBrowserService.dpr,this._currentDeviceCellHeight=this._renderDimensions.device.cell.height,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;const e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderDimensions.css.canvas.height);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}const s=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==s&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=s),this._refreshAnimationFrame=null}syncScrollArea(s=!1){if(this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(s);this._lastRecordedViewportHeight===this._renderService.dimensions.css.canvas.height&&this._lastScrollTop===this._activeBuffer.ydisp*this._currentRowHeight&&this._renderDimensions.device.cell.height===this._currentDeviceCellHeight||this._refresh(s)}_handleScroll(s){if(this._lastScrollTop=this._viewportElement.scrollTop,!this._viewportElement.offsetParent)return;if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._onRequestScrollLines.fire({amount:0,suppressScrollEvent:!0});const e=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._onRequestScrollLines.fire({amount:e,suppressScrollEvent:!0})}_smoothScroll(){if(this._isDisposed||this._smoothScrollState.origin===-1||this._smoothScrollState.target===-1)return;const s=this._smoothScrollPercent();this._viewportElement.scrollTop=this._smoothScrollState.origin+Math.round(s*(this._smoothScrollState.target-this._smoothScrollState.origin)),s<1?this._coreBrowserService.window.requestAnimationFrame((()=>this._smoothScroll())):this._clearSmoothScrollState()}_smoothScrollPercent(){return this._optionsService.rawOptions.smoothScrollDuration&&this._smoothScrollState.startTime?Math.max(Math.min((Date.now()-this._smoothScrollState.startTime)/this._optionsService.rawOptions.smoothScrollDuration,1),0):1}_clearSmoothScrollState(){this._smoothScrollState.startTime=0,this._smoothScrollState.origin=-1,this._smoothScrollState.target=-1}_bubbleScroll(s,e){const t=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(e<0&&this._viewportElement.scrollTop!==0||e>0&&t<this._lastRecordedBufferHeight)||(s.cancelable&&s.preventDefault(),!1)}handleWheel(s){const e=this._getPixelsScrolled(s);return e!==0&&(this._optionsService.rawOptions.smoothScrollDuration?(this._smoothScrollState.startTime=Date.now(),this._smoothScrollPercent()<1?(this._smoothScrollState.origin=this._viewportElement.scrollTop,this._smoothScrollState.target===-1?this._smoothScrollState.target=this._viewportElement.scrollTop+e:this._smoothScrollState.target+=e,this._smoothScrollState.target=Math.max(Math.min(this._smoothScrollState.target,this._viewportElement.scrollHeight),0),this._smoothScroll()):this._clearSmoothScrollState()):this._viewportElement.scrollTop+=e,this._bubbleScroll(s,e))}scrollLines(s){if(s!==0)if(this._optionsService.rawOptions.smoothScrollDuration){const e=s*this._currentRowHeight;this._smoothScrollState.startTime=Date.now(),this._smoothScrollPercent()<1?(this._smoothScrollState.origin=this._viewportElement.scrollTop,this._smoothScrollState.target=this._smoothScrollState.origin+e,this._smoothScrollState.target=Math.max(Math.min(this._smoothScrollState.target,this._viewportElement.scrollHeight),0),this._smoothScroll()):this._clearSmoothScrollState()}else this._onRequestScrollLines.fire({amount:s,suppressScrollEvent:!1})}_getPixelsScrolled(s){if(s.deltaY===0||s.shiftKey)return 0;let e=this._applyScrollModifier(s.deltaY,s);return s.deltaMode===WheelEvent.DOM_DELTA_LINE?e*=this._currentRowHeight:s.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(e*=this._currentRowHeight*this._bufferService.rows),e}getBufferElements(s,e){var c;let t,o="";const f=[],u=e??this._bufferService.buffer.lines.length,p=this._bufferService.buffer.lines;for(let m=s;m<u;m++){const y=p.get(m);if(!y)continue;const k=(c=p.get(m+1))==null?void 0:c.isWrapped;if(o+=y.translateToString(!k),!k||m===p.length-1){const L=document.createElement("div");L.textContent=o,f.push(L),o.length>0&&(t=L),o=""}}return{bufferElements:f,cursorElement:t}}getLinesScrolled(s){if(s.deltaY===0||s.shiftKey)return 0;let e=this._applyScrollModifier(s.deltaY,s);return s.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(e/=this._currentRowHeight+0,this._wheelPartialScroll+=e,e=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):s.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(e*=this._bufferService.rows),e}_applyScrollModifier(s,e){const t=this._optionsService.rawOptions.fastScrollModifier;return t==="alt"&&e.altKey||t==="ctrl"&&e.ctrlKey||t==="shift"&&e.shiftKey?s*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:s*this._optionsService.rawOptions.scrollSensitivity}handleTouchStart(s){this._lastTouchY=s.touches[0].pageY}handleTouchMove(s){const e=this._lastTouchY-s.touches[0].pageY;return this._lastTouchY=s.touches[0].pageY,e!==0&&(this._viewportElement.scrollTop+=e,this._bubbleScroll(s,e))}};r.Viewport=i=l([_(2,h.IBufferService),_(3,h.IOptionsService),_(4,d.ICharSizeService),_(5,d.IRenderService),_(6,d.ICoreBrowserService),_(7,d.IThemeService)],i)},3107:function(O,r,a){var l=this&&this.__decorate||function(h,i,s,e){var t,o=arguments.length,f=o<3?i:e===null?e=Object.getOwnPropertyDescriptor(i,s):e;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")f=Reflect.decorate(h,i,s,e);else for(var u=h.length-1;u>=0;u--)(t=h[u])&&(f=(o<3?t(f):o>3?t(i,s,f):t(i,s))||f);return o>3&&f&&Object.defineProperty(i,s,f),f},_=this&&this.__param||function(h,i){return function(s,e){i(s,e,h)}};Object.defineProperty(r,"__esModule",{value:!0}),r.BufferDecorationRenderer=void 0;const n=a(4725),d=a(844),v=a(2585);let g=r.BufferDecorationRenderer=class extends d.Disposable{constructor(h,i,s,e,t){super(),this._screenElement=h,this._bufferService=i,this._coreBrowserService=s,this._decorationService=e,this._renderService=t,this._decorationElements=new Map,this._altBufferIsActive=!1,this._dimensionsChanged=!1,this._container=document.createElement("div"),this._container.classList.add("xterm-decoration-container"),this._screenElement.appendChild(this._container),this.register(this._renderService.onRenderedViewportChange((()=>this._doRefreshDecorations()))),this.register(this._renderService.onDimensionsChange((()=>{this._dimensionsChanged=!0,this._queueRefresh()}))),this.register(this._coreBrowserService.onDprChange((()=>this._queueRefresh()))),this.register(this._bufferService.buffers.onBufferActivate((()=>{this._altBufferIsActive=this._bufferService.buffer===this._bufferService.buffers.alt}))),this.register(this._decorationService.onDecorationRegistered((()=>this._queueRefresh()))),this.register(this._decorationService.onDecorationRemoved((o=>this._removeDecoration(o)))),this.register((0,d.toDisposable)((()=>{this._container.remove(),this._decorationElements.clear()})))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback((()=>{this._doRefreshDecorations(),this._animationFrame=void 0})))}_doRefreshDecorations(){for(const h of this._decorationService.decorations)this._renderDecoration(h);this._dimensionsChanged=!1}_renderDecoration(h){this._refreshStyle(h),this._dimensionsChanged&&this._refreshXPosition(h)}_createElement(h){var e;const i=this._coreBrowserService.mainDocument.createElement("div");i.classList.add("xterm-decoration"),i.classList.toggle("xterm-decoration-top-layer",((e=h==null?void 0:h.options)==null?void 0:e.layer)==="top"),i.style.width=`${Math.round((h.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,i.style.height=(h.options.height||1)*this._renderService.dimensions.css.cell.height+"px",i.style.top=(h.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height+"px",i.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;const s=h.options.x??0;return s&&s>this._bufferService.cols&&(i.style.display="none"),this._refreshXPosition(h,i),i}_refreshStyle(h){const i=h.marker.line-this._bufferService.buffers.active.ydisp;if(i<0||i>=this._bufferService.rows)h.element&&(h.element.style.display="none",h.onRenderEmitter.fire(h.element));else{let s=this._decorationElements.get(h);s||(s=this._createElement(h),h.element=s,this._decorationElements.set(h,s),this._container.appendChild(s),h.onDispose((()=>{this._decorationElements.delete(h),s.remove()}))),s.style.top=i*this._renderService.dimensions.css.cell.height+"px",s.style.display=this._altBufferIsActive?"none":"block",h.onRenderEmitter.fire(s)}}_refreshXPosition(h,i=h.element){if(!i)return;const s=h.options.x??0;(h.options.anchor||"left")==="right"?i.style.right=s?s*this._renderService.dimensions.css.cell.width+"px":"":i.style.left=s?s*this._renderService.dimensions.css.cell.width+"px":""}_removeDecoration(h){var i;(i=this._decorationElements.get(h))==null||i.remove(),this._decorationElements.delete(h),h.dispose()}};r.BufferDecorationRenderer=g=l([_(1,v.IBufferService),_(2,n.ICoreBrowserService),_(3,v.IDecorationService),_(4,n.IRenderService)],g)},5871:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ColorZoneStore=void 0,r.ColorZoneStore=class{constructor(){this._zones=[],this._zonePool=[],this._zonePoolIndex=0,this._linePadding={full:0,left:0,center:0,right:0}}get zones(){return this._zonePool.length=Math.min(this._zonePool.length,this._zones.length),this._zones}clear(){this._zones.length=0,this._zonePoolIndex=0}addDecoration(a){if(a.options.overviewRulerOptions){for(const l of this._zones)if(l.color===a.options.overviewRulerOptions.color&&l.position===a.options.overviewRulerOptions.position){if(this._lineIntersectsZone(l,a.marker.line))return;if(this._lineAdjacentToZone(l,a.marker.line,a.options.overviewRulerOptions.position))return void this._addLineToZone(l,a.marker.line)}if(this._zonePoolIndex<this._zonePool.length)return this._zonePool[this._zonePoolIndex].color=a.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=a.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=a.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=a.marker.line,void this._zones.push(this._zonePool[this._zonePoolIndex++]);this._zones.push({color:a.options.overviewRulerOptions.color,position:a.options.overviewRulerOptions.position,startBufferLine:a.marker.line,endBufferLine:a.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(a){this._linePadding=a}_lineIntersectsZone(a,l){return l>=a.startBufferLine&&l<=a.endBufferLine}_lineAdjacentToZone(a,l,_){return l>=a.startBufferLine-this._linePadding[_||"full"]&&l<=a.endBufferLine+this._linePadding[_||"full"]}_addLineToZone(a,l){a.startBufferLine=Math.min(a.startBufferLine,l),a.endBufferLine=Math.max(a.endBufferLine,l)}}},5744:function(O,r,a){var l=this&&this.__decorate||function(t,o,f,u){var p,c=arguments.length,m=c<3?o:u===null?u=Object.getOwnPropertyDescriptor(o,f):u;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")m=Reflect.decorate(t,o,f,u);else for(var y=t.length-1;y>=0;y--)(p=t[y])&&(m=(c<3?p(m):c>3?p(o,f,m):p(o,f))||m);return c>3&&m&&Object.defineProperty(o,f,m),m},_=this&&this.__param||function(t,o){return function(f,u){o(f,u,t)}};Object.defineProperty(r,"__esModule",{value:!0}),r.OverviewRulerRenderer=void 0;const n=a(5871),d=a(4725),v=a(844),g=a(2585),h={full:0,left:0,center:0,right:0},i={full:0,left:0,center:0,right:0},s={full:0,left:0,center:0,right:0};let e=r.OverviewRulerRenderer=class extends v.Disposable{get _width(){return this._optionsService.options.overviewRulerWidth||0}constructor(t,o,f,u,p,c,m){var k;super(),this._viewportElement=t,this._screenElement=o,this._bufferService=f,this._decorationService=u,this._renderService=p,this._optionsService=c,this._coreBrowserService=m,this._colorZoneStore=new n.ColorZoneStore,this._shouldUpdateDimensions=!0,this._shouldUpdateAnchor=!0,this._lastKnownBufferLength=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add("xterm-decoration-overview-ruler"),this._refreshCanvasDimensions(),(k=this._viewportElement.parentElement)==null||k.insertBefore(this._canvas,this._viewportElement);const y=this._canvas.getContext("2d");if(!y)throw new Error("Ctx cannot be null");this._ctx=y,this._registerDecorationListeners(),this._registerBufferChangeListeners(),this._registerDimensionChangeListeners(),this.register((0,v.toDisposable)((()=>{var L;(L=this._canvas)==null||L.remove()})))}_registerDecorationListeners(){this.register(this._decorationService.onDecorationRegistered((()=>this._queueRefresh(void 0,!0)))),this.register(this._decorationService.onDecorationRemoved((()=>this._queueRefresh(void 0,!0))))}_registerBufferChangeListeners(){this.register(this._renderService.onRenderedViewportChange((()=>this._queueRefresh()))),this.register(this._bufferService.buffers.onBufferActivate((()=>{this._canvas.style.display=this._bufferService.buffer===this._bufferService.buffers.alt?"none":"block"}))),this.register(this._bufferService.onScroll((()=>{this._lastKnownBufferLength!==this._bufferService.buffers.normal.lines.length&&(this._refreshDrawHeightConstants(),this._refreshColorZonePadding())})))}_registerDimensionChangeListeners(){this.register(this._renderService.onRender((()=>{this._containerHeight&&this._containerHeight===this._screenElement.clientHeight||(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)}))),this.register(this._optionsService.onSpecificOptionChange("overviewRulerWidth",(()=>this._queueRefresh(!0)))),this.register(this._coreBrowserService.onDprChange((()=>this._queueRefresh(!0)))),this._queueRefresh(!0)}_refreshDrawConstants(){const t=Math.floor(this._canvas.width/3),o=Math.ceil(this._canvas.width/3);i.full=this._canvas.width,i.left=t,i.center=o,i.right=t,this._refreshDrawHeightConstants(),s.full=0,s.left=0,s.center=i.left,s.right=i.left+i.center}_refreshDrawHeightConstants(){h.full=Math.round(2*this._coreBrowserService.dpr);const t=this._canvas.height/this._bufferService.buffer.lines.length,o=Math.round(Math.max(Math.min(t,12),6)*this._coreBrowserService.dpr);h.left=o,h.center=o,h.right=o}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*h.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*h.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*h.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*h.right)}),this._lastKnownBufferLength=this._bufferService.buffers.normal.lines.length}_refreshCanvasDimensions(){this._canvas.style.width=`${this._width}px`,this._canvas.width=Math.round(this._width*this._coreBrowserService.dpr),this._canvas.style.height=`${this._screenElement.clientHeight}px`,this._canvas.height=Math.round(this._screenElement.clientHeight*this._coreBrowserService.dpr),this._refreshDrawConstants(),this._refreshColorZonePadding()}_refreshDecorations(){this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear();for(const o of this._decorationService.decorations)this._colorZoneStore.addDecoration(o);this._ctx.lineWidth=1;const t=this._colorZoneStore.zones;for(const o of t)o.position!=="full"&&this._renderColorZone(o);for(const o of t)o.position==="full"&&this._renderColorZone(o);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderColorZone(t){this._ctx.fillStyle=t.color,this._ctx.fillRect(s[t.position||"full"],Math.round((this._canvas.height-1)*(t.startBufferLine/this._bufferService.buffers.active.lines.length)-h[t.position||"full"]/2),i[t.position||"full"],Math.round((this._canvas.height-1)*((t.endBufferLine-t.startBufferLine)/this._bufferService.buffers.active.lines.length)+h[t.position||"full"]))}_queueRefresh(t,o){this._shouldUpdateDimensions=t||this._shouldUpdateDimensions,this._shouldUpdateAnchor=o||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._refreshDecorations(),this._animationFrame=void 0})))}};r.OverviewRulerRenderer=e=l([_(2,g.IBufferService),_(3,g.IDecorationService),_(4,d.IRenderService),_(5,g.IOptionsService),_(6,d.ICoreBrowserService)],e)},2950:function(O,r,a){var l=this&&this.__decorate||function(h,i,s,e){var t,o=arguments.length,f=o<3?i:e===null?e=Object.getOwnPropertyDescriptor(i,s):e;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")f=Reflect.decorate(h,i,s,e);else for(var u=h.length-1;u>=0;u--)(t=h[u])&&(f=(o<3?t(f):o>3?t(i,s,f):t(i,s))||f);return o>3&&f&&Object.defineProperty(i,s,f),f},_=this&&this.__param||function(h,i){return function(s,e){i(s,e,h)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CompositionHelper=void 0;const n=a(4725),d=a(2585),v=a(2584);let g=r.CompositionHelper=class{get isComposing(){return this._isComposing}constructor(h,i,s,e,t,o){this._textarea=h,this._compositionView=i,this._bufferService=s,this._optionsService=e,this._coreService=t,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(h){this._compositionView.textContent=h.data,this.updateCompositionElements(),setTimeout((()=>{this._compositionPosition.end=this._textarea.value.length}),0)}compositionend(){this._finalizeComposition(!0)}keydown(h){if(this._isComposing||this._isSendingComposition){if(h.keyCode===229||h.keyCode===16||h.keyCode===17||h.keyCode===18)return!1;this._finalizeComposition(!1)}return h.keyCode!==229||(this._handleAnyTextareaChanges(),!1)}_finalizeComposition(h){if(this._compositionView.classList.remove("active"),this._isComposing=!1,h){const i={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((()=>{if(this._isSendingComposition){let s;this._isSendingComposition=!1,i.start+=this._dataAlreadySent.length,s=this._isComposing?this._textarea.value.substring(i.start,i.end):this._textarea.value.substring(i.start),s.length>0&&this._coreService.triggerDataEvent(s,!0)}}),0)}else{this._isSendingComposition=!1;const i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}}_handleAnyTextareaChanges(){const h=this._textarea.value;setTimeout((()=>{if(!this._isComposing){const i=this._textarea.value,s=i.replace(h,"");this._dataAlreadySent=s,i.length>h.length?this._coreService.triggerDataEvent(s,!0):i.length<h.length?this._coreService.triggerDataEvent(`${v.C0.DEL}`,!0):i.length===h.length&&i!==h&&this._coreService.triggerDataEvent(i,!0)}}),0)}updateCompositionElements(h){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){const i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),s=this._renderService.dimensions.css.cell.height,e=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,t=i*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=t+"px",this._compositionView.style.top=e+"px",this._compositionView.style.height=s+"px",this._compositionView.style.lineHeight=s+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";const o=this._compositionView.getBoundingClientRect();this._textarea.style.left=t+"px",this._textarea.style.top=e+"px",this._textarea.style.width=Math.max(o.width,1)+"px",this._textarea.style.height=Math.max(o.height,1)+"px",this._textarea.style.lineHeight=o.height+"px"}h||setTimeout((()=>this.updateCompositionElements(!0)),0)}}};r.CompositionHelper=g=l([_(2,d.IBufferService),_(3,d.IOptionsService),_(4,d.ICoreService),_(5,n.IRenderService)],g)},9806:(O,r)=>{function a(l,_,n){const d=n.getBoundingClientRect(),v=l.getComputedStyle(n),g=parseInt(v.getPropertyValue("padding-left")),h=parseInt(v.getPropertyValue("padding-top"));return[_.clientX-d.left-g,_.clientY-d.top-h]}Object.defineProperty(r,"__esModule",{value:!0}),r.getCoords=r.getCoordsRelativeToElement=void 0,r.getCoordsRelativeToElement=a,r.getCoords=function(l,_,n,d,v,g,h,i,s){if(!g)return;const e=a(l,_,n);return e?(e[0]=Math.ceil((e[0]+(s?h/2:0))/h),e[1]=Math.ceil(e[1]/i),e[0]=Math.min(Math.max(e[0],1),d+(s?1:0)),e[1]=Math.min(Math.max(e[1],1),v),e):void 0}},9504:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.moveToCellSequence=void 0;const l=a(2584);function _(i,s,e,t){const o=i-n(i,e),f=s-n(s,e),u=Math.abs(o-f)-(function(p,c,m){let y=0;const k=p-n(p,m),L=c-n(c,m);for(let w=0;w<Math.abs(k-L);w++){const x=d(p,c)==="A"?-1:1,B=m.buffer.lines.get(k+x*w);B!=null&&B.isWrapped&&y++}return y})(i,s,e);return h(u,g(d(i,s),t))}function n(i,s){let e=0,t=s.buffer.lines.get(i),o=t==null?void 0:t.isWrapped;for(;o&&i>=0&&i<s.rows;)e++,t=s.buffer.lines.get(--i),o=t==null?void 0:t.isWrapped;return e}function d(i,s){return i>s?"A":"B"}function v(i,s,e,t,o,f){let u=i,p=s,c="";for(;u!==e||p!==t;)u+=o?1:-1,o&&u>f.cols-1?(c+=f.buffer.translateBufferLineToString(p,!1,i,u),u=0,i=0,p++):!o&&u<0&&(c+=f.buffer.translateBufferLineToString(p,!1,0,i+1),u=f.cols-1,i=u,p--);return c+f.buffer.translateBufferLineToString(p,!1,i,u)}function g(i,s){const e=s?"O":"[";return l.C0.ESC+e+i}function h(i,s){i=Math.floor(i);let e="";for(let t=0;t<i;t++)e+=s;return e}r.moveToCellSequence=function(i,s,e,t){const o=e.buffer.x,f=e.buffer.y;if(!e.buffer.hasScrollback)return(function(c,m,y,k,L,w){return _(m,k,L,w).length===0?"":h(v(c,m,c,m-n(m,L),!1,L).length,g("D",w))})(o,f,0,s,e,t)+_(f,s,e,t)+(function(c,m,y,k,L,w){let x;x=_(m,k,L,w).length>0?k-n(k,L):m;const B=k,P=(function(U,I,S,b,E,D){let T;return T=_(S,b,E,D).length>0?b-n(b,E):I,U<S&&T<=b||U>=S&&T<b?"C":"D"})(c,m,y,k,L,w);return h(v(c,x,y,B,P==="C",L).length,g(P,w))})(o,f,i,s,e,t);let u;if(f===s)return u=o>i?"D":"C",h(Math.abs(o-i),g(u,t));u=f>s?"D":"C";const p=Math.abs(f-s);return h((function(c,m){return m.cols-c})(f>s?i:o,e)+(p-1)*e.cols+1+((f>s?o:i)-1),g(u,t))}},1296:function(O,r,a){var l=this&&this.__decorate||function(w,x,B,P){var U,I=arguments.length,S=I<3?x:P===null?P=Object.getOwnPropertyDescriptor(x,B):P;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")S=Reflect.decorate(w,x,B,P);else for(var b=w.length-1;b>=0;b--)(U=w[b])&&(S=(I<3?U(S):I>3?U(x,B,S):U(x,B))||S);return I>3&&S&&Object.defineProperty(x,B,S),S},_=this&&this.__param||function(w,x){return function(B,P){x(B,P,w)}};Object.defineProperty(r,"__esModule",{value:!0}),r.DomRenderer=void 0;const n=a(3787),d=a(2550),v=a(2223),g=a(6171),h=a(6052),i=a(4725),s=a(8055),e=a(8460),t=a(844),o=a(2585),f="xterm-dom-renderer-owner-",u="xterm-rows",p="xterm-fg-",c="xterm-bg-",m="xterm-focus",y="xterm-selection";let k=1,L=r.DomRenderer=class extends t.Disposable{constructor(w,x,B,P,U,I,S,b,E,D,T,H,N){super(),this._terminal=w,this._document=x,this._element=B,this._screenElement=P,this._viewportElement=U,this._helperContainer=I,this._linkifier2=S,this._charSizeService=E,this._optionsService=D,this._bufferService=T,this._coreBrowserService=H,this._themeService=N,this._terminalClass=k++,this._rowElements=[],this._selectionRenderModel=(0,h.createSelectionRenderModel)(),this.onRequestRedraw=this.register(new e.EventEmitter).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(u),this._rowContainer.style.lineHeight="normal",this._rowContainer.setAttribute("aria-hidden","true"),this._refreshRowElements(this._bufferService.cols,this._bufferService.rows),this._selectionContainer=this._document.createElement("div"),this._selectionContainer.classList.add(y),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=(0,g.createRenderDimensions)(),this._updateDimensions(),this.register(this._optionsService.onOptionChange((()=>this._handleOptionsChanged()))),this.register(this._themeService.onChangeColors(($=>this._injectCss($)))),this._injectCss(this._themeService.colors),this._rowFactory=b.createInstance(n.DomRendererRowFactory,document),this._element.classList.add(f+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this.register(this._linkifier2.onShowLinkUnderline(($=>this._handleLinkHover($)))),this.register(this._linkifier2.onHideLinkUnderline(($=>this._handleLinkLeave($)))),this.register((0,t.toDisposable)((()=>{this._element.classList.remove(f+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()}))),this._widthCache=new d.WidthCache(this._document,this._helperContainer),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}_updateDimensions(){const w=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*w,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*w),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.left=0,this.dimensions.device.char.top=0,this.dimensions.device.canvas.width=this.dimensions.device.cell.width*this._bufferService.cols,this.dimensions.device.canvas.height=this.dimensions.device.cell.height*this._bufferService.rows,this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/w),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/w),this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols,this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows;for(const B of this._rowElements)B.style.width=`${this.dimensions.css.canvas.width}px`,B.style.height=`${this.dimensions.css.cell.height}px`,B.style.lineHeight=`${this.dimensions.css.cell.height}px`,B.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));const x=`${this._terminalSelector} .${u} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=x,this._selectionContainer.style.height=this._viewportElement.style.height,this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}_injectCss(w){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let x=`${this._terminalSelector} .${u} { color: ${w.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;x+=`${this._terminalSelector} .${u} .xterm-dim { color: ${s.color.multiplyOpacity(w.foreground,.5).css};}`,x+=`${this._terminalSelector} span:not(.xterm-bold) { font-weight: ${this._optionsService.rawOptions.fontWeight};}${this._terminalSelector} span.xterm-bold { font-weight: ${this._optionsService.rawOptions.fontWeightBold};}${this._terminalSelector} span.xterm-italic { font-style: italic;}`;const B=`blink_underline_${this._terminalClass}`,P=`blink_bar_${this._terminalClass}`,U=`blink_block_${this._terminalClass}`;x+=`@keyframes ${B} { 50% {  border-bottom-style: hidden; }}`,x+=`@keyframes ${P} { 50% {  box-shadow: none; }}`,x+=`@keyframes ${U} { 0% {  background-color: ${w.cursor.css};  color: ${w.cursorAccent.css}; } 50% {  background-color: inherit;  color: ${w.cursor.css}; }}`,x+=`${this._terminalSelector} .${u}.${m} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${B} 1s step-end infinite;}${this._terminalSelector} .${u}.${m} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${P} 1s step-end infinite;}${this._terminalSelector} .${u}.${m} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${U} 1s step-end infinite;}${this._terminalSelector} .${u} .xterm-cursor.xterm-cursor-block { background-color: ${w.cursor.css}; color: ${w.cursorAccent.css};}${this._terminalSelector} .${u} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${w.cursor.css} !important; color: ${w.cursorAccent.css} !important;}${this._terminalSelector} .${u} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${w.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${u} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${w.cursor.css} inset;}${this._terminalSelector} .${u} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${w.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,x+=`${this._terminalSelector} .${y} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${y} div { position: absolute; background-color: ${w.selectionBackgroundOpaque.css};}${this._terminalSelector} .${y} div { position: absolute; background-color: ${w.selectionInactiveBackgroundOpaque.css};}`;for(const[I,S]of w.ansi.entries())x+=`${this._terminalSelector} .${p}${I} { color: ${S.css}; }${this._terminalSelector} .${p}${I}.xterm-dim { color: ${s.color.multiplyOpacity(S,.5).css}; }${this._terminalSelector} .${c}${I} { background-color: ${S.css}; }`;x+=`${this._terminalSelector} .${p}${v.INVERTED_DEFAULT_COLOR} { color: ${s.color.opaque(w.background).css}; }${this._terminalSelector} .${p}${v.INVERTED_DEFAULT_COLOR}.xterm-dim { color: ${s.color.multiplyOpacity(s.color.opaque(w.background),.5).css}; }${this._terminalSelector} .${c}${v.INVERTED_DEFAULT_COLOR} { background-color: ${w.foreground.css}; }`,this._themeStyleElement.textContent=x}_setDefaultSpacing(){const w=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${w}px`,this._rowFactory.defaultSpacing=w}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(w,x){for(let B=this._rowElements.length;B<=x;B++){const P=this._document.createElement("div");this._rowContainer.appendChild(P),this._rowElements.push(P)}for(;this._rowElements.length>x;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(w,x){this._refreshRowElements(w,x),this._updateDimensions(),this.handleSelectionChanged(this._selectionRenderModel.selectionStart,this._selectionRenderModel.selectionEnd,this._selectionRenderModel.columnSelectMode)}handleCharSizeChanged(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}handleBlur(){this._rowContainer.classList.remove(m),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(m),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(w,x,B){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(w,x,B),this.renderRows(0,this._bufferService.rows-1),!w||!x)return;this._selectionRenderModel.update(this._terminal,w,x,B);const P=this._selectionRenderModel.viewportStartRow,U=this._selectionRenderModel.viewportEndRow,I=this._selectionRenderModel.viewportCappedStartRow,S=this._selectionRenderModel.viewportCappedEndRow;if(I>=this._bufferService.rows||S<0)return;const b=this._document.createDocumentFragment();if(B){const E=w[0]>x[0];b.appendChild(this._createSelectionElement(I,E?x[0]:w[0],E?w[0]:x[0],S-I+1))}else{const E=P===I?w[0]:0,D=I===U?x[0]:this._bufferService.cols;b.appendChild(this._createSelectionElement(I,E,D));const T=S-I-1;if(b.appendChild(this._createSelectionElement(I+1,0,this._bufferService.cols,T)),I!==S){const H=U===S?x[0]:this._bufferService.cols;b.appendChild(this._createSelectionElement(S,0,H))}}this._selectionContainer.appendChild(b)}_createSelectionElement(w,x,B,P=1){const U=this._document.createElement("div"),I=x*this.dimensions.css.cell.width;let S=this.dimensions.css.cell.width*(B-x);return I+S>this.dimensions.css.canvas.width&&(S=this.dimensions.css.canvas.width-I),U.style.height=P*this.dimensions.css.cell.height+"px",U.style.top=w*this.dimensions.css.cell.height+"px",U.style.left=`${I}px`,U.style.width=`${S}px`,U}handleCursorMove(){}_handleOptionsChanged(){this._updateDimensions(),this._injectCss(this._themeService.colors),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}clear(){for(const w of this._rowElements)w.replaceChildren()}renderRows(w,x){const B=this._bufferService.buffer,P=B.ybase+B.y,U=Math.min(B.x,this._bufferService.cols-1),I=this._optionsService.rawOptions.cursorBlink,S=this._optionsService.rawOptions.cursorStyle,b=this._optionsService.rawOptions.cursorInactiveStyle;for(let E=w;E<=x;E++){const D=E+B.ydisp,T=this._rowElements[E],H=B.lines.get(D);if(!T||!H)break;T.replaceChildren(...this._rowFactory.createRow(H,D,D===P,S,b,U,I,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${f}${this._terminalClass}`}_handleLinkHover(w){this._setCellUnderline(w.x1,w.x2,w.y1,w.y2,w.cols,!0)}_handleLinkLeave(w){this._setCellUnderline(w.x1,w.x2,w.y1,w.y2,w.cols,!1)}_setCellUnderline(w,x,B,P,U,I){B<0&&(w=0),P<0&&(x=0);const S=this._bufferService.rows-1;B=Math.max(Math.min(B,S),0),P=Math.max(Math.min(P,S),0),U=Math.min(U,this._bufferService.cols);const b=this._bufferService.buffer,E=b.ybase+b.y,D=Math.min(b.x,U-1),T=this._optionsService.rawOptions.cursorBlink,H=this._optionsService.rawOptions.cursorStyle,N=this._optionsService.rawOptions.cursorInactiveStyle;for(let $=B;$<=P;++$){const R=$+b.ydisp,C=this._rowElements[$],M=b.lines.get(R);if(!C||!M)break;C.replaceChildren(...this._rowFactory.createRow(M,R,R===E,H,N,D,T,this.dimensions.css.cell.width,this._widthCache,I?$===B?w:0:-1,I?($===P?x:U)-1:-1))}}};r.DomRenderer=L=l([_(7,o.IInstantiationService),_(8,i.ICharSizeService),_(9,o.IOptionsService),_(10,o.IBufferService),_(11,i.ICoreBrowserService),_(12,i.IThemeService)],L)},3787:function(O,r,a){var l=this&&this.__decorate||function(u,p,c,m){var y,k=arguments.length,L=k<3?p:m===null?m=Object.getOwnPropertyDescriptor(p,c):m;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")L=Reflect.decorate(u,p,c,m);else for(var w=u.length-1;w>=0;w--)(y=u[w])&&(L=(k<3?y(L):k>3?y(p,c,L):y(p,c))||L);return k>3&&L&&Object.defineProperty(p,c,L),L},_=this&&this.__param||function(u,p){return function(c,m){p(c,m,u)}};Object.defineProperty(r,"__esModule",{value:!0}),r.DomRendererRowFactory=void 0;const n=a(2223),d=a(643),v=a(511),g=a(2585),h=a(8055),i=a(4725),s=a(4269),e=a(6171),t=a(3734);let o=r.DomRendererRowFactory=class{constructor(u,p,c,m,y,k,L){this._document=u,this._characterJoinerService=p,this._optionsService=c,this._coreBrowserService=m,this._coreService=y,this._decorationService=k,this._themeService=L,this._workCell=new v.CellData,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(u,p,c){this._selectionStart=u,this._selectionEnd=p,this._columnSelectMode=c}createRow(u,p,c,m,y,k,L,w,x,B,P){const U=[],I=this._characterJoinerService.getJoinedCharacters(p),S=this._themeService.colors;let b,E=u.getNoBgTrimmedLength();c&&E<k+1&&(E=k+1);let D=0,T="",H=0,N=0,$=0,R=!1,C=0,M=!1,A=0;const W=[],F=B!==-1&&P!==-1;for(let z=0;z<E;z++){u.loadCell(z,this._workCell);let q=this._workCell.getWidth();if(q===0)continue;let V=!1,X=z,j=this._workCell;if(I.length>0&&z===I[0][0]){V=!0;const K=I.shift();j=new s.JoinedCellData(this._workCell,u.translateToString(!0,K[0],K[1]),K[1]-K[0]),X=K[1]-1,q=j.getWidth()}const se=this._isCellInSelection(z,p),le=c&&z===k,de=F&&z>=B&&z<=P;let _e=!1;this._decorationService.forEachDecorationAtCell(z,p,void 0,(K=>{_e=!0}));let ae=j.getChars()||d.WHITESPACE_CELL_CHAR;if(ae===" "&&(j.isUnderline()||j.isOverline())&&(ae=" "),A=q*w-x.get(ae,j.isBold(),j.isItalic()),b){if(D&&(se&&M||!se&&!M&&j.bg===H)&&(se&&M&&S.selectionForeground||j.fg===N)&&j.extended.ext===$&&de===R&&A===C&&!le&&!V&&!_e){j.isInvisible()?T+=d.WHITESPACE_CELL_CHAR:T+=ae,D++;continue}D&&(b.textContent=T),b=this._document.createElement("span"),D=0,T=""}else b=this._document.createElement("span");if(H=j.bg,N=j.fg,$=j.extended.ext,R=de,C=A,M=se,V&&k>=z&&k<=X&&(k=z),!this._coreService.isCursorHidden&&le&&this._coreService.isCursorInitialized){if(W.push("xterm-cursor"),this._coreBrowserService.isFocused)L&&W.push("xterm-cursor-blink"),W.push(m==="bar"?"xterm-cursor-bar":m==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(y)switch(y){case"outline":W.push("xterm-cursor-outline");break;case"block":W.push("xterm-cursor-block");break;case"bar":W.push("xterm-cursor-bar");break;case"underline":W.push("xterm-cursor-underline")}}if(j.isBold()&&W.push("xterm-bold"),j.isItalic()&&W.push("xterm-italic"),j.isDim()&&W.push("xterm-dim"),T=j.isInvisible()?d.WHITESPACE_CELL_CHAR:j.getChars()||d.WHITESPACE_CELL_CHAR,j.isUnderline()&&(W.push(`xterm-underline-${j.extended.underlineStyle}`),T===" "&&(T=" "),!j.isUnderlineColorDefault()))if(j.isUnderlineColorRGB())b.style.textDecorationColor=`rgb(${t.AttributeData.toColorRGB(j.getUnderlineColor()).join(",")})`;else{let K=j.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&j.isBold()&&K<8&&(K+=8),b.style.textDecorationColor=S.ansi[K].css}j.isOverline()&&(W.push("xterm-overline"),T===" "&&(T=" ")),j.isStrikethrough()&&W.push("xterm-strikethrough"),de&&(b.style.textDecoration="underline");let J=j.getFgColor(),re=j.getFgColorMode(),Z=j.getBgColor(),ne=j.getBgColorMode();const ue=!!j.isInverse();if(ue){const K=J;J=Z,Z=K;const Ce=re;re=ne,ne=Ce}let ee,he,te,oe=!1;switch(this._decorationService.forEachDecorationAtCell(z,p,void 0,(K=>{K.options.layer!=="top"&&oe||(K.backgroundColorRGB&&(ne=50331648,Z=K.backgroundColorRGB.rgba>>8&16777215,ee=K.backgroundColorRGB),K.foregroundColorRGB&&(re=50331648,J=K.foregroundColorRGB.rgba>>8&16777215,he=K.foregroundColorRGB),oe=K.options.layer==="top")})),!oe&&se&&(ee=this._coreBrowserService.isFocused?S.selectionBackgroundOpaque:S.selectionInactiveBackgroundOpaque,Z=ee.rgba>>8&16777215,ne=50331648,oe=!0,S.selectionForeground&&(re=50331648,J=S.selectionForeground.rgba>>8&16777215,he=S.selectionForeground)),oe&&W.push("xterm-decoration-top"),ne){case 16777216:case 33554432:te=S.ansi[Z],W.push(`xterm-bg-${Z}`);break;case 50331648:te=h.channels.toColor(Z>>16,Z>>8&255,255&Z),this._addStyle(b,`background-color:#${f((Z>>>0).toString(16),"0",6)}`);break;default:ue?(te=S.foreground,W.push(`xterm-bg-${n.INVERTED_DEFAULT_COLOR}`)):te=S.background}switch(ee||j.isDim()&&(ee=h.color.multiplyOpacity(te,.5)),re){case 16777216:case 33554432:j.isBold()&&J<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(J+=8),this._applyMinimumContrast(b,te,S.ansi[J],j,ee,void 0)||W.push(`xterm-fg-${J}`);break;case 50331648:const K=h.channels.toColor(J>>16&255,J>>8&255,255&J);this._applyMinimumContrast(b,te,K,j,ee,he)||this._addStyle(b,`color:#${f(J.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(b,te,S.foreground,j,ee,he)||ue&&W.push(`xterm-fg-${n.INVERTED_DEFAULT_COLOR}`)}W.length&&(b.className=W.join(" "),W.length=0),le||V||_e?b.textContent=T:D++,A!==this.defaultSpacing&&(b.style.letterSpacing=`${A}px`),U.push(b),z=X}return b&&D&&(b.textContent=T),U}_applyMinimumContrast(u,p,c,m,y,k){if(this._optionsService.rawOptions.minimumContrastRatio===1||(0,e.treatGlyphAsBackgroundColor)(m.getCode()))return!1;const L=this._getContrastCache(m);let w;if(y||k||(w=L.getColor(p.rgba,c.rgba)),w===void 0){const x=this._optionsService.rawOptions.minimumContrastRatio/(m.isDim()?2:1);w=h.color.ensureContrastRatio(y||p,k||c,x),L.setColor((y||p).rgba,(k||c).rgba,w??null)}return!!w&&(this._addStyle(u,`color:${w.css}`),!0)}_getContrastCache(u){return u.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(u,p){u.setAttribute("style",`${u.getAttribute("style")||""}${p};`)}_isCellInSelection(u,p){const c=this._selectionStart,m=this._selectionEnd;return!(!c||!m)&&(this._columnSelectMode?c[0]<=m[0]?u>=c[0]&&p>=c[1]&&u<m[0]&&p<=m[1]:u<c[0]&&p>=c[1]&&u>=m[0]&&p<=m[1]:p>c[1]&&p<m[1]||c[1]===m[1]&&p===c[1]&&u>=c[0]&&u<m[0]||c[1]<m[1]&&p===m[1]&&u<m[0]||c[1]<m[1]&&p===c[1]&&u>=c[0])}};function f(u,p,c){for(;u.length<c;)u=p+u;return u}r.DomRendererRowFactory=o=l([_(1,i.ICharacterJoinerService),_(2,g.IOptionsService),_(3,i.ICoreBrowserService),_(4,g.ICoreService),_(5,g.IDecorationService),_(6,i.IThemeService)],o)},2550:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.WidthCache=void 0,r.WidthCache=class{constructor(a,l){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=a.createElement("div"),this._container.classList.add("xterm-width-cache-measure-container"),this._container.setAttribute("aria-hidden","true"),this._container.style.whiteSpace="pre",this._container.style.fontKerning="none";const _=a.createElement("span");_.classList.add("xterm-char-measure-element");const n=a.createElement("span");n.classList.add("xterm-char-measure-element"),n.style.fontWeight="bold";const d=a.createElement("span");d.classList.add("xterm-char-measure-element"),d.style.fontStyle="italic";const v=a.createElement("span");v.classList.add("xterm-char-measure-element"),v.style.fontWeight="bold",v.style.fontStyle="italic",this._measureElements=[_,n,d,v],this._container.appendChild(_),this._container.appendChild(n),this._container.appendChild(d),this._container.appendChild(v),l.appendChild(this._container),this.clear()}dispose(){this._container.remove(),this._measureElements.length=0,this._holey=void 0}clear(){this._flat.fill(-9999),this._holey=new Map}setFont(a,l,_,n){a===this._font&&l===this._fontSize&&_===this._weight&&n===this._weightBold||(this._font=a,this._fontSize=l,this._weight=_,this._weightBold=n,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${_}`,this._measureElements[1].style.fontWeight=`${n}`,this._measureElements[2].style.fontWeight=`${_}`,this._measureElements[3].style.fontWeight=`${n}`,this.clear())}get(a,l,_){let n=0;if(!l&&!_&&a.length===1&&(n=a.charCodeAt(0))<256){if(this._flat[n]!==-9999)return this._flat[n];const g=this._measure(a,0);return g>0&&(this._flat[n]=g),g}let d=a;l&&(d+="B"),_&&(d+="I");let v=this._holey.get(d);if(v===void 0){let g=0;l&&(g|=1),_&&(g|=2),v=this._measure(a,g),v>0&&this._holey.set(d,v)}return v}_measure(a,l){const _=this._measureElements[l];return _.textContent=a.repeat(32),_.offsetWidth/32}}},2223:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.TEXT_BASELINE=r.DIM_OPACITY=r.INVERTED_DEFAULT_COLOR=void 0;const l=a(6114);r.INVERTED_DEFAULT_COLOR=257,r.DIM_OPACITY=.5,r.TEXT_BASELINE=l.isFirefox||l.isLegacyEdge?"bottom":"ideographic"},6171:(O,r)=>{function a(_){return 57508<=_&&_<=57558}function l(_){return _>=128512&&_<=128591||_>=127744&&_<=128511||_>=128640&&_<=128767||_>=9728&&_<=9983||_>=9984&&_<=10175||_>=65024&&_<=65039||_>=129280&&_<=129535||_>=127462&&_<=127487}Object.defineProperty(r,"__esModule",{value:!0}),r.computeNextVariantOffset=r.createRenderDimensions=r.treatGlyphAsBackgroundColor=r.allowRescaling=r.isEmoji=r.isRestrictedPowerlineGlyph=r.isPowerlineGlyph=r.throwIfFalsy=void 0,r.throwIfFalsy=function(_){if(!_)throw new Error("value must not be falsy");return _},r.isPowerlineGlyph=a,r.isRestrictedPowerlineGlyph=function(_){return 57520<=_&&_<=57527},r.isEmoji=l,r.allowRescaling=function(_,n,d,v){return n===1&&d>Math.ceil(1.5*v)&&_!==void 0&&_>255&&!l(_)&&!a(_)&&!(function(g){return 57344<=g&&g<=63743})(_)},r.treatGlyphAsBackgroundColor=function(_){return a(_)||(function(n){return 9472<=n&&n<=9631})(_)},r.createRenderDimensions=function(){return{css:{canvas:{width:0,height:0},cell:{width:0,height:0}},device:{canvas:{width:0,height:0},cell:{width:0,height:0},char:{width:0,height:0,left:0,top:0}}}},r.computeNextVariantOffset=function(_,n,d=0){return(_-(2*Math.round(n)-d))%(2*Math.round(n))}},6052:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.createSelectionRenderModel=void 0;class a{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(_,n,d,v=!1){if(this.selectionStart=n,this.selectionEnd=d,!n||!d||n[0]===d[0]&&n[1]===d[1])return void this.clear();const g=_.buffers.active.ydisp,h=n[1]-g,i=d[1]-g,s=Math.max(h,0),e=Math.min(i,_.rows-1);s>=_.rows||e<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=v,this.viewportStartRow=h,this.viewportEndRow=i,this.viewportCappedStartRow=s,this.viewportCappedEndRow=e,this.startCol=n[0],this.endCol=d[0])}isCellSelected(_,n,d){return!!this.hasSelection&&(d-=_.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?n>=this.startCol&&d>=this.viewportCappedStartRow&&n<this.endCol&&d<=this.viewportCappedEndRow:n<this.startCol&&d>=this.viewportCappedStartRow&&n>=this.endCol&&d<=this.viewportCappedEndRow:d>this.viewportStartRow&&d<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&d===this.viewportStartRow&&n>=this.startCol&&n<this.endCol||this.viewportStartRow<this.viewportEndRow&&d===this.viewportEndRow&&n<this.endCol||this.viewportStartRow<this.viewportEndRow&&d===this.viewportStartRow&&n>=this.startCol)}}r.createSelectionRenderModel=function(){return new a}},456:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.SelectionModel=void 0,r.SelectionModel=class{constructor(a){this._bufferService=a,this.isSelectAllActive=!1,this.selectionStartLength=0}clearSelection(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0}get finalSelectionStart(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart}get finalSelectionEnd(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){const a=this.selectionStart[0]+this.selectionStartLength;return a>this._bufferService.cols?a%this._bufferService.cols==0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)-1]:[a%this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)]:[a,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){const a=this.selectionStart[0]+this.selectionStartLength;return a>this._bufferService.cols?[a%this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)]:[Math.max(a,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){const a=this.selectionStart,l=this.selectionEnd;return!(!a||!l)&&(a[1]>l[1]||a[1]===l[1]&&a[0]>l[0])}handleTrim(a){return this.selectionStart&&(this.selectionStart[1]-=a),this.selectionEnd&&(this.selectionEnd[1]-=a),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}}},428:function(O,r,a){var l=this&&this.__decorate||function(e,t,o,f){var u,p=arguments.length,c=p<3?t:f===null?f=Object.getOwnPropertyDescriptor(t,o):f;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")c=Reflect.decorate(e,t,o,f);else for(var m=e.length-1;m>=0;m--)(u=e[m])&&(c=(p<3?u(c):p>3?u(t,o,c):u(t,o))||c);return p>3&&c&&Object.defineProperty(t,o,c),c},_=this&&this.__param||function(e,t){return function(o,f){t(o,f,e)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CharSizeService=void 0;const n=a(2585),d=a(8460),v=a(844);let g=r.CharSizeService=class extends v.Disposable{get hasValidSize(){return this.width>0&&this.height>0}constructor(e,t,o){super(),this._optionsService=o,this.width=0,this.height=0,this._onCharSizeChange=this.register(new d.EventEmitter),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this.register(new s(this._optionsService))}catch{this._measureStrategy=this.register(new i(e,t,this._optionsService))}this.register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],(()=>this.measure())))}measure(){const e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())}};r.CharSizeService=g=l([_(2,n.IOptionsService)],g);class h extends v.Disposable{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(t,o){t!==void 0&&t>0&&o!==void 0&&o>0&&(this._result.width=t,this._result.height=o)}}class i extends h{constructor(t,o,f){super(),this._document=t,this._parentElement=o,this._optionsService=f,this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W".repeat(32),this._measureElement.setAttribute("aria-hidden","true"),this._measureElement.style.whiteSpace="pre",this._measureElement.style.fontKerning="none",this._parentElement.appendChild(this._measureElement)}measure(){return this._measureElement.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._measureElement.style.fontSize=`${this._optionsService.rawOptions.fontSize}px`,this._validateAndSet(Number(this._measureElement.offsetWidth)/32,Number(this._measureElement.offsetHeight)),this._result}}class s extends h{constructor(t){super(),this._optionsService=t,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");const o=this._ctx.measureText("W");if(!("width"in o&&"fontBoundingBoxAscent"in o&&"fontBoundingBoxDescent"in o))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;const t=this._ctx.measureText("W");return this._validateAndSet(t.width,t.fontBoundingBoxAscent+t.fontBoundingBoxDescent),this._result}}},4269:function(O,r,a){var l=this&&this.__decorate||function(s,e,t,o){var f,u=arguments.length,p=u<3?e:o===null?o=Object.getOwnPropertyDescriptor(e,t):o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")p=Reflect.decorate(s,e,t,o);else for(var c=s.length-1;c>=0;c--)(f=s[c])&&(p=(u<3?f(p):u>3?f(e,t,p):f(e,t))||p);return u>3&&p&&Object.defineProperty(e,t,p),p},_=this&&this.__param||function(s,e){return function(t,o){e(t,o,s)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CharacterJoinerService=r.JoinedCellData=void 0;const n=a(3734),d=a(643),v=a(511),g=a(2585);class h extends n.AttributeData{constructor(e,t,o){super(),this.content=0,this.combinedData="",this.fg=e.fg,this.bg=e.bg,this.combinedData=t,this._width=o}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(e){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}r.JoinedCellData=h;let i=r.CharacterJoinerService=class me{constructor(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new v.CellData}register(e){const t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id}deregister(e){for(let t=0;t<this._characterJoiners.length;t++)if(this._characterJoiners[t].id===e)return this._characterJoiners.splice(t,1),!0;return!1}getJoinedCharacters(e){if(this._characterJoiners.length===0)return[];const t=this._bufferService.buffer.lines.get(e);if(!t||t.length===0)return[];const o=[],f=t.translateToString(!0);let u=0,p=0,c=0,m=t.getFg(0),y=t.getBg(0);for(let k=0;k<t.getTrimmedLength();k++)if(t.loadCell(k,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==m||this._workCell.bg!==y){if(k-u>1){const L=this._getJoinedRanges(f,c,p,t,u);for(let w=0;w<L.length;w++)o.push(L[w])}u=k,c=p,m=this._workCell.fg,y=this._workCell.bg}p+=this._workCell.getChars().length||d.WHITESPACE_CELL_CHAR.length}if(this._bufferService.cols-u>1){const k=this._getJoinedRanges(f,c,p,t,u);for(let L=0;L<k.length;L++)o.push(k[L])}return o}_getJoinedRanges(e,t,o,f,u){const p=e.substring(t,o);let c=[];try{c=this._characterJoiners[0].handler(p)}catch(m){console.error(m)}for(let m=1;m<this._characterJoiners.length;m++)try{const y=this._characterJoiners[m].handler(p);for(let k=0;k<y.length;k++)me._mergeRanges(c,y[k])}catch(y){console.error(y)}return this._stringRangesToCellRanges(c,f,u),c}_stringRangesToCellRanges(e,t,o){let f=0,u=!1,p=0,c=e[f];if(c){for(let m=o;m<this._bufferService.cols;m++){const y=t.getWidth(m),k=t.getString(m).length||d.WHITESPACE_CELL_CHAR.length;if(y!==0){if(!u&&c[0]<=p&&(c[0]=m,u=!0),c[1]<=p){if(c[1]=m,c=e[++f],!c)break;c[0]<=p?(c[0]=m,u=!0):u=!1}p+=k}}c&&(c[1]=this._bufferService.cols)}}static _mergeRanges(e,t){let o=!1;for(let f=0;f<e.length;f++){const u=e[f];if(o){if(t[1]<=u[0])return e[f-1][1]=t[1],e;if(t[1]<=u[1])return e[f-1][1]=Math.max(t[1],u[1]),e.splice(f,1),e;e.splice(f,1),f--}else{if(t[1]<=u[0])return e.splice(f,0,t),e;if(t[1]<=u[1])return u[0]=Math.min(t[0],u[0]),e;t[0]<u[1]&&(u[0]=Math.min(t[0],u[0]),o=!0)}}return o?e[e.length-1][1]=t[1]:e.push(t),e}};r.CharacterJoinerService=i=l([_(0,g.IBufferService)],i)},5114:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CoreBrowserService=void 0;const l=a(844),_=a(8460),n=a(3656);class d extends l.Disposable{constructor(h,i,s){super(),this._textarea=h,this._window=i,this.mainDocument=s,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=new v(this._window),this._onDprChange=this.register(new _.EventEmitter),this.onDprChange=this._onDprChange.event,this._onWindowChange=this.register(new _.EventEmitter),this.onWindowChange=this._onWindowChange.event,this.register(this.onWindowChange((e=>this._screenDprMonitor.setWindow(e)))),this.register((0,_.forwardEvent)(this._screenDprMonitor.onDprChange,this._onDprChange)),this._textarea.addEventListener("focus",(()=>this._isFocused=!0)),this._textarea.addEventListener("blur",(()=>this._isFocused=!1))}get window(){return this._window}set window(h){this._window!==h&&(this._window=h,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return this._cachedIsFocused===void 0&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask((()=>this._cachedIsFocused=void 0))),this._cachedIsFocused}}r.CoreBrowserService=d;class v extends l.Disposable{constructor(h){super(),this._parentWindow=h,this._windowResizeListener=this.register(new l.MutableDisposable),this._onDprChange=this.register(new _.EventEmitter),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this.register((0,l.toDisposable)((()=>this.clearListener())))}setWindow(h){this._parentWindow=h,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=(0,n.addDisposableDomListener)(this._parentWindow,"resize",(()=>this._setDprAndFireIfDiffers()))}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){var h;this._outerListener&&((h=this._resolutionMediaMatchList)==null||h.removeListener(this._outerListener),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._resolutionMediaMatchList=this._parentWindow.matchMedia(`screen and (resolution: ${this._parentWindow.devicePixelRatio}dppx)`),this._resolutionMediaMatchList.addListener(this._outerListener))}clearListener(){this._resolutionMediaMatchList&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._outerListener=void 0)}}},779:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.LinkProviderService=void 0;const l=a(844);class _ extends l.Disposable{constructor(){super(),this.linkProviders=[],this.register((0,l.toDisposable)((()=>this.linkProviders.length=0)))}registerLinkProvider(d){return this.linkProviders.push(d),{dispose:()=>{const v=this.linkProviders.indexOf(d);v!==-1&&this.linkProviders.splice(v,1)}}}}r.LinkProviderService=_},8934:function(O,r,a){var l=this&&this.__decorate||function(g,h,i,s){var e,t=arguments.length,o=t<3?h:s===null?s=Object.getOwnPropertyDescriptor(h,i):s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(g,h,i,s);else for(var f=g.length-1;f>=0;f--)(e=g[f])&&(o=(t<3?e(o):t>3?e(h,i,o):e(h,i))||o);return t>3&&o&&Object.defineProperty(h,i,o),o},_=this&&this.__param||function(g,h){return function(i,s){h(i,s,g)}};Object.defineProperty(r,"__esModule",{value:!0}),r.MouseService=void 0;const n=a(4725),d=a(9806);let v=r.MouseService=class{constructor(g,h){this._renderService=g,this._charSizeService=h}getCoords(g,h,i,s,e){return(0,d.getCoords)(window,g,h,i,s,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,e)}getMouseReportCoords(g,h){const i=(0,d.getCoordsRelativeToElement)(window,g,h);if(this._charSizeService.hasValidSize)return i[0]=Math.min(Math.max(i[0],0),this._renderService.dimensions.css.canvas.width-1),i[1]=Math.min(Math.max(i[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(i[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(i[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(i[0]),y:Math.floor(i[1])}}};r.MouseService=v=l([_(0,n.IRenderService),_(1,n.ICharSizeService)],v)},3230:function(O,r,a){var l=this&&this.__decorate||function(e,t,o,f){var u,p=arguments.length,c=p<3?t:f===null?f=Object.getOwnPropertyDescriptor(t,o):f;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")c=Reflect.decorate(e,t,o,f);else for(var m=e.length-1;m>=0;m--)(u=e[m])&&(c=(p<3?u(c):p>3?u(t,o,c):u(t,o))||c);return p>3&&c&&Object.defineProperty(t,o,c),c},_=this&&this.__param||function(e,t){return function(o,f){t(o,f,e)}};Object.defineProperty(r,"__esModule",{value:!0}),r.RenderService=void 0;const n=a(6193),d=a(4725),v=a(8460),g=a(844),h=a(7226),i=a(2585);let s=r.RenderService=class extends g.Disposable{get dimensions(){return this._renderer.value.dimensions}constructor(e,t,o,f,u,p,c,m){super(),this._rowCount=e,this._charSizeService=f,this._renderer=this.register(new g.MutableDisposable),this._pausedResizeTask=new h.DebouncedIdleTask,this._observerDisposable=this.register(new g.MutableDisposable),this._isPaused=!1,this._needsFullRefresh=!1,this._isNextRenderRedrawOnly=!0,this._needsSelectionRefresh=!1,this._canvasWidth=0,this._canvasHeight=0,this._selectionState={start:void 0,end:void 0,columnSelectMode:!1},this._onDimensionsChange=this.register(new v.EventEmitter),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this.register(new v.EventEmitter),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this.register(new v.EventEmitter),this.onRender=this._onRender.event,this._onRefreshRequest=this.register(new v.EventEmitter),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new n.RenderDebouncer(((y,k)=>this._renderRows(y,k)),c),this.register(this._renderDebouncer),this.register(c.onDprChange((()=>this.handleDevicePixelRatioChange()))),this.register(p.onResize((()=>this._fullRefresh()))),this.register(p.buffers.onBufferActivate((()=>{var y;return(y=this._renderer.value)==null?void 0:y.clear()}))),this.register(o.onOptionChange((()=>this._handleOptionsChanged()))),this.register(this._charSizeService.onCharSizeChange((()=>this.handleCharSizeChanged()))),this.register(u.onDecorationRegistered((()=>this._fullRefresh()))),this.register(u.onDecorationRemoved((()=>this._fullRefresh()))),this.register(o.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],(()=>{this.clear(),this.handleResize(p.cols,p.rows),this._fullRefresh()}))),this.register(o.onMultipleOptionChange(["cursorBlink","cursorStyle"],(()=>this.refreshRows(p.buffer.y,p.buffer.y,!0)))),this.register(m.onChangeColors((()=>this._fullRefresh()))),this._registerIntersectionObserver(c.window,t),this.register(c.onWindowChange((y=>this._registerIntersectionObserver(y,t))))}_registerIntersectionObserver(e,t){if("IntersectionObserver"in e){const o=new e.IntersectionObserver((f=>this._handleIntersectionChange(f[f.length-1])),{threshold:0});o.observe(t),this._observerDisposable.value=(0,g.toDisposable)((()=>o.disconnect()))}}_handleIntersectionChange(e){this._isPaused=e.isIntersecting===void 0?e.intersectionRatio===0:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this._pausedResizeTask.flush(),this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)}refreshRows(e,t,o=!1){this._isPaused?this._needsFullRefresh=!0:(o||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))}_renderRows(e,t){this._renderer.value&&(e=Math.min(e,this._rowCount-1),t=Math.min(t,this._rowCount-1),this._renderer.value.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:e,end:t}),this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0)}resize(e,t){this._rowCount=t,this._fireOnCanvasResize()}_handleOptionsChanged(){this._renderer.value&&(this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize())}_fireOnCanvasResize(){this._renderer.value&&(this._renderer.value.dimensions.css.canvas.width===this._canvasWidth&&this._renderer.value.dimensions.css.canvas.height===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.value.dimensions))}hasRenderer(){return!!this._renderer.value}setRenderer(e){this._renderer.value=e,this._renderer.value&&(this._renderer.value.onRequestRedraw((t=>this.refreshRows(t.start,t.end,!0))),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(e){return this._renderDebouncer.addRefreshCallback(e)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){var e,t;this._renderer.value&&((t=(e=this._renderer.value).clearTextureAtlas)==null||t.call(e),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(e,t){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set((()=>{var o;return(o=this._renderer.value)==null?void 0:o.handleResize(e,t)})):this._renderer.value.handleResize(e,t),this._fullRefresh())}handleCharSizeChanged(){var e;(e=this._renderer.value)==null||e.handleCharSizeChanged()}handleBlur(){var e;(e=this._renderer.value)==null||e.handleBlur()}handleFocus(){var e;(e=this._renderer.value)==null||e.handleFocus()}handleSelectionChanged(e,t,o){var f;this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=o,(f=this._renderer.value)==null||f.handleSelectionChanged(e,t,o)}handleCursorMove(){var e;(e=this._renderer.value)==null||e.handleCursorMove()}clear(){var e;(e=this._renderer.value)==null||e.clear()}};r.RenderService=s=l([_(2,i.IOptionsService),_(3,d.ICharSizeService),_(4,i.IDecorationService),_(5,i.IBufferService),_(6,d.ICoreBrowserService),_(7,d.IThemeService)],s)},9312:function(O,r,a){var l=this&&this.__decorate||function(c,m,y,k){var L,w=arguments.length,x=w<3?m:k===null?k=Object.getOwnPropertyDescriptor(m,y):k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(c,m,y,k);else for(var B=c.length-1;B>=0;B--)(L=c[B])&&(x=(w<3?L(x):w>3?L(m,y,x):L(m,y))||x);return w>3&&x&&Object.defineProperty(m,y,x),x},_=this&&this.__param||function(c,m){return function(y,k){m(y,k,c)}};Object.defineProperty(r,"__esModule",{value:!0}),r.SelectionService=void 0;const n=a(9806),d=a(9504),v=a(456),g=a(4725),h=a(8460),i=a(844),s=a(6114),e=a(4841),t=a(511),o=a(2585),f=" ",u=new RegExp(f,"g");let p=r.SelectionService=class extends i.Disposable{constructor(c,m,y,k,L,w,x,B,P){super(),this._element=c,this._screenElement=m,this._linkifier=y,this._bufferService=k,this._coreService=L,this._mouseService=w,this._optionsService=x,this._renderService=B,this._coreBrowserService=P,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new t.CellData,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this.register(new h.EventEmitter),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this.register(new h.EventEmitter),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this.register(new h.EventEmitter),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this.register(new h.EventEmitter),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=U=>this._handleMouseMove(U),this._mouseUpListener=U=>this._handleMouseUp(U),this._coreService.onUserInput((()=>{this.hasSelection&&this.clearSelection()})),this._trimListener=this._bufferService.buffer.lines.onTrim((U=>this._handleTrim(U))),this.register(this._bufferService.buffers.onBufferActivate((U=>this._handleBufferActivate(U)))),this.enable(),this._model=new v.SelectionModel(this._bufferService),this._activeSelectionMode=0,this.register((0,i.toDisposable)((()=>{this._removeMouseDownListeners()})))}reset(){this.clearSelection()}disable(){this.clearSelection(),this._enabled=!1}enable(){this._enabled=!0}get selectionStart(){return this._model.finalSelectionStart}get selectionEnd(){return this._model.finalSelectionEnd}get hasSelection(){const c=this._model.finalSelectionStart,m=this._model.finalSelectionEnd;return!(!c||!m||c[0]===m[0]&&c[1]===m[1])}get selectionText(){const c=this._model.finalSelectionStart,m=this._model.finalSelectionEnd;if(!c||!m)return"";const y=this._bufferService.buffer,k=[];if(this._activeSelectionMode===3){if(c[0]===m[0])return"";const L=c[0]<m[0]?c[0]:m[0],w=c[0]<m[0]?m[0]:c[0];for(let x=c[1];x<=m[1];x++){const B=y.translateBufferLineToString(x,!0,L,w);k.push(B)}}else{const L=c[1]===m[1]?m[0]:void 0;k.push(y.translateBufferLineToString(c[1],!0,c[0],L));for(let w=c[1]+1;w<=m[1]-1;w++){const x=y.lines.get(w),B=y.translateBufferLineToString(w,!0);x!=null&&x.isWrapped?k[k.length-1]+=B:k.push(B)}if(c[1]!==m[1]){const w=y.lines.get(m[1]),x=y.translateBufferLineToString(m[1],!0,0,m[0]);w&&w.isWrapped?k[k.length-1]+=x:k.push(x)}}return k.map((L=>L.replace(u," "))).join(s.isWindows?`\r
`:`
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(c){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._refresh()))),s.isLinux&&c&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(c){const m=this._getMouseBufferCoords(c),y=this._model.finalSelectionStart,k=this._model.finalSelectionEnd;return!!(y&&k&&m)&&this._areCoordsInSelection(m,y,k)}isCellInSelection(c,m){const y=this._model.finalSelectionStart,k=this._model.finalSelectionEnd;return!(!y||!k)&&this._areCoordsInSelection([c,m],y,k)}_areCoordsInSelection(c,m,y){return c[1]>m[1]&&c[1]<y[1]||m[1]===y[1]&&c[1]===m[1]&&c[0]>=m[0]&&c[0]<y[0]||m[1]<y[1]&&c[1]===y[1]&&c[0]<y[0]||m[1]<y[1]&&c[1]===m[1]&&c[0]>=m[0]}_selectWordAtCursor(c,m){var L,w;const y=(w=(L=this._linkifier.currentLink)==null?void 0:L.link)==null?void 0:w.range;if(y)return this._model.selectionStart=[y.start.x-1,y.start.y-1],this._model.selectionStartLength=(0,e.getRangeLength)(y,this._bufferService.cols),this._model.selectionEnd=void 0,!0;const k=this._getMouseBufferCoords(c);return!!k&&(this._selectWordAt(k,m),this._model.selectionEnd=void 0,!0)}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(c,m){this._model.clearSelection(),c=Math.max(c,0),m=Math.min(m,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,c],this._model.selectionEnd=[this._bufferService.cols,m],this.refresh(),this._onSelectionChange.fire()}_handleTrim(c){this._model.handleTrim(c)&&this.refresh()}_getMouseBufferCoords(c){const m=this._mouseService.getCoords(c,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(m)return m[0]--,m[1]--,m[1]+=this._bufferService.buffer.ydisp,m}_getMouseEventScrollAmount(c){let m=(0,n.getCoordsRelativeToElement)(this._coreBrowserService.window,c,this._screenElement)[1];const y=this._renderService.dimensions.css.canvas.height;return m>=0&&m<=y?0:(m>y&&(m-=y),m=Math.min(Math.max(m,-50),50),m/=50,m/Math.abs(m)+Math.round(14*m))}shouldForceSelection(c){return s.isMac?c.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:c.shiftKey}handleMouseDown(c){if(this._mouseDownTimeStamp=c.timeStamp,(c.button!==2||!this.hasSelection)&&c.button===0){if(!this._enabled){if(!this.shouldForceSelection(c))return;c.stopPropagation()}c.preventDefault(),this._dragScrollAmount=0,this._enabled&&c.shiftKey?this._handleIncrementalClick(c):c.detail===1?this._handleSingleClick(c):c.detail===2?this._handleDoubleClick(c):c.detail===3&&this._handleTripleClick(c),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval((()=>this._dragScroll()),50)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(c){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(c))}_handleSingleClick(c){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(c)?3:0,this._model.selectionStart=this._getMouseBufferCoords(c),!this._model.selectionStart)return;this._model.selectionEnd=void 0;const m=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);m&&m.length!==this._model.selectionStart[0]&&m.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(c){this._selectWordAtCursor(c,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(c){const m=this._getMouseBufferCoords(c);m&&(this._activeSelectionMode=2,this._selectLineAt(m[1]))}shouldColumnSelect(c){return c.altKey&&!(s.isMac&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(c){if(c.stopImmediatePropagation(),!this._model.selectionStart)return;const m=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(c),!this._model.selectionEnd)return void this.refresh(!0);this._activeSelectionMode===2?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:this._activeSelectionMode===1&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(c),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));const y=this._bufferService.buffer;if(this._model.selectionEnd[1]<y.lines.length){const k=y.lines.get(this._model.selectionEnd[1]);k&&k.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}m&&m[0]===this._model.selectionEnd[0]&&m[1]===this._model.selectionEnd[1]||this.refresh(!0)}_dragScroll(){if(this._model.selectionEnd&&this._model.selectionStart&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});const c=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(c.ydisp+this._bufferService.rows,c.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=c.ydisp),this.refresh()}}_handleMouseUp(c){const m=c.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&m<500&&c.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){const y=this._mouseService.getCoords(c,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(y&&y[0]!==void 0&&y[1]!==void 0){const k=(0,d.moveToCellSequence)(y[0]-1,y[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(k,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){const c=this._model.finalSelectionStart,m=this._model.finalSelectionEnd,y=!(!c||!m||c[0]===m[0]&&c[1]===m[1]);y?c&&m&&(this._oldSelectionStart&&this._oldSelectionEnd&&c[0]===this._oldSelectionStart[0]&&c[1]===this._oldSelectionStart[1]&&m[0]===this._oldSelectionEnd[0]&&m[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(c,m,y)):this._oldHasSelection&&this._fireOnSelectionChange(c,m,y)}_fireOnSelectionChange(c,m,y){this._oldSelectionStart=c,this._oldSelectionEnd=m,this._oldHasSelection=y,this._onSelectionChange.fire()}_handleBufferActivate(c){this.clearSelection(),this._trimListener.dispose(),this._trimListener=c.activeBuffer.lines.onTrim((m=>this._handleTrim(m)))}_convertViewportColToCharacterIndex(c,m){let y=m;for(let k=0;m>=k;k++){const L=c.loadCell(k,this._workCell).getChars().length;this._workCell.getWidth()===0?y--:L>1&&m!==k&&(y+=L-1)}return y}setSelection(c,m,y){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[c,m],this._model.selectionStartLength=y,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(c){this._isClickInSelection(c)||(this._selectWordAtCursor(c,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(c,m,y=!0,k=!0){if(c[0]>=this._bufferService.cols)return;const L=this._bufferService.buffer,w=L.lines.get(c[1]);if(!w)return;const x=L.translateBufferLineToString(c[1],!1);let B=this._convertViewportColToCharacterIndex(w,c[0]),P=B;const U=c[0]-B;let I=0,S=0,b=0,E=0;if(x.charAt(B)===" "){for(;B>0&&x.charAt(B-1)===" ";)B--;for(;P<x.length&&x.charAt(P+1)===" ";)P++}else{let H=c[0],N=c[0];w.getWidth(H)===0&&(I++,H--),w.getWidth(N)===2&&(S++,N++);const $=w.getString(N).length;for($>1&&(E+=$-1,P+=$-1);H>0&&B>0&&!this._isCharWordSeparator(w.loadCell(H-1,this._workCell));){w.loadCell(H-1,this._workCell);const R=this._workCell.getChars().length;this._workCell.getWidth()===0?(I++,H--):R>1&&(b+=R-1,B-=R-1),B--,H--}for(;N<w.length&&P+1<x.length&&!this._isCharWordSeparator(w.loadCell(N+1,this._workCell));){w.loadCell(N+1,this._workCell);const R=this._workCell.getChars().length;this._workCell.getWidth()===2?(S++,N++):R>1&&(E+=R-1,P+=R-1),P++,N++}}P++;let D=B+U-I+b,T=Math.min(this._bufferService.cols,P-B+I+S-b-E);if(m||x.slice(B,P).trim()!==""){if(y&&D===0&&w.getCodePoint(0)!==32){const H=L.lines.get(c[1]-1);if(H&&w.isWrapped&&H.getCodePoint(this._bufferService.cols-1)!==32){const N=this._getWordAt([this._bufferService.cols-1,c[1]-1],!1,!0,!1);if(N){const $=this._bufferService.cols-N.start;D-=$,T+=$}}}if(k&&D+T===this._bufferService.cols&&w.getCodePoint(this._bufferService.cols-1)!==32){const H=L.lines.get(c[1]+1);if(H!=null&&H.isWrapped&&H.getCodePoint(0)!==32){const N=this._getWordAt([0,c[1]+1],!1,!1,!0);N&&(T+=N.length)}}return{start:D,length:T}}}_selectWordAt(c,m){const y=this._getWordAt(c,m);if(y){for(;y.start<0;)y.start+=this._bufferService.cols,c[1]--;this._model.selectionStart=[y.start,c[1]],this._model.selectionStartLength=y.length}}_selectToWordAt(c){const m=this._getWordAt(c,!0);if(m){let y=c[1];for(;m.start<0;)m.start+=this._bufferService.cols,y--;if(!this._model.areSelectionValuesReversed())for(;m.start+m.length>this._bufferService.cols;)m.length-=this._bufferService.cols,y++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?m.start:m.start+m.length,y]}}_isCharWordSeparator(c){return c.getWidth()!==0&&this._optionsService.rawOptions.wordSeparator.indexOf(c.getChars())>=0}_selectLineAt(c){const m=this._bufferService.buffer.getWrappedRangeForLine(c),y={start:{x:0,y:m.first},end:{x:this._bufferService.cols-1,y:m.last}};this._model.selectionStart=[0,m.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=(0,e.getRangeLength)(y,this._bufferService.cols)}};r.SelectionService=p=l([_(3,o.IBufferService),_(4,o.ICoreService),_(5,g.IMouseService),_(6,o.IOptionsService),_(7,g.IRenderService),_(8,g.ICoreBrowserService)],p)},4725:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ILinkProviderService=r.IThemeService=r.ICharacterJoinerService=r.ISelectionService=r.IRenderService=r.IMouseService=r.ICoreBrowserService=r.ICharSizeService=void 0;const l=a(8343);r.ICharSizeService=(0,l.createDecorator)("CharSizeService"),r.ICoreBrowserService=(0,l.createDecorator)("CoreBrowserService"),r.IMouseService=(0,l.createDecorator)("MouseService"),r.IRenderService=(0,l.createDecorator)("RenderService"),r.ISelectionService=(0,l.createDecorator)("SelectionService"),r.ICharacterJoinerService=(0,l.createDecorator)("CharacterJoinerService"),r.IThemeService=(0,l.createDecorator)("ThemeService"),r.ILinkProviderService=(0,l.createDecorator)("LinkProviderService")},6731:function(O,r,a){var l=this&&this.__decorate||function(p,c,m,y){var k,L=arguments.length,w=L<3?c:y===null?y=Object.getOwnPropertyDescriptor(c,m):y;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")w=Reflect.decorate(p,c,m,y);else for(var x=p.length-1;x>=0;x--)(k=p[x])&&(w=(L<3?k(w):L>3?k(c,m,w):k(c,m))||w);return L>3&&w&&Object.defineProperty(c,m,w),w},_=this&&this.__param||function(p,c){return function(m,y){c(m,y,p)}};Object.defineProperty(r,"__esModule",{value:!0}),r.ThemeService=r.DEFAULT_ANSI_COLORS=void 0;const n=a(7239),d=a(8055),v=a(8460),g=a(844),h=a(2585),i=d.css.toColor("#ffffff"),s=d.css.toColor("#000000"),e=d.css.toColor("#ffffff"),t=d.css.toColor("#000000"),o={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};r.DEFAULT_ANSI_COLORS=Object.freeze((()=>{const p=[d.css.toColor("#2e3436"),d.css.toColor("#cc0000"),d.css.toColor("#4e9a06"),d.css.toColor("#c4a000"),d.css.toColor("#3465a4"),d.css.toColor("#75507b"),d.css.toColor("#06989a"),d.css.toColor("#d3d7cf"),d.css.toColor("#555753"),d.css.toColor("#ef2929"),d.css.toColor("#8ae234"),d.css.toColor("#fce94f"),d.css.toColor("#729fcf"),d.css.toColor("#ad7fa8"),d.css.toColor("#34e2e2"),d.css.toColor("#eeeeec")],c=[0,95,135,175,215,255];for(let m=0;m<216;m++){const y=c[m/36%6|0],k=c[m/6%6|0],L=c[m%6];p.push({css:d.channels.toCss(y,k,L),rgba:d.channels.toRgba(y,k,L)})}for(let m=0;m<24;m++){const y=8+10*m;p.push({css:d.channels.toCss(y,y,y),rgba:d.channels.toRgba(y,y,y)})}return p})());let f=r.ThemeService=class extends g.Disposable{get colors(){return this._colors}constructor(p){super(),this._optionsService=p,this._contrastCache=new n.ColorContrastCache,this._halfContrastCache=new n.ColorContrastCache,this._onChangeColors=this.register(new v.EventEmitter),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:i,background:s,cursor:e,cursorAccent:t,selectionForeground:void 0,selectionBackgroundTransparent:o,selectionBackgroundOpaque:d.color.blend(s,o),selectionInactiveBackgroundTransparent:o,selectionInactiveBackgroundOpaque:d.color.blend(s,o),ansi:r.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this.register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",(()=>this._contrastCache.clear()))),this.register(this._optionsService.onSpecificOptionChange("theme",(()=>this._setTheme(this._optionsService.rawOptions.theme))))}_setTheme(p={}){const c=this._colors;if(c.foreground=u(p.foreground,i),c.background=u(p.background,s),c.cursor=u(p.cursor,e),c.cursorAccent=u(p.cursorAccent,t),c.selectionBackgroundTransparent=u(p.selectionBackground,o),c.selectionBackgroundOpaque=d.color.blend(c.background,c.selectionBackgroundTransparent),c.selectionInactiveBackgroundTransparent=u(p.selectionInactiveBackground,c.selectionBackgroundTransparent),c.selectionInactiveBackgroundOpaque=d.color.blend(c.background,c.selectionInactiveBackgroundTransparent),c.selectionForeground=p.selectionForeground?u(p.selectionForeground,d.NULL_COLOR):void 0,c.selectionForeground===d.NULL_COLOR&&(c.selectionForeground=void 0),d.color.isOpaque(c.selectionBackgroundTransparent)&&(c.selectionBackgroundTransparent=d.color.opacity(c.selectionBackgroundTransparent,.3)),d.color.isOpaque(c.selectionInactiveBackgroundTransparent)&&(c.selectionInactiveBackgroundTransparent=d.color.opacity(c.selectionInactiveBackgroundTransparent,.3)),c.ansi=r.DEFAULT_ANSI_COLORS.slice(),c.ansi[0]=u(p.black,r.DEFAULT_ANSI_COLORS[0]),c.ansi[1]=u(p.red,r.DEFAULT_ANSI_COLORS[1]),c.ansi[2]=u(p.green,r.DEFAULT_ANSI_COLORS[2]),c.ansi[3]=u(p.yellow,r.DEFAULT_ANSI_COLORS[3]),c.ansi[4]=u(p.blue,r.DEFAULT_ANSI_COLORS[4]),c.ansi[5]=u(p.magenta,r.DEFAULT_ANSI_COLORS[5]),c.ansi[6]=u(p.cyan,r.DEFAULT_ANSI_COLORS[6]),c.ansi[7]=u(p.white,r.DEFAULT_ANSI_COLORS[7]),c.ansi[8]=u(p.brightBlack,r.DEFAULT_ANSI_COLORS[8]),c.ansi[9]=u(p.brightRed,r.DEFAULT_ANSI_COLORS[9]),c.ansi[10]=u(p.brightGreen,r.DEFAULT_ANSI_COLORS[10]),c.ansi[11]=u(p.brightYellow,r.DEFAULT_ANSI_COLORS[11]),c.ansi[12]=u(p.brightBlue,r.DEFAULT_ANSI_COLORS[12]),c.ansi[13]=u(p.brightMagenta,r.DEFAULT_ANSI_COLORS[13]),c.ansi[14]=u(p.brightCyan,r.DEFAULT_ANSI_COLORS[14]),c.ansi[15]=u(p.brightWhite,r.DEFAULT_ANSI_COLORS[15]),p.extendedAnsi){const m=Math.min(c.ansi.length-16,p.extendedAnsi.length);for(let y=0;y<m;y++)c.ansi[y+16]=u(p.extendedAnsi[y],r.DEFAULT_ANSI_COLORS[y+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(p){this._restoreColor(p),this._onChangeColors.fire(this.colors)}_restoreColor(p){if(p!==void 0)switch(p){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[p]=this._restoreColors.ansi[p]}else for(let c=0;c<this._restoreColors.ansi.length;++c)this._colors.ansi[c]=this._restoreColors.ansi[c]}modifyColors(p){p(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};function u(p,c){if(p!==void 0)try{return d.css.toColor(p)}catch{}return c}r.ThemeService=f=l([_(0,h.IOptionsService)],f)},6349:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CircularList=void 0;const l=a(8460),_=a(844);class n extends _.Disposable{constructor(v){super(),this._maxLength=v,this.onDeleteEmitter=this.register(new l.EventEmitter),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this.register(new l.EventEmitter),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this.register(new l.EventEmitter),this.onTrim=this.onTrimEmitter.event,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(v){if(this._maxLength===v)return;const g=new Array(v);for(let h=0;h<Math.min(v,this.length);h++)g[h]=this._array[this._getCyclicIndex(h)];this._array=g,this._maxLength=v,this._startIndex=0}get length(){return this._length}set length(v){if(v>this._length)for(let g=this._length;g<v;g++)this._array[g]=void 0;this._length=v}get(v){return this._array[this._getCyclicIndex(v)]}set(v,g){this._array[this._getCyclicIndex(v)]=g}push(v){this._array[this._getCyclicIndex(this._length)]=v,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw new Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(v,g,...h){if(g){for(let i=v;i<this._length-g;i++)this._array[this._getCyclicIndex(i)]=this._array[this._getCyclicIndex(i+g)];this._length-=g,this.onDeleteEmitter.fire({index:v,amount:g})}for(let i=this._length-1;i>=v;i--)this._array[this._getCyclicIndex(i+h.length)]=this._array[this._getCyclicIndex(i)];for(let i=0;i<h.length;i++)this._array[this._getCyclicIndex(v+i)]=h[i];if(h.length&&this.onInsertEmitter.fire({index:v,amount:h.length}),this._length+h.length>this._maxLength){const i=this._length+h.length-this._maxLength;this._startIndex+=i,this._length=this._maxLength,this.onTrimEmitter.fire(i)}else this._length+=h.length}trimStart(v){v>this._length&&(v=this._length),this._startIndex+=v,this._length-=v,this.onTrimEmitter.fire(v)}shiftElements(v,g,h){if(!(g<=0)){if(v<0||v>=this._length)throw new Error("start argument out of range");if(v+h<0)throw new Error("Cannot shift elements in list beyond index 0");if(h>0){for(let s=g-1;s>=0;s--)this.set(v+s+h,this.get(v+s));const i=v+g+h-this._length;if(i>0)for(this._length+=i;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let i=0;i<g;i++)this.set(v+i+h,this.get(v+i))}}_getCyclicIndex(v){return(this._startIndex+v)%this._maxLength}}r.CircularList=n},1439:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.clone=void 0,r.clone=function a(l,_=5){if(typeof l!="object")return l;const n=Array.isArray(l)?[]:{};for(const d in l)n[d]=_<=1?l[d]:l[d]&&a(l[d],_-1);return n}},8055:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.contrastRatio=r.toPaddedHex=r.rgba=r.rgb=r.css=r.color=r.channels=r.NULL_COLOR=void 0;let a=0,l=0,_=0,n=0;var d,v,g,h,i;function s(t){const o=t.toString(16);return o.length<2?"0"+o:o}function e(t,o){return t<o?(o+.05)/(t+.05):(t+.05)/(o+.05)}r.NULL_COLOR={css:"#00000000",rgba:0},(function(t){t.toCss=function(o,f,u,p){return p!==void 0?`#${s(o)}${s(f)}${s(u)}${s(p)}`:`#${s(o)}${s(f)}${s(u)}`},t.toRgba=function(o,f,u,p=255){return(o<<24|f<<16|u<<8|p)>>>0},t.toColor=function(o,f,u,p){return{css:t.toCss(o,f,u,p),rgba:t.toRgba(o,f,u,p)}}})(d||(r.channels=d={})),(function(t){function o(f,u){return n=Math.round(255*u),[a,l,_]=i.toChannels(f.rgba),{css:d.toCss(a,l,_,n),rgba:d.toRgba(a,l,_,n)}}t.blend=function(f,u){if(n=(255&u.rgba)/255,n===1)return{css:u.css,rgba:u.rgba};const p=u.rgba>>24&255,c=u.rgba>>16&255,m=u.rgba>>8&255,y=f.rgba>>24&255,k=f.rgba>>16&255,L=f.rgba>>8&255;return a=y+Math.round((p-y)*n),l=k+Math.round((c-k)*n),_=L+Math.round((m-L)*n),{css:d.toCss(a,l,_),rgba:d.toRgba(a,l,_)}},t.isOpaque=function(f){return(255&f.rgba)==255},t.ensureContrastRatio=function(f,u,p){const c=i.ensureContrastRatio(f.rgba,u.rgba,p);if(c)return d.toColor(c>>24&255,c>>16&255,c>>8&255)},t.opaque=function(f){const u=(255|f.rgba)>>>0;return[a,l,_]=i.toChannels(u),{css:d.toCss(a,l,_),rgba:u}},t.opacity=o,t.multiplyOpacity=function(f,u){return n=255&f.rgba,o(f,n*u/255)},t.toColorRGB=function(f){return[f.rgba>>24&255,f.rgba>>16&255,f.rgba>>8&255]}})(v||(r.color=v={})),(function(t){let o,f;try{const u=document.createElement("canvas");u.width=1,u.height=1;const p=u.getContext("2d",{willReadFrequently:!0});p&&(o=p,o.globalCompositeOperation="copy",f=o.createLinearGradient(0,0,1,1))}catch{}t.toColor=function(u){if(u.match(/#[\da-f]{3,8}/i))switch(u.length){case 4:return a=parseInt(u.slice(1,2).repeat(2),16),l=parseInt(u.slice(2,3).repeat(2),16),_=parseInt(u.slice(3,4).repeat(2),16),d.toColor(a,l,_);case 5:return a=parseInt(u.slice(1,2).repeat(2),16),l=parseInt(u.slice(2,3).repeat(2),16),_=parseInt(u.slice(3,4).repeat(2),16),n=parseInt(u.slice(4,5).repeat(2),16),d.toColor(a,l,_,n);case 7:return{css:u,rgba:(parseInt(u.slice(1),16)<<8|255)>>>0};case 9:return{css:u,rgba:parseInt(u.slice(1),16)>>>0}}const p=u.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(p)return a=parseInt(p[1]),l=parseInt(p[2]),_=parseInt(p[3]),n=Math.round(255*(p[5]===void 0?1:parseFloat(p[5]))),d.toColor(a,l,_,n);if(!o||!f)throw new Error("css.toColor: Unsupported css format");if(o.fillStyle=f,o.fillStyle=u,typeof o.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(o.fillRect(0,0,1,1),[a,l,_,n]=o.getImageData(0,0,1,1).data,n!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:d.toRgba(a,l,_,n),css:u}}})(g||(r.css=g={})),(function(t){function o(f,u,p){const c=f/255,m=u/255,y=p/255;return .2126*(c<=.03928?c/12.92:Math.pow((c+.055)/1.055,2.4))+.7152*(m<=.03928?m/12.92:Math.pow((m+.055)/1.055,2.4))+.0722*(y<=.03928?y/12.92:Math.pow((y+.055)/1.055,2.4))}t.relativeLuminance=function(f){return o(f>>16&255,f>>8&255,255&f)},t.relativeLuminance2=o})(h||(r.rgb=h={})),(function(t){function o(u,p,c){const m=u>>24&255,y=u>>16&255,k=u>>8&255;let L=p>>24&255,w=p>>16&255,x=p>>8&255,B=e(h.relativeLuminance2(L,w,x),h.relativeLuminance2(m,y,k));for(;B<c&&(L>0||w>0||x>0);)L-=Math.max(0,Math.ceil(.1*L)),w-=Math.max(0,Math.ceil(.1*w)),x-=Math.max(0,Math.ceil(.1*x)),B=e(h.relativeLuminance2(L,w,x),h.relativeLuminance2(m,y,k));return(L<<24|w<<16|x<<8|255)>>>0}function f(u,p,c){const m=u>>24&255,y=u>>16&255,k=u>>8&255;let L=p>>24&255,w=p>>16&255,x=p>>8&255,B=e(h.relativeLuminance2(L,w,x),h.relativeLuminance2(m,y,k));for(;B<c&&(L<255||w<255||x<255);)L=Math.min(255,L+Math.ceil(.1*(255-L))),w=Math.min(255,w+Math.ceil(.1*(255-w))),x=Math.min(255,x+Math.ceil(.1*(255-x))),B=e(h.relativeLuminance2(L,w,x),h.relativeLuminance2(m,y,k));return(L<<24|w<<16|x<<8|255)>>>0}t.blend=function(u,p){if(n=(255&p)/255,n===1)return p;const c=p>>24&255,m=p>>16&255,y=p>>8&255,k=u>>24&255,L=u>>16&255,w=u>>8&255;return a=k+Math.round((c-k)*n),l=L+Math.round((m-L)*n),_=w+Math.round((y-w)*n),d.toRgba(a,l,_)},t.ensureContrastRatio=function(u,p,c){const m=h.relativeLuminance(u>>8),y=h.relativeLuminance(p>>8);if(e(m,y)<c){if(y<m){const w=o(u,p,c),x=e(m,h.relativeLuminance(w>>8));if(x<c){const B=f(u,p,c);return x>e(m,h.relativeLuminance(B>>8))?w:B}return w}const k=f(u,p,c),L=e(m,h.relativeLuminance(k>>8));if(L<c){const w=o(u,p,c);return L>e(m,h.relativeLuminance(w>>8))?k:w}return k}},t.reduceLuminance=o,t.increaseLuminance=f,t.toChannels=function(u){return[u>>24&255,u>>16&255,u>>8&255,255&u]}})(i||(r.rgba=i={})),r.toPaddedHex=s,r.contrastRatio=e},8969:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CoreTerminal=void 0;const l=a(844),_=a(2585),n=a(4348),d=a(7866),v=a(744),g=a(7302),h=a(6975),i=a(8460),s=a(1753),e=a(1480),t=a(7994),o=a(9282),f=a(5435),u=a(5981),p=a(2660);let c=!1;class m extends l.Disposable{get onScroll(){return this._onScrollApi||(this._onScrollApi=this.register(new i.EventEmitter),this._onScroll.event((k=>{var L;(L=this._onScrollApi)==null||L.fire(k.position)}))),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(k){for(const L in k)this.optionsService.options[L]=k[L]}constructor(k){super(),this._windowsWrappingHeuristics=this.register(new l.MutableDisposable),this._onBinary=this.register(new i.EventEmitter),this.onBinary=this._onBinary.event,this._onData=this.register(new i.EventEmitter),this.onData=this._onData.event,this._onLineFeed=this.register(new i.EventEmitter),this.onLineFeed=this._onLineFeed.event,this._onResize=this.register(new i.EventEmitter),this.onResize=this._onResize.event,this._onWriteParsed=this.register(new i.EventEmitter),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this.register(new i.EventEmitter),this._instantiationService=new n.InstantiationService,this.optionsService=this.register(new g.OptionsService(k)),this._instantiationService.setService(_.IOptionsService,this.optionsService),this._bufferService=this.register(this._instantiationService.createInstance(v.BufferService)),this._instantiationService.setService(_.IBufferService,this._bufferService),this._logService=this.register(this._instantiationService.createInstance(d.LogService)),this._instantiationService.setService(_.ILogService,this._logService),this.coreService=this.register(this._instantiationService.createInstance(h.CoreService)),this._instantiationService.setService(_.ICoreService,this.coreService),this.coreMouseService=this.register(this._instantiationService.createInstance(s.CoreMouseService)),this._instantiationService.setService(_.ICoreMouseService,this.coreMouseService),this.unicodeService=this.register(this._instantiationService.createInstance(e.UnicodeService)),this._instantiationService.setService(_.IUnicodeService,this.unicodeService),this._charsetService=this._instantiationService.createInstance(t.CharsetService),this._instantiationService.setService(_.ICharsetService,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(p.OscLinkService),this._instantiationService.setService(_.IOscLinkService,this._oscLinkService),this._inputHandler=this.register(new f.InputHandler(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this.register((0,i.forwardEvent)(this._inputHandler.onLineFeed,this._onLineFeed)),this.register(this._inputHandler),this.register((0,i.forwardEvent)(this._bufferService.onResize,this._onResize)),this.register((0,i.forwardEvent)(this.coreService.onData,this._onData)),this.register((0,i.forwardEvent)(this.coreService.onBinary,this._onBinary)),this.register(this.coreService.onRequestScrollToBottom((()=>this.scrollToBottom()))),this.register(this.coreService.onUserInput((()=>this._writeBuffer.handleUserInput()))),this.register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],(()=>this._handleWindowsPtyOptionChange()))),this.register(this._bufferService.onScroll((L=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp,source:0}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)}))),this.register(this._inputHandler.onScroll((L=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp,source:0}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)}))),this._writeBuffer=this.register(new u.WriteBuffer(((L,w)=>this._inputHandler.parse(L,w)))),this.register((0,i.forwardEvent)(this._writeBuffer.onWriteParsed,this._onWriteParsed))}write(k,L){this._writeBuffer.write(k,L)}writeSync(k,L){this._logService.logLevel<=_.LogLevelEnum.WARN&&!c&&(this._logService.warn("writeSync is unreliable and will be removed soon."),c=!0),this._writeBuffer.writeSync(k,L)}input(k,L=!0){this.coreService.triggerDataEvent(k,L)}resize(k,L){isNaN(k)||isNaN(L)||(k=Math.max(k,v.MINIMUM_COLS),L=Math.max(L,v.MINIMUM_ROWS),this._bufferService.resize(k,L))}scroll(k,L=!1){this._bufferService.scroll(k,L)}scrollLines(k,L,w){this._bufferService.scrollLines(k,L,w)}scrollPages(k){this.scrollLines(k*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(k){const L=k-this._bufferService.buffer.ydisp;L!==0&&this.scrollLines(L)}registerEscHandler(k,L){return this._inputHandler.registerEscHandler(k,L)}registerDcsHandler(k,L){return this._inputHandler.registerDcsHandler(k,L)}registerCsiHandler(k,L){return this._inputHandler.registerCsiHandler(k,L)}registerOscHandler(k,L){return this._inputHandler.registerOscHandler(k,L)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let k=!1;const L=this.optionsService.rawOptions.windowsPty;L&&L.buildNumber!==void 0&&L.buildNumber!==void 0?k=L.backend==="conpty"&&L.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(k=!0),k?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){const k=[];k.push(this.onLineFeed(o.updateWindowsModeWrappedState.bind(null,this._bufferService))),k.push(this.registerCsiHandler({final:"H"},(()=>((0,o.updateWindowsModeWrappedState)(this._bufferService),!1)))),this._windowsWrappingHeuristics.value=(0,l.toDisposable)((()=>{for(const L of k)L.dispose()}))}}}r.CoreTerminal=m},8460:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.runAndSubscribe=r.forwardEvent=r.EventEmitter=void 0,r.EventEmitter=class{constructor(){this._listeners=[],this._disposed=!1}get event(){return this._event||(this._event=a=>(this._listeners.push(a),{dispose:()=>{if(!this._disposed){for(let l=0;l<this._listeners.length;l++)if(this._listeners[l]===a)return void this._listeners.splice(l,1)}}})),this._event}fire(a,l){const _=[];for(let n=0;n<this._listeners.length;n++)_.push(this._listeners[n]);for(let n=0;n<_.length;n++)_[n].call(void 0,a,l)}dispose(){this.clearListeners(),this._disposed=!0}clearListeners(){this._listeners&&(this._listeners.length=0)}},r.forwardEvent=function(a,l){return a((_=>l.fire(_)))},r.runAndSubscribe=function(a,l){return l(void 0),a((_=>l(_)))}},5435:function(O,r,a){var l=this&&this.__decorate||function(I,S,b,E){var D,T=arguments.length,H=T<3?S:E===null?E=Object.getOwnPropertyDescriptor(S,b):E;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(I,S,b,E);else for(var N=I.length-1;N>=0;N--)(D=I[N])&&(H=(T<3?D(H):T>3?D(S,b,H):D(S,b))||H);return T>3&&H&&Object.defineProperty(S,b,H),H},_=this&&this.__param||function(I,S){return function(b,E){S(b,E,I)}};Object.defineProperty(r,"__esModule",{value:!0}),r.InputHandler=r.WindowsOptionsReportType=void 0;const n=a(2584),d=a(7116),v=a(2015),g=a(844),h=a(482),i=a(8437),s=a(8460),e=a(643),t=a(511),o=a(3734),f=a(2585),u=a(1480),p=a(6242),c=a(6351),m=a(5941),y={"(":0,")":1,"*":2,"+":3,"-":1,".":2},k=131072;function L(I,S){if(I>24)return S.setWinLines||!1;switch(I){case 1:return!!S.restoreWin;case 2:return!!S.minimizeWin;case 3:return!!S.setWinPosition;case 4:return!!S.setWinSizePixels;case 5:return!!S.raiseWin;case 6:return!!S.lowerWin;case 7:return!!S.refreshWin;case 8:return!!S.setWinSizeChars;case 9:return!!S.maximizeWin;case 10:return!!S.fullscreenWin;case 11:return!!S.getWinState;case 13:return!!S.getWinPosition;case 14:return!!S.getWinSizePixels;case 15:return!!S.getScreenSizePixels;case 16:return!!S.getCellSizePixels;case 18:return!!S.getWinSizeChars;case 19:return!!S.getScreenSizeChars;case 20:return!!S.getIconTitle;case 21:return!!S.getWinTitle;case 22:return!!S.pushTitle;case 23:return!!S.popTitle;case 24:return!!S.setWinLines}return!1}var w;(function(I){I[I.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",I[I.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"})(w||(r.WindowsOptionsReportType=w={}));let x=0;class B extends g.Disposable{getAttrData(){return this._curAttrData}constructor(S,b,E,D,T,H,N,$,R=new v.EscapeSequenceParser){super(),this._bufferService=S,this._charsetService=b,this._coreService=E,this._logService=D,this._optionsService=T,this._oscLinkService=H,this._coreMouseService=N,this._unicodeService=$,this._parser=R,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new h.StringToUtf32,this._utf8Decoder=new h.Utf8ToUtf32,this._workCell=new t.CellData,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=i.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=i.DEFAULT_ATTR_DATA.clone(),this._onRequestBell=this.register(new s.EventEmitter),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this.register(new s.EventEmitter),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this.register(new s.EventEmitter),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this.register(new s.EventEmitter),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this.register(new s.EventEmitter),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this.register(new s.EventEmitter),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this.register(new s.EventEmitter),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this.register(new s.EventEmitter),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this.register(new s.EventEmitter),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this.register(new s.EventEmitter),this.onLineFeed=this._onLineFeed.event,this._onScroll=this.register(new s.EventEmitter),this.onScroll=this._onScroll.event,this._onTitleChange=this.register(new s.EventEmitter),this.onTitleChange=this._onTitleChange.event,this._onColor=this.register(new s.EventEmitter),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this.register(this._parser),this._dirtyRowTracker=new P(this._bufferService),this._activeBuffer=this._bufferService.buffer,this.register(this._bufferService.buffers.onBufferActivate((C=>this._activeBuffer=C.activeBuffer))),this._parser.setCsiHandlerFallback(((C,M)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(C),params:M.toArray()})})),this._parser.setEscHandlerFallback((C=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(C)})})),this._parser.setExecuteHandlerFallback((C=>{this._logService.debug("Unknown EXECUTE code: ",{code:C})})),this._parser.setOscHandlerFallback(((C,M,A)=>{this._logService.debug("Unknown OSC code: ",{identifier:C,action:M,data:A})})),this._parser.setDcsHandlerFallback(((C,M,A)=>{M==="HOOK"&&(A=A.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(C),action:M,payload:A})})),this._parser.setPrintHandler(((C,M,A)=>this.print(C,M,A))),this._parser.registerCsiHandler({final:"@"},(C=>this.insertChars(C))),this._parser.registerCsiHandler({intermediates:" ",final:"@"},(C=>this.scrollLeft(C))),this._parser.registerCsiHandler({final:"A"},(C=>this.cursorUp(C))),this._parser.registerCsiHandler({intermediates:" ",final:"A"},(C=>this.scrollRight(C))),this._parser.registerCsiHandler({final:"B"},(C=>this.cursorDown(C))),this._parser.registerCsiHandler({final:"C"},(C=>this.cursorForward(C))),this._parser.registerCsiHandler({final:"D"},(C=>this.cursorBackward(C))),this._parser.registerCsiHandler({final:"E"},(C=>this.cursorNextLine(C))),this._parser.registerCsiHandler({final:"F"},(C=>this.cursorPrecedingLine(C))),this._parser.registerCsiHandler({final:"G"},(C=>this.cursorCharAbsolute(C))),this._parser.registerCsiHandler({final:"H"},(C=>this.cursorPosition(C))),this._parser.registerCsiHandler({final:"I"},(C=>this.cursorForwardTab(C))),this._parser.registerCsiHandler({final:"J"},(C=>this.eraseInDisplay(C,!1))),this._parser.registerCsiHandler({prefix:"?",final:"J"},(C=>this.eraseInDisplay(C,!0))),this._parser.registerCsiHandler({final:"K"},(C=>this.eraseInLine(C,!1))),this._parser.registerCsiHandler({prefix:"?",final:"K"},(C=>this.eraseInLine(C,!0))),this._parser.registerCsiHandler({final:"L"},(C=>this.insertLines(C))),this._parser.registerCsiHandler({final:"M"},(C=>this.deleteLines(C))),this._parser.registerCsiHandler({final:"P"},(C=>this.deleteChars(C))),this._parser.registerCsiHandler({final:"S"},(C=>this.scrollUp(C))),this._parser.registerCsiHandler({final:"T"},(C=>this.scrollDown(C))),this._parser.registerCsiHandler({final:"X"},(C=>this.eraseChars(C))),this._parser.registerCsiHandler({final:"Z"},(C=>this.cursorBackwardTab(C))),this._parser.registerCsiHandler({final:"`"},(C=>this.charPosAbsolute(C))),this._parser.registerCsiHandler({final:"a"},(C=>this.hPositionRelative(C))),this._parser.registerCsiHandler({final:"b"},(C=>this.repeatPrecedingCharacter(C))),this._parser.registerCsiHandler({final:"c"},(C=>this.sendDeviceAttributesPrimary(C))),this._parser.registerCsiHandler({prefix:">",final:"c"},(C=>this.sendDeviceAttributesSecondary(C))),this._parser.registerCsiHandler({final:"d"},(C=>this.linePosAbsolute(C))),this._parser.registerCsiHandler({final:"e"},(C=>this.vPositionRelative(C))),this._parser.registerCsiHandler({final:"f"},(C=>this.hVPosition(C))),this._parser.registerCsiHandler({final:"g"},(C=>this.tabClear(C))),this._parser.registerCsiHandler({final:"h"},(C=>this.setMode(C))),this._parser.registerCsiHandler({prefix:"?",final:"h"},(C=>this.setModePrivate(C))),this._parser.registerCsiHandler({final:"l"},(C=>this.resetMode(C))),this._parser.registerCsiHandler({prefix:"?",final:"l"},(C=>this.resetModePrivate(C))),this._parser.registerCsiHandler({final:"m"},(C=>this.charAttributes(C))),this._parser.registerCsiHandler({final:"n"},(C=>this.deviceStatus(C))),this._parser.registerCsiHandler({prefix:"?",final:"n"},(C=>this.deviceStatusPrivate(C))),this._parser.registerCsiHandler({intermediates:"!",final:"p"},(C=>this.softReset(C))),this._parser.registerCsiHandler({intermediates:" ",final:"q"},(C=>this.setCursorStyle(C))),this._parser.registerCsiHandler({final:"r"},(C=>this.setScrollRegion(C))),this._parser.registerCsiHandler({final:"s"},(C=>this.saveCursor(C))),this._parser.registerCsiHandler({final:"t"},(C=>this.windowOptions(C))),this._parser.registerCsiHandler({final:"u"},(C=>this.restoreCursor(C))),this._parser.registerCsiHandler({intermediates:"'",final:"}"},(C=>this.insertColumns(C))),this._parser.registerCsiHandler({intermediates:"'",final:"~"},(C=>this.deleteColumns(C))),this._parser.registerCsiHandler({intermediates:'"',final:"q"},(C=>this.selectProtected(C))),this._parser.registerCsiHandler({intermediates:"$",final:"p"},(C=>this.requestMode(C,!0))),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},(C=>this.requestMode(C,!1))),this._parser.setExecuteHandler(n.C0.BEL,(()=>this.bell())),this._parser.setExecuteHandler(n.C0.LF,(()=>this.lineFeed())),this._parser.setExecuteHandler(n.C0.VT,(()=>this.lineFeed())),this._parser.setExecuteHandler(n.C0.FF,(()=>this.lineFeed())),this._parser.setExecuteHandler(n.C0.CR,(()=>this.carriageReturn())),this._parser.setExecuteHandler(n.C0.BS,(()=>this.backspace())),this._parser.setExecuteHandler(n.C0.HT,(()=>this.tab())),this._parser.setExecuteHandler(n.C0.SO,(()=>this.shiftOut())),this._parser.setExecuteHandler(n.C0.SI,(()=>this.shiftIn())),this._parser.setExecuteHandler(n.C1.IND,(()=>this.index())),this._parser.setExecuteHandler(n.C1.NEL,(()=>this.nextLine())),this._parser.setExecuteHandler(n.C1.HTS,(()=>this.tabSet())),this._parser.registerOscHandler(0,new p.OscHandler((C=>(this.setTitle(C),this.setIconName(C),!0)))),this._parser.registerOscHandler(1,new p.OscHandler((C=>this.setIconName(C)))),this._parser.registerOscHandler(2,new p.OscHandler((C=>this.setTitle(C)))),this._parser.registerOscHandler(4,new p.OscHandler((C=>this.setOrReportIndexedColor(C)))),this._parser.registerOscHandler(8,new p.OscHandler((C=>this.setHyperlink(C)))),this._parser.registerOscHandler(10,new p.OscHandler((C=>this.setOrReportFgColor(C)))),this._parser.registerOscHandler(11,new p.OscHandler((C=>this.setOrReportBgColor(C)))),this._parser.registerOscHandler(12,new p.OscHandler((C=>this.setOrReportCursorColor(C)))),this._parser.registerOscHandler(104,new p.OscHandler((C=>this.restoreIndexedColor(C)))),this._parser.registerOscHandler(110,new p.OscHandler((C=>this.restoreFgColor(C)))),this._parser.registerOscHandler(111,new p.OscHandler((C=>this.restoreBgColor(C)))),this._parser.registerOscHandler(112,new p.OscHandler((C=>this.restoreCursorColor(C)))),this._parser.registerEscHandler({final:"7"},(()=>this.saveCursor())),this._parser.registerEscHandler({final:"8"},(()=>this.restoreCursor())),this._parser.registerEscHandler({final:"D"},(()=>this.index())),this._parser.registerEscHandler({final:"E"},(()=>this.nextLine())),this._parser.registerEscHandler({final:"H"},(()=>this.tabSet())),this._parser.registerEscHandler({final:"M"},(()=>this.reverseIndex())),this._parser.registerEscHandler({final:"="},(()=>this.keypadApplicationMode())),this._parser.registerEscHandler({final:">"},(()=>this.keypadNumericMode())),this._parser.registerEscHandler({final:"c"},(()=>this.fullReset())),this._parser.registerEscHandler({final:"n"},(()=>this.setgLevel(2))),this._parser.registerEscHandler({final:"o"},(()=>this.setgLevel(3))),this._parser.registerEscHandler({final:"|"},(()=>this.setgLevel(3))),this._parser.registerEscHandler({final:"}"},(()=>this.setgLevel(2))),this._parser.registerEscHandler({final:"~"},(()=>this.setgLevel(1))),this._parser.registerEscHandler({intermediates:"%",final:"@"},(()=>this.selectDefaultCharset())),this._parser.registerEscHandler({intermediates:"%",final:"G"},(()=>this.selectDefaultCharset()));for(const C in d.CHARSETS)this._parser.registerEscHandler({intermediates:"(",final:C},(()=>this.selectCharset("("+C))),this._parser.registerEscHandler({intermediates:")",final:C},(()=>this.selectCharset(")"+C))),this._parser.registerEscHandler({intermediates:"*",final:C},(()=>this.selectCharset("*"+C))),this._parser.registerEscHandler({intermediates:"+",final:C},(()=>this.selectCharset("+"+C))),this._parser.registerEscHandler({intermediates:"-",final:C},(()=>this.selectCharset("-"+C))),this._parser.registerEscHandler({intermediates:".",final:C},(()=>this.selectCharset("."+C))),this._parser.registerEscHandler({intermediates:"/",final:C},(()=>this.selectCharset("/"+C)));this._parser.registerEscHandler({intermediates:"#",final:"8"},(()=>this.screenAlignmentPattern())),this._parser.setErrorHandler((C=>(this._logService.error("Parsing error: ",C),C))),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new c.DcsHandler(((C,M)=>this.requestStatusString(C,M))))}_preserveStack(S,b,E,D){this._parseStack.paused=!0,this._parseStack.cursorStartX=S,this._parseStack.cursorStartY=b,this._parseStack.decodedLength=E,this._parseStack.position=D}_logSlowResolvingAsync(S){this._logService.logLevel<=f.LogLevelEnum.WARN&&Promise.race([S,new Promise(((b,E)=>setTimeout((()=>E("#SLOW_TIMEOUT")),5e3)))]).catch((b=>{if(b!=="#SLOW_TIMEOUT")throw b;console.warn("async parser handler taking longer than 5000 ms")}))}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(S,b){let E,D=this._activeBuffer.x,T=this._activeBuffer.y,H=0;const N=this._parseStack.paused;if(N){if(E=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,b))return this._logSlowResolvingAsync(E),E;D=this._parseStack.cursorStartX,T=this._parseStack.cursorStartY,this._parseStack.paused=!1,S.length>k&&(H=this._parseStack.position+k)}if(this._logService.logLevel<=f.LogLevelEnum.DEBUG&&this._logService.debug("parsing data"+(typeof S=="string"?` "${S}"`:` "${Array.prototype.map.call(S,(C=>String.fromCharCode(C))).join("")}"`),typeof S=="string"?S.split("").map((C=>C.charCodeAt(0))):S),this._parseBuffer.length<S.length&&this._parseBuffer.length<k&&(this._parseBuffer=new Uint32Array(Math.min(S.length,k))),N||this._dirtyRowTracker.clearRange(),S.length>k)for(let C=H;C<S.length;C+=k){const M=C+k<S.length?C+k:S.length,A=typeof S=="string"?this._stringDecoder.decode(S.substring(C,M),this._parseBuffer):this._utf8Decoder.decode(S.subarray(C,M),this._parseBuffer);if(E=this._parser.parse(this._parseBuffer,A))return this._preserveStack(D,T,A,C),this._logSlowResolvingAsync(E),E}else if(!N){const C=typeof S=="string"?this._stringDecoder.decode(S,this._parseBuffer):this._utf8Decoder.decode(S,this._parseBuffer);if(E=this._parser.parse(this._parseBuffer,C))return this._preserveStack(D,T,C,0),this._logSlowResolvingAsync(E),E}this._activeBuffer.x===D&&this._activeBuffer.y===T||this._onCursorMove.fire();const $=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),R=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);R<this._bufferService.rows&&this._onRequestRefreshRows.fire(Math.min(R,this._bufferService.rows-1),Math.min($,this._bufferService.rows-1))}print(S,b,E){let D,T;const H=this._charsetService.charset,N=this._optionsService.rawOptions.screenReaderMode,$=this._bufferService.cols,R=this._coreService.decPrivateModes.wraparound,C=this._coreService.modes.insertMode,M=this._curAttrData;let A=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&E-b>0&&A.getWidth(this._activeBuffer.x-1)===2&&A.setCellFromCodepoint(this._activeBuffer.x-1,0,1,M);let W=this._parser.precedingJoinState;for(let F=b;F<E;++F){if(D=S[F],D<127&&H){const X=H[String.fromCharCode(D)];X&&(D=X.charCodeAt(0))}const z=this._unicodeService.charProperties(D,W);T=u.UnicodeService.extractWidth(z);const q=u.UnicodeService.extractShouldJoin(z),V=q?u.UnicodeService.extractWidth(W):0;if(W=z,N&&this._onA11yChar.fire((0,h.stringFromCodePoint)(D)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+T-V>$){if(R){const X=A;let j=this._activeBuffer.x-V;for(this._activeBuffer.x=V,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),A=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),V>0&&A instanceof i.BufferLine&&A.copyCellsFrom(X,j,0,V,!1);j<$;)X.setCellFromCodepoint(j++,0,1,M)}else if(this._activeBuffer.x=$-1,T===2)continue}if(q&&this._activeBuffer.x){const X=A.getWidth(this._activeBuffer.x-1)?1:2;A.addCodepointToCell(this._activeBuffer.x-X,D,T);for(let j=T-V;--j>=0;)A.setCellFromCodepoint(this._activeBuffer.x++,0,0,M)}else if(C&&(A.insertCells(this._activeBuffer.x,T-V,this._activeBuffer.getNullCell(M)),A.getWidth($-1)===2&&A.setCellFromCodepoint($-1,e.NULL_CELL_CODE,e.NULL_CELL_WIDTH,M)),A.setCellFromCodepoint(this._activeBuffer.x++,D,T,M),T>0)for(;--T;)A.setCellFromCodepoint(this._activeBuffer.x++,0,0,M)}this._parser.precedingJoinState=W,this._activeBuffer.x<$&&E-b>0&&A.getWidth(this._activeBuffer.x)===0&&!A.hasContent(this._activeBuffer.x)&&A.setCellFromCodepoint(this._activeBuffer.x,0,1,M),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(S,b){return S.final!=="t"||S.prefix||S.intermediates?this._parser.registerCsiHandler(S,b):this._parser.registerCsiHandler(S,(E=>!L(E.params[0],this._optionsService.rawOptions.windowOptions)||b(E)))}registerDcsHandler(S,b){return this._parser.registerDcsHandler(S,new c.DcsHandler(b))}registerEscHandler(S,b){return this._parser.registerEscHandler(S,b)}registerOscHandler(S,b){return this._parser.registerOscHandler(S,new p.OscHandler(b))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){var S;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&((S=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y))!=null&&S.isWrapped)){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;const b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);b.hasWidth(this._activeBuffer.x)&&!b.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;const S=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-S),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(S=this._bufferService.cols-1){this._activeBuffer.x=Math.min(S,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(S,b){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=S,this._activeBuffer.y=this._activeBuffer.scrollTop+b):(this._activeBuffer.x=S,this._activeBuffer.y=b),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(S,b){this._restrictCursor(),this._setCursor(this._activeBuffer.x+S,this._activeBuffer.y+b)}cursorUp(S){const b=this._activeBuffer.y-this._activeBuffer.scrollTop;return b>=0?this._moveCursor(0,-Math.min(b,S.params[0]||1)):this._moveCursor(0,-(S.params[0]||1)),!0}cursorDown(S){const b=this._activeBuffer.scrollBottom-this._activeBuffer.y;return b>=0?this._moveCursor(0,Math.min(b,S.params[0]||1)):this._moveCursor(0,S.params[0]||1),!0}cursorForward(S){return this._moveCursor(S.params[0]||1,0),!0}cursorBackward(S){return this._moveCursor(-(S.params[0]||1),0),!0}cursorNextLine(S){return this.cursorDown(S),this._activeBuffer.x=0,!0}cursorPrecedingLine(S){return this.cursorUp(S),this._activeBuffer.x=0,!0}cursorCharAbsolute(S){return this._setCursor((S.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(S){return this._setCursor(S.length>=2?(S.params[1]||1)-1:0,(S.params[0]||1)-1),!0}charPosAbsolute(S){return this._setCursor((S.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(S){return this._moveCursor(S.params[0]||1,0),!0}linePosAbsolute(S){return this._setCursor(this._activeBuffer.x,(S.params[0]||1)-1),!0}vPositionRelative(S){return this._moveCursor(0,S.params[0]||1),!0}hVPosition(S){return this.cursorPosition(S),!0}tabClear(S){const b=S.params[0];return b===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:b===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(S){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let b=S.params[0]||1;for(;b--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(S){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let b=S.params[0]||1;for(;b--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(S){const b=S.params[0];return b===1&&(this._curAttrData.bg|=536870912),b!==2&&b!==0||(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(S,b,E,D=!1,T=!1){const H=this._activeBuffer.lines.get(this._activeBuffer.ybase+S);H.replaceCells(b,E,this._activeBuffer.getNullCell(this._eraseAttrData()),T),D&&(H.isWrapped=!1)}_resetBufferLine(S,b=!1){const E=this._activeBuffer.lines.get(this._activeBuffer.ybase+S);E&&(E.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),b),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+S),E.isWrapped=!1)}eraseInDisplay(S,b=!1){let E;switch(this._restrictCursor(this._bufferService.cols),S.params[0]){case 0:for(E=this._activeBuffer.y,this._dirtyRowTracker.markDirty(E),this._eraseInBufferLine(E++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,b);E<this._bufferService.rows;E++)this._resetBufferLine(E,b);this._dirtyRowTracker.markDirty(E);break;case 1:for(E=this._activeBuffer.y,this._dirtyRowTracker.markDirty(E),this._eraseInBufferLine(E,0,this._activeBuffer.x+1,!0,b),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(E+1).isWrapped=!1);E--;)this._resetBufferLine(E,b);this._dirtyRowTracker.markDirty(0);break;case 2:for(E=this._bufferService.rows,this._dirtyRowTracker.markDirty(E-1);E--;)this._resetBufferLine(E,b);this._dirtyRowTracker.markDirty(0);break;case 3:const D=this._activeBuffer.lines.length-this._bufferService.rows;D>0&&(this._activeBuffer.lines.trimStart(D),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-D,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-D,0),this._onScroll.fire(0))}return!0}eraseInLine(S,b=!1){switch(this._restrictCursor(this._bufferService.cols),S.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,b);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,b);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,b)}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(S){this._restrictCursor();let b=S.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const E=this._activeBuffer.ybase+this._activeBuffer.y,D=this._bufferService.rows-1-this._activeBuffer.scrollBottom,T=this._bufferService.rows-1+this._activeBuffer.ybase-D+1;for(;b--;)this._activeBuffer.lines.splice(T-1,1),this._activeBuffer.lines.splice(E,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(S){this._restrictCursor();let b=S.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const E=this._activeBuffer.ybase+this._activeBuffer.y;let D;for(D=this._bufferService.rows-1-this._activeBuffer.scrollBottom,D=this._bufferService.rows-1+this._activeBuffer.ybase-D;b--;)this._activeBuffer.lines.splice(E,1),this._activeBuffer.lines.splice(D,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(S){this._restrictCursor();const b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.insertCells(this._activeBuffer.x,S.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(S){this._restrictCursor();const b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.deleteCells(this._activeBuffer.x,S.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(S){let b=S.params[0]||1;for(;b--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(S){let b=S.params[0]||1;for(;b--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(i.DEFAULT_ATTR_DATA));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(S){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const b=S.params[0]||1;for(let E=this._activeBuffer.scrollTop;E<=this._activeBuffer.scrollBottom;++E){const D=this._activeBuffer.lines.get(this._activeBuffer.ybase+E);D.deleteCells(0,b,this._activeBuffer.getNullCell(this._eraseAttrData())),D.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(S){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const b=S.params[0]||1;for(let E=this._activeBuffer.scrollTop;E<=this._activeBuffer.scrollBottom;++E){const D=this._activeBuffer.lines.get(this._activeBuffer.ybase+E);D.insertCells(0,b,this._activeBuffer.getNullCell(this._eraseAttrData())),D.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(S){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const b=S.params[0]||1;for(let E=this._activeBuffer.scrollTop;E<=this._activeBuffer.scrollBottom;++E){const D=this._activeBuffer.lines.get(this._activeBuffer.ybase+E);D.insertCells(this._activeBuffer.x,b,this._activeBuffer.getNullCell(this._eraseAttrData())),D.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(S){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const b=S.params[0]||1;for(let E=this._activeBuffer.scrollTop;E<=this._activeBuffer.scrollBottom;++E){const D=this._activeBuffer.lines.get(this._activeBuffer.ybase+E);D.deleteCells(this._activeBuffer.x,b,this._activeBuffer.getNullCell(this._eraseAttrData())),D.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(S){this._restrictCursor();const b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(S.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(S){const b=this._parser.precedingJoinState;if(!b)return!0;const E=S.params[0]||1,D=u.UnicodeService.extractWidth(b),T=this._activeBuffer.x-D,H=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(T),N=new Uint32Array(H.length*E);let $=0;for(let C=0;C<H.length;){const M=H.codePointAt(C)||0;N[$++]=M,C+=M>65535?2:1}let R=$;for(let C=1;C<E;++C)N.copyWithin(R,0,$),R+=$;return this.print(N,0,R),!0}sendDeviceAttributesPrimary(S){return S.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(n.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(n.C0.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(S){return S.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(n.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(n.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(S.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(n.C0.ESC+"[>83;40003;0c")),!0}_is(S){return(this._optionsService.rawOptions.termName+"").indexOf(S)===0}setMode(S){for(let b=0;b<S.length;b++)switch(S.params[b]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0}return!0}setModePrivate(S){for(let b=0;b<S.length;b++)switch(S.params[b]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,d.DEFAULT_CHARSET),this._charsetService.setgCharset(1,d.DEFAULT_CHARSET),this._charsetService.setgCharset(2,d.DEFAULT_CHARSET),this._charsetService.setgCharset(3,d.DEFAULT_CHARSET);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(0,this._bufferService.rows-1),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0}return!0}resetMode(S){for(let b=0;b<S.length;b++)switch(S.params[b]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1}return!0}resetModePrivate(S){for(let b=0;b<S.length;b++)switch(S.params[b]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),S.params[b]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(0,this._bufferService.rows-1),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1}return!0}requestMode(S,b){const E=this._coreService.decPrivateModes,{activeProtocol:D,activeEncoding:T}=this._coreMouseService,H=this._coreService,{buffers:N,cols:$}=this._bufferService,{active:R,alt:C}=N,M=this._optionsService.rawOptions,A=q=>q?1:2,W=S.params[0];return F=W,z=b?W===2?4:W===4?A(H.modes.insertMode):W===12?3:W===20?A(M.convertEol):0:W===1?A(E.applicationCursorKeys):W===3?M.windowOptions.setWinLines?$===80?2:$===132?1:0:0:W===6?A(E.origin):W===7?A(E.wraparound):W===8?3:W===9?A(D==="X10"):W===12?A(M.cursorBlink):W===25?A(!H.isCursorHidden):W===45?A(E.reverseWraparound):W===66?A(E.applicationKeypad):W===67?4:W===1e3?A(D==="VT200"):W===1002?A(D==="DRAG"):W===1003?A(D==="ANY"):W===1004?A(E.sendFocus):W===1005?4:W===1006?A(T==="SGR"):W===1015?4:W===1016?A(T==="SGR_PIXELS"):W===1048?1:W===47||W===1047||W===1049?A(R===C):W===2004?A(E.bracketedPasteMode):0,H.triggerDataEvent(`${n.C0.ESC}[${b?"":"?"}${F};${z}$y`),!0;var F,z}_updateAttrColor(S,b,E,D,T){return b===2?(S|=50331648,S&=-16777216,S|=o.AttributeData.fromColorRGB([E,D,T])):b===5&&(S&=-50331904,S|=33554432|255&E),S}_extractColor(S,b,E){const D=[0,0,-1,0,0,0];let T=0,H=0;do{if(D[H+T]=S.params[b+H],S.hasSubParams(b+H)){const N=S.getSubParams(b+H);let $=0;do D[1]===5&&(T=1),D[H+$+1+T]=N[$];while(++$<N.length&&$+H+1+T<D.length);break}if(D[1]===5&&H+T>=2||D[1]===2&&H+T>=5)break;D[1]&&(T=1)}while(++H+b<S.length&&H+T<D.length);for(let N=2;N<D.length;++N)D[N]===-1&&(D[N]=0);switch(D[0]){case 38:E.fg=this._updateAttrColor(E.fg,D[1],D[3],D[4],D[5]);break;case 48:E.bg=this._updateAttrColor(E.bg,D[1],D[3],D[4],D[5]);break;case 58:E.extended=E.extended.clone(),E.extended.underlineColor=this._updateAttrColor(E.extended.underlineColor,D[1],D[3],D[4],D[5])}return H}_processUnderline(S,b){b.extended=b.extended.clone(),(!~S||S>5)&&(S=1),b.extended.underlineStyle=S,b.fg|=268435456,S===0&&(b.fg&=-268435457),b.updateExtended()}_processSGR0(S){S.fg=i.DEFAULT_ATTR_DATA.fg,S.bg=i.DEFAULT_ATTR_DATA.bg,S.extended=S.extended.clone(),S.extended.underlineStyle=0,S.extended.underlineColor&=-67108864,S.updateExtended()}charAttributes(S){if(S.length===1&&S.params[0]===0)return this._processSGR0(this._curAttrData),!0;const b=S.length;let E;const D=this._curAttrData;for(let T=0;T<b;T++)E=S.params[T],E>=30&&E<=37?(D.fg&=-50331904,D.fg|=16777216|E-30):E>=40&&E<=47?(D.bg&=-50331904,D.bg|=16777216|E-40):E>=90&&E<=97?(D.fg&=-50331904,D.fg|=16777224|E-90):E>=100&&E<=107?(D.bg&=-50331904,D.bg|=16777224|E-100):E===0?this._processSGR0(D):E===1?D.fg|=134217728:E===3?D.bg|=67108864:E===4?(D.fg|=268435456,this._processUnderline(S.hasSubParams(T)?S.getSubParams(T)[0]:1,D)):E===5?D.fg|=536870912:E===7?D.fg|=67108864:E===8?D.fg|=1073741824:E===9?D.fg|=2147483648:E===2?D.bg|=134217728:E===21?this._processUnderline(2,D):E===22?(D.fg&=-134217729,D.bg&=-134217729):E===23?D.bg&=-67108865:E===24?(D.fg&=-268435457,this._processUnderline(0,D)):E===25?D.fg&=-536870913:E===27?D.fg&=-67108865:E===28?D.fg&=-1073741825:E===29?D.fg&=2147483647:E===39?(D.fg&=-67108864,D.fg|=16777215&i.DEFAULT_ATTR_DATA.fg):E===49?(D.bg&=-67108864,D.bg|=16777215&i.DEFAULT_ATTR_DATA.bg):E===38||E===48||E===58?T+=this._extractColor(S,T,D):E===53?D.bg|=1073741824:E===55?D.bg&=-1073741825:E===59?(D.extended=D.extended.clone(),D.extended.underlineColor=-1,D.updateExtended()):E===100?(D.fg&=-67108864,D.fg|=16777215&i.DEFAULT_ATTR_DATA.fg,D.bg&=-67108864,D.bg|=16777215&i.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",E);return!0}deviceStatus(S){switch(S.params[0]){case 5:this._coreService.triggerDataEvent(`${n.C0.ESC}[0n`);break;case 6:const b=this._activeBuffer.y+1,E=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${n.C0.ESC}[${b};${E}R`)}return!0}deviceStatusPrivate(S){if(S.params[0]===6){const b=this._activeBuffer.y+1,E=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${n.C0.ESC}[?${b};${E}R`)}return!0}softReset(S){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=i.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(S){const b=S.params[0]||1;switch(b){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}const E=b%2==1;return this._optionsService.options.cursorBlink=E,!0}setScrollRegion(S){const b=S.params[0]||1;let E;return(S.length<2||(E=S.params[1])>this._bufferService.rows||E===0)&&(E=this._bufferService.rows),E>b&&(this._activeBuffer.scrollTop=b-1,this._activeBuffer.scrollBottom=E-1,this._setCursor(0,0)),!0}windowOptions(S){if(!L(S.params[0],this._optionsService.rawOptions.windowOptions))return!0;const b=S.length>1?S.params[1]:0;switch(S.params[0]){case 14:b!==2&&this._onRequestWindowsOptionsReport.fire(w.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(w.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${n.C0.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:b!==0&&b!==2||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),b!==0&&b!==1||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:b!==0&&b!==2||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),b!==0&&b!==1||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0}saveCursor(S){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(S){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(S){return this._windowTitle=S,this._onTitleChange.fire(S),!0}setIconName(S){return this._iconName=S,!0}setOrReportIndexedColor(S){const b=[],E=S.split(";");for(;E.length>1;){const D=E.shift(),T=E.shift();if(/^\d+$/.exec(D)){const H=parseInt(D);if(U(H))if(T==="?")b.push({type:0,index:H});else{const N=(0,m.parseColor)(T);N&&b.push({type:1,index:H,color:N})}}}return b.length&&this._onColor.fire(b),!0}setHyperlink(S){const b=S.split(";");return!(b.length<2)&&(b[1]?this._createHyperlink(b[0],b[1]):!b[0]&&this._finishHyperlink())}_createHyperlink(S,b){this._getCurrentLinkId()&&this._finishHyperlink();const E=S.split(":");let D;const T=E.findIndex((H=>H.startsWith("id=")));return T!==-1&&(D=E[T].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:D,uri:b}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(S,b){const E=S.split(";");for(let D=0;D<E.length&&!(b>=this._specialColors.length);++D,++b)if(E[D]==="?")this._onColor.fire([{type:0,index:this._specialColors[b]}]);else{const T=(0,m.parseColor)(E[D]);T&&this._onColor.fire([{type:1,index:this._specialColors[b],color:T}])}return!0}setOrReportFgColor(S){return this._setOrReportSpecialColor(S,0)}setOrReportBgColor(S){return this._setOrReportSpecialColor(S,1)}setOrReportCursorColor(S){return this._setOrReportSpecialColor(S,2)}restoreIndexedColor(S){if(!S)return this._onColor.fire([{type:2}]),!0;const b=[],E=S.split(";");for(let D=0;D<E.length;++D)if(/^\d+$/.exec(E[D])){const T=parseInt(E[D]);U(T)&&b.push({type:2,index:T})}return b.length&&this._onColor.fire(b),!0}restoreFgColor(S){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(S){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(S){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,d.DEFAULT_CHARSET),!0}selectCharset(S){return S.length!==2?(this.selectDefaultCharset(),!0):(S[0]==="/"||this._charsetService.setgCharset(y[S[0]],d.CHARSETS[S[1]]||d.DEFAULT_CHARSET),!0)}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){const S=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,S,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=i.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=i.DEFAULT_ATTR_DATA.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal}setgLevel(S){return this._charsetService.setgLevel(S),!0}screenAlignmentPattern(){const S=new t.CellData;S.content=4194373,S.fg=this._curAttrData.fg,S.bg=this._curAttrData.bg,this._setCursor(0,0);for(let b=0;b<this._bufferService.rows;++b){const E=this._activeBuffer.ybase+this._activeBuffer.y+b,D=this._activeBuffer.lines.get(E);D&&(D.fill(S),D.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(S,b){const E=this._bufferService.buffer,D=this._optionsService.rawOptions;return(T=>(this._coreService.triggerDataEvent(`${n.C0.ESC}${T}${n.C0.ESC}\\`),!0))(S==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:S==='"p'?'P1$r61;1"p':S==="r"?`P1$r${E.scrollTop+1};${E.scrollBottom+1}r`:S==="m"?"P1$r0m":S===" q"?`P1$r${{block:2,underline:4,bar:6}[D.cursorStyle]-(D.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(S,b){this._dirtyRowTracker.markRangeDirty(S,b)}}r.InputHandler=B;let P=class{constructor(I){this._bufferService=I,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(I){I<this.start?this.start=I:I>this.end&&(this.end=I)}markRangeDirty(I,S){I>S&&(x=I,I=S,S=x),I<this.start&&(this.start=I),S>this.end&&(this.end=S)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};function U(I){return 0<=I&&I<256}P=l([_(0,f.IBufferService)],P)},844:(O,r)=>{function a(l){for(const _ of l)_.dispose();l.length=0}Object.defineProperty(r,"__esModule",{value:!0}),r.getDisposeArrayDisposable=r.disposeArray=r.toDisposable=r.MutableDisposable=r.Disposable=void 0,r.Disposable=class{constructor(){this._disposables=[],this._isDisposed=!1}dispose(){this._isDisposed=!0;for(const l of this._disposables)l.dispose();this._disposables.length=0}register(l){return this._disposables.push(l),l}unregister(l){const _=this._disposables.indexOf(l);_!==-1&&this._disposables.splice(_,1)}},r.MutableDisposable=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(l){var _;this._isDisposed||l===this._value||((_=this._value)==null||_.dispose(),this._value=l)}clear(){this.value=void 0}dispose(){var l;this._isDisposed=!0,(l=this._value)==null||l.dispose(),this._value=void 0}},r.toDisposable=function(l){return{dispose:l}},r.disposeArray=a,r.getDisposeArrayDisposable=function(l){return{dispose:()=>a(l)}}},1505:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.FourKeyMap=r.TwoKeyMap=void 0;class a{constructor(){this._data={}}set(_,n,d){this._data[_]||(this._data[_]={}),this._data[_][n]=d}get(_,n){return this._data[_]?this._data[_][n]:void 0}clear(){this._data={}}}r.TwoKeyMap=a,r.FourKeyMap=class{constructor(){this._data=new a}set(l,_,n,d,v){this._data.get(l,_)||this._data.set(l,_,new a),this._data.get(l,_).set(n,d,v)}get(l,_,n,d){var v;return(v=this._data.get(l,_))==null?void 0:v.get(n,d)}clear(){this._data.clear()}}},6114:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.isChromeOS=r.isLinux=r.isWindows=r.isIphone=r.isIpad=r.isMac=r.getSafariVersion=r.isSafari=r.isLegacyEdge=r.isFirefox=r.isNode=void 0,r.isNode=typeof process<"u"&&"title"in process;const a=r.isNode?"node":navigator.userAgent,l=r.isNode?"node":navigator.platform;r.isFirefox=a.includes("Firefox"),r.isLegacyEdge=a.includes("Edge"),r.isSafari=/^((?!chrome|android).)*safari/i.test(a),r.getSafariVersion=function(){if(!r.isSafari)return 0;const _=a.match(/Version\/(\d+)/);return _===null||_.length<2?0:parseInt(_[1])},r.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(l),r.isIpad=l==="iPad",r.isIphone=l==="iPhone",r.isWindows=["Windows","Win16","Win32","WinCE"].includes(l),r.isLinux=l.indexOf("Linux")>=0,r.isChromeOS=/\bCrOS\b/.test(a)},6106:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.SortedList=void 0;let a=0;r.SortedList=class{constructor(l){this._getKey=l,this._array=[]}clear(){this._array.length=0}insert(l){this._array.length!==0?(a=this._search(this._getKey(l)),this._array.splice(a,0,l)):this._array.push(l)}delete(l){if(this._array.length===0)return!1;const _=this._getKey(l);if(_===void 0||(a=this._search(_),a===-1)||this._getKey(this._array[a])!==_)return!1;do if(this._array[a]===l)return this._array.splice(a,1),!0;while(++a<this._array.length&&this._getKey(this._array[a])===_);return!1}*getKeyIterator(l){if(this._array.length!==0&&(a=this._search(l),!(a<0||a>=this._array.length)&&this._getKey(this._array[a])===l))do yield this._array[a];while(++a<this._array.length&&this._getKey(this._array[a])===l)}forEachByKey(l,_){if(this._array.length!==0&&(a=this._search(l),!(a<0||a>=this._array.length)&&this._getKey(this._array[a])===l))do _(this._array[a]);while(++a<this._array.length&&this._getKey(this._array[a])===l)}values(){return[...this._array].values()}_search(l){let _=0,n=this._array.length-1;for(;n>=_;){let d=_+n>>1;const v=this._getKey(this._array[d]);if(v>l)n=d-1;else{if(!(v<l)){for(;d>0&&this._getKey(this._array[d-1])===l;)d--;return d}_=d+1}}return _}}},7226:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.DebouncedIdleTask=r.IdleTaskQueue=r.PriorityTaskQueue=void 0;const l=a(6114);class _{constructor(){this._tasks=[],this._i=0}enqueue(v){this._tasks.push(v),this._start()}flush(){for(;this._i<this._tasks.length;)this._tasks[this._i]()||this._i++;this.clear()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(v){this._idleCallback=void 0;let g=0,h=0,i=v.timeRemaining(),s=0;for(;this._i<this._tasks.length;){if(g=Date.now(),this._tasks[this._i]()||this._i++,g=Math.max(1,Date.now()-g),h=Math.max(g,h),s=v.timeRemaining(),1.5*h>s)return i-g<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(i-g))}ms`),void this._start();i=s}this.clear()}}class n extends _{_requestCallback(v){return setTimeout((()=>v(this._createDeadline(16))))}_cancelCallback(v){clearTimeout(v)}_createDeadline(v){const g=Date.now()+v;return{timeRemaining:()=>Math.max(0,g-Date.now())}}}r.PriorityTaskQueue=n,r.IdleTaskQueue=!l.isNode&&"requestIdleCallback"in window?class extends _{_requestCallback(d){return requestIdleCallback(d)}_cancelCallback(d){cancelIdleCallback(d)}}:n,r.DebouncedIdleTask=class{constructor(){this._queue=new r.IdleTaskQueue}set(d){this._queue.clear(),this._queue.enqueue(d)}flush(){this._queue.flush()}}},9282:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.updateWindowsModeWrappedState=void 0;const l=a(643);r.updateWindowsModeWrappedState=function(_){const n=_.buffer.lines.get(_.buffer.ybase+_.buffer.y-1),d=n==null?void 0:n.get(_.cols-1),v=_.buffer.lines.get(_.buffer.ybase+_.buffer.y);v&&d&&(v.isWrapped=d[l.CHAR_DATA_CODE_INDEX]!==l.NULL_CELL_CODE&&d[l.CHAR_DATA_CODE_INDEX]!==l.WHITESPACE_CELL_CODE)}},3734:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ExtendedAttrs=r.AttributeData=void 0;class a{constructor(){this.fg=0,this.bg=0,this.extended=new l}static toColorRGB(n){return[n>>>16&255,n>>>8&255,255&n]}static fromColorRGB(n){return(255&n[0])<<16|(255&n[1])<<8|255&n[2]}clone(){const n=new a;return n.fg=this.fg,n.bg=this.bg,n.extended=this.extended.clone(),n}isInverse(){return 67108864&this.fg}isBold(){return 134217728&this.fg}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:268435456&this.fg}isBlink(){return 536870912&this.fg}isInvisible(){return 1073741824&this.fg}isItalic(){return 67108864&this.bg}isDim(){return 134217728&this.bg}isStrikethrough(){return 2147483648&this.fg}isProtected(){return 536870912&this.bg}isOverline(){return 1073741824&this.bg}getFgColorMode(){return 50331648&this.fg}getBgColorMode(){return 50331648&this.bg}isFgRGB(){return(50331648&this.fg)==50331648}isBgRGB(){return(50331648&this.bg)==50331648}isFgPalette(){return(50331648&this.fg)==16777216||(50331648&this.fg)==33554432}isBgPalette(){return(50331648&this.bg)==16777216||(50331648&this.bg)==33554432}isFgDefault(){return(50331648&this.fg)==0}isBgDefault(){return(50331648&this.bg)==0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}}getBgColor(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}}hasExtendedAttrs(){return 268435456&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==50331648:this.isFgRGB()}isUnderlineColorPalette(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==16777216||(50331648&this.extended.underlineColor)==33554432:this.isFgPalette()}isUnderlineColorDefault(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==0:this.isFgDefault()}getUnderlineStyle(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}}r.AttributeData=a;class l{get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(n){this._ext=n}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(n){this._ext&=-469762049,this._ext|=n<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(n){this._ext&=-67108864,this._ext|=67108863&n}get urlId(){return this._urlId}set urlId(n){this._urlId=n}get underlineVariantOffset(){const n=(3758096384&this._ext)>>29;return n<0?4294967288^n:n}set underlineVariantOffset(n){this._ext&=536870911,this._ext|=n<<29&3758096384}constructor(n=0,d=0){this._ext=0,this._urlId=0,this._ext=n,this._urlId=d}clone(){return new l(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}}r.ExtendedAttrs=l},9092:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Buffer=r.MAX_BUFFER_SIZE=void 0;const l=a(6349),_=a(7226),n=a(3734),d=a(8437),v=a(4634),g=a(511),h=a(643),i=a(4863),s=a(7116);r.MAX_BUFFER_SIZE=4294967295,r.Buffer=class{constructor(e,t,o){this._hasScrollback=e,this._optionsService=t,this._bufferService=o,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=d.DEFAULT_ATTR_DATA.clone(),this.savedCharset=s.DEFAULT_CHARSET,this.markers=[],this._nullCell=g.CellData.fromCharData([0,h.NULL_CELL_CHAR,h.NULL_CELL_WIDTH,h.NULL_CELL_CODE]),this._whitespaceCell=g.CellData.fromCharData([0,h.WHITESPACE_CELL_CHAR,h.WHITESPACE_CELL_WIDTH,h.WHITESPACE_CELL_CODE]),this._isClearing=!1,this._memoryCleanupQueue=new _.IdleTaskQueue,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new l.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new n.ExtendedAttrs),this._nullCell}getWhitespaceCell(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new n.ExtendedAttrs),this._whitespaceCell}getBlankLine(e,t){return new d.BufferLine(this._bufferService.cols,this.getNullCell(e),t)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){const e=this.ybase+this.y-this.ydisp;return e>=0&&e<this._rows}_getCorrectBufferLength(e){if(!this._hasScrollback)return e;const t=e+this._optionsService.rawOptions.scrollback;return t>r.MAX_BUFFER_SIZE?r.MAX_BUFFER_SIZE:t}fillViewportRows(e){if(this.lines.length===0){e===void 0&&(e=d.DEFAULT_ATTR_DATA);let t=this._rows;for(;t--;)this.lines.push(this.getBlankLine(e))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new l.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(e,t){const o=this.getNullCell(d.DEFAULT_ATTR_DATA);let f=0;const u=this._getCorrectBufferLength(t);if(u>this.lines.maxLength&&(this.lines.maxLength=u),this.lines.length>0){if(this._cols<e)for(let c=0;c<this.lines.length;c++)f+=+this.lines.get(c).resize(e,o);let p=0;if(this._rows<t)for(let c=this._rows;c<t;c++)this.lines.length<t+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new d.BufferLine(e,o)):this.ybase>0&&this.lines.length<=this.ybase+this.y+p+1?(this.ybase--,p++,this.ydisp>0&&this.ydisp--):this.lines.push(new d.BufferLine(e,o)));else for(let c=this._rows;c>t;c--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(u<this.lines.maxLength){const c=this.lines.length-u;c>0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=u}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),p&&(this.y+=p),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(let p=0;p<this.lines.length;p++)f+=+this.lines.get(p).resize(e,o);this._cols=e,this._rows=t,this._memoryCleanupQueue.clear(),f>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue((()=>this._batchedMemoryCleanup())))}_batchedMemoryCleanup(){let e=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,e=!1);let t=0;for(;this._memoryCleanupPosition<this.lines.length;)if(t+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),t>100)return!0;return e}get _isReflowEnabled(){const e=this._optionsService.rawOptions.windowsPty;return e&&e.buildNumber?this._hasScrollback&&e.backend==="conpty"&&e.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(e,t){this._cols!==e&&(e>this._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))}_reflowLarger(e,t){const o=(0,v.reflowLargerGetLinesToRemove)(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(d.DEFAULT_ATTR_DATA));if(o.length>0){const f=(0,v.reflowLargerCreateNewLayout)(this.lines,o);(0,v.reflowLargerApplyNewLayout)(this.lines,f.layout),this._reflowLargerAdjustViewport(e,t,f.countRemoved)}}_reflowLargerAdjustViewport(e,t,o){const f=this.getNullCell(d.DEFAULT_ATTR_DATA);let u=o;for(;u-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<t&&this.lines.push(new d.BufferLine(e,f))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-o,0)}_reflowSmaller(e,t){const o=this.getNullCell(d.DEFAULT_ATTR_DATA),f=[];let u=0;for(let p=this.lines.length-1;p>=0;p--){let c=this.lines.get(p);if(!c||!c.isWrapped&&c.getTrimmedLength()<=e)continue;const m=[c];for(;c.isWrapped&&p>0;)c=this.lines.get(--p),m.unshift(c);const y=this.ybase+this.y;if(y>=p&&y<p+m.length)continue;const k=m[m.length-1].getTrimmedLength(),L=(0,v.reflowSmallerGetNewLineLengths)(m,this._cols,e),w=L.length-m.length;let x;x=this.ybase===0&&this.y!==this.lines.length-1?Math.max(0,this.y-this.lines.maxLength+w):Math.max(0,this.lines.length-this.lines.maxLength+w);const B=[];for(let E=0;E<w;E++){const D=this.getBlankLine(d.DEFAULT_ATTR_DATA,!0);B.push(D)}B.length>0&&(f.push({start:p+m.length+u,newLines:B}),u+=B.length),m.push(...B);let P=L.length-1,U=L[P];U===0&&(P--,U=L[P]);let I=m.length-w-1,S=k;for(;I>=0;){const E=Math.min(S,U);if(m[P]===void 0)break;if(m[P].copyCellsFrom(m[I],S-E,U-E,E,!0),U-=E,U===0&&(P--,U=L[P]),S-=E,S===0){I--;const D=Math.max(I,0);S=(0,v.getWrappedLineTrimmedLength)(m,D,this._cols)}}for(let E=0;E<m.length;E++)L[E]<e&&m[E].setCell(L[E],o);let b=w-x;for(;b-- >0;)this.ybase===0?this.y<t-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+u)-t&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+w,this.ybase+t-1)}if(f.length>0){const p=[],c=[];for(let P=0;P<this.lines.length;P++)c.push(this.lines.get(P));const m=this.lines.length;let y=m-1,k=0,L=f[k];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+u);let w=0;for(let P=Math.min(this.lines.maxLength-1,m+u-1);P>=0;P--)if(L&&L.start>y+w){for(let U=L.newLines.length-1;U>=0;U--)this.lines.set(P--,L.newLines[U]);P++,p.push({index:y+1,amount:L.newLines.length}),w+=L.newLines.length,L=f[++k]}else this.lines.set(P,c[y--]);let x=0;for(let P=p.length-1;P>=0;P--)p[P].index+=x,this.lines.onInsertEmitter.fire(p[P]),x+=p[P].amount;const B=Math.max(0,m+u-this.lines.maxLength);B>0&&this.lines.onTrimEmitter.fire(B)}}translateBufferLineToString(e,t,o=0,f){const u=this.lines.get(e);return u?u.translateToString(t,o,f):""}getWrappedRangeForLine(e){let t=e,o=e;for(;t>0&&this.lines.get(t).isWrapped;)t--;for(;o+1<this.lines.length&&this.lines.get(o+1).isWrapped;)o++;return{first:t,last:o}}setupTabStops(e){for(e!=null?this.tabs[e]||(e=this.prevStop(e)):(this.tabs={},e=0);e<this._cols;e+=this._optionsService.rawOptions.tabStopWidth)this.tabs[e]=!0}prevStop(e){for(e==null&&(e=this.x);!this.tabs[--e]&&e>0;);return e>=this._cols?this._cols-1:e<0?0:e}nextStop(e){for(e==null&&(e=this.x);!this.tabs[++e]&&e<this._cols;);return e>=this._cols?this._cols-1:e<0?0:e}clearMarkers(e){this._isClearing=!0;for(let t=0;t<this.markers.length;t++)this.markers[t].line===e&&(this.markers[t].dispose(),this.markers.splice(t--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let e=0;e<this.markers.length;e++)this.markers[e].dispose(),this.markers.splice(e--,1);this._isClearing=!1}addMarker(e){const t=new i.Marker(e);return this.markers.push(t),t.register(this.lines.onTrim((o=>{t.line-=o,t.line<0&&t.dispose()}))),t.register(this.lines.onInsert((o=>{t.line>=o.index&&(t.line+=o.amount)}))),t.register(this.lines.onDelete((o=>{t.line>=o.index&&t.line<o.index+o.amount&&t.dispose(),t.line>o.index&&(t.line-=o.amount)}))),t.register(t.onDispose((()=>this._removeMarker(t)))),t}_removeMarker(e){this._isClearing||this.markers.splice(this.markers.indexOf(e),1)}}},8437:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferLine=r.DEFAULT_ATTR_DATA=void 0;const l=a(3734),_=a(511),n=a(643),d=a(482);r.DEFAULT_ATTR_DATA=Object.freeze(new l.AttributeData);let v=0;class g{constructor(i,s,e=!1){this.isWrapped=e,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*i);const t=s||_.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]);for(let o=0;o<i;++o)this.setCell(o,t);this.length=i}get(i){const s=this._data[3*i+0],e=2097151&s;return[this._data[3*i+1],2097152&s?this._combined[i]:e?(0,d.stringFromCodePoint)(e):"",s>>22,2097152&s?this._combined[i].charCodeAt(this._combined[i].length-1):e]}set(i,s){this._data[3*i+1]=s[n.CHAR_DATA_ATTR_INDEX],s[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[i]=s[1],this._data[3*i+0]=2097152|i|s[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*i+0]=s[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|s[n.CHAR_DATA_WIDTH_INDEX]<<22}getWidth(i){return this._data[3*i+0]>>22}hasWidth(i){return 12582912&this._data[3*i+0]}getFg(i){return this._data[3*i+1]}getBg(i){return this._data[3*i+2]}hasContent(i){return 4194303&this._data[3*i+0]}getCodePoint(i){const s=this._data[3*i+0];return 2097152&s?this._combined[i].charCodeAt(this._combined[i].length-1):2097151&s}isCombined(i){return 2097152&this._data[3*i+0]}getString(i){const s=this._data[3*i+0];return 2097152&s?this._combined[i]:2097151&s?(0,d.stringFromCodePoint)(2097151&s):""}isProtected(i){return 536870912&this._data[3*i+2]}loadCell(i,s){return v=3*i,s.content=this._data[v+0],s.fg=this._data[v+1],s.bg=this._data[v+2],2097152&s.content&&(s.combinedData=this._combined[i]),268435456&s.bg&&(s.extended=this._extendedAttrs[i]),s}setCell(i,s){2097152&s.content&&(this._combined[i]=s.combinedData),268435456&s.bg&&(this._extendedAttrs[i]=s.extended),this._data[3*i+0]=s.content,this._data[3*i+1]=s.fg,this._data[3*i+2]=s.bg}setCellFromCodepoint(i,s,e,t){268435456&t.bg&&(this._extendedAttrs[i]=t.extended),this._data[3*i+0]=s|e<<22,this._data[3*i+1]=t.fg,this._data[3*i+2]=t.bg}addCodepointToCell(i,s,e){let t=this._data[3*i+0];2097152&t?this._combined[i]+=(0,d.stringFromCodePoint)(s):2097151&t?(this._combined[i]=(0,d.stringFromCodePoint)(2097151&t)+(0,d.stringFromCodePoint)(s),t&=-2097152,t|=2097152):t=s|4194304,e&&(t&=-12582913,t|=e<<22),this._data[3*i+0]=t}insertCells(i,s,e){if((i%=this.length)&&this.getWidth(i-1)===2&&this.setCellFromCodepoint(i-1,0,1,e),s<this.length-i){const t=new _.CellData;for(let o=this.length-i-s-1;o>=0;--o)this.setCell(i+s+o,this.loadCell(i+o,t));for(let o=0;o<s;++o)this.setCell(i+o,e)}else for(let t=i;t<this.length;++t)this.setCell(t,e);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,e)}deleteCells(i,s,e){if(i%=this.length,s<this.length-i){const t=new _.CellData;for(let o=0;o<this.length-i-s;++o)this.setCell(i+o,this.loadCell(i+s+o,t));for(let o=this.length-s;o<this.length;++o)this.setCell(o,e)}else for(let t=i;t<this.length;++t)this.setCell(t,e);i&&this.getWidth(i-1)===2&&this.setCellFromCodepoint(i-1,0,1,e),this.getWidth(i)!==0||this.hasContent(i)||this.setCellFromCodepoint(i,0,1,e)}replaceCells(i,s,e,t=!1){if(t)for(i&&this.getWidth(i-1)===2&&!this.isProtected(i-1)&&this.setCellFromCodepoint(i-1,0,1,e),s<this.length&&this.getWidth(s-1)===2&&!this.isProtected(s)&&this.setCellFromCodepoint(s,0,1,e);i<s&&i<this.length;)this.isProtected(i)||this.setCell(i,e),i++;else for(i&&this.getWidth(i-1)===2&&this.setCellFromCodepoint(i-1,0,1,e),s<this.length&&this.getWidth(s-1)===2&&this.setCellFromCodepoint(s,0,1,e);i<s&&i<this.length;)this.setCell(i++,e)}resize(i,s){if(i===this.length)return 4*this._data.length*2<this._data.buffer.byteLength;const e=3*i;if(i>this.length){if(this._data.buffer.byteLength>=4*e)this._data=new Uint32Array(this._data.buffer,0,e);else{const t=new Uint32Array(e);t.set(this._data),this._data=t}for(let t=this.length;t<i;++t)this.setCell(t,s)}else{this._data=this._data.subarray(0,e);const t=Object.keys(this._combined);for(let f=0;f<t.length;f++){const u=parseInt(t[f],10);u>=i&&delete this._combined[u]}const o=Object.keys(this._extendedAttrs);for(let f=0;f<o.length;f++){const u=parseInt(o[f],10);u>=i&&delete this._extendedAttrs[u]}}return this.length=i,4*e*2<this._data.buffer.byteLength}cleanupMemory(){if(4*this._data.length*2<this._data.buffer.byteLength){const i=new Uint32Array(this._data.length);return i.set(this._data),this._data=i,1}return 0}fill(i,s=!1){if(s)for(let e=0;e<this.length;++e)this.isProtected(e)||this.setCell(e,i);else{this._combined={},this._extendedAttrs={};for(let e=0;e<this.length;++e)this.setCell(e,i)}}copyFrom(i){this.length!==i.length?this._data=new Uint32Array(i._data):this._data.set(i._data),this.length=i.length,this._combined={};for(const s in i._combined)this._combined[s]=i._combined[s];this._extendedAttrs={};for(const s in i._extendedAttrs)this._extendedAttrs[s]=i._extendedAttrs[s];this.isWrapped=i.isWrapped}clone(){const i=new g(0);i._data=new Uint32Array(this._data),i.length=this.length;for(const s in this._combined)i._combined[s]=this._combined[s];for(const s in this._extendedAttrs)i._extendedAttrs[s]=this._extendedAttrs[s];return i.isWrapped=this.isWrapped,i}getTrimmedLength(){for(let i=this.length-1;i>=0;--i)if(4194303&this._data[3*i+0])return i+(this._data[3*i+0]>>22);return 0}getNoBgTrimmedLength(){for(let i=this.length-1;i>=0;--i)if(4194303&this._data[3*i+0]||50331648&this._data[3*i+2])return i+(this._data[3*i+0]>>22);return 0}copyCellsFrom(i,s,e,t,o){const f=i._data;if(o)for(let p=t-1;p>=0;p--){for(let c=0;c<3;c++)this._data[3*(e+p)+c]=f[3*(s+p)+c];268435456&f[3*(s+p)+2]&&(this._extendedAttrs[e+p]=i._extendedAttrs[s+p])}else for(let p=0;p<t;p++){for(let c=0;c<3;c++)this._data[3*(e+p)+c]=f[3*(s+p)+c];268435456&f[3*(s+p)+2]&&(this._extendedAttrs[e+p]=i._extendedAttrs[s+p])}const u=Object.keys(i._combined);for(let p=0;p<u.length;p++){const c=parseInt(u[p],10);c>=s&&(this._combined[c-s+e]=i._combined[c])}}translateToString(i,s,e,t){s=s??0,e=e??this.length,i&&(e=Math.min(e,this.getTrimmedLength())),t&&(t.length=0);let o="";for(;s<e;){const f=this._data[3*s+0],u=2097151&f,p=2097152&f?this._combined[s]:u?(0,d.stringFromCodePoint)(u):n.WHITESPACE_CELL_CHAR;if(o+=p,t)for(let c=0;c<p.length;++c)t.push(s);s+=f>>22||1}return t&&t.push(s),o}}r.BufferLine=g},4841:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.getRangeLength=void 0,r.getRangeLength=function(a,l){if(a.start.y>a.end.y)throw new Error(`Buffer range end (${a.end.x}, ${a.end.y}) cannot be before start (${a.start.x}, ${a.start.y})`);return l*(a.end.y-a.start.y)+(a.end.x-a.start.x+1)}},4634:(O,r)=>{function a(l,_,n){if(_===l.length-1)return l[_].getTrimmedLength();const d=!l[_].hasContent(n-1)&&l[_].getWidth(n-1)===1,v=l[_+1].getWidth(0)===2;return d&&v?n-1:n}Object.defineProperty(r,"__esModule",{value:!0}),r.getWrappedLineTrimmedLength=r.reflowSmallerGetNewLineLengths=r.reflowLargerApplyNewLayout=r.reflowLargerCreateNewLayout=r.reflowLargerGetLinesToRemove=void 0,r.reflowLargerGetLinesToRemove=function(l,_,n,d,v){const g=[];for(let h=0;h<l.length-1;h++){let i=h,s=l.get(++i);if(!s.isWrapped)continue;const e=[l.get(h)];for(;i<l.length&&s.isWrapped;)e.push(s),s=l.get(++i);if(d>=h&&d<i){h+=e.length-1;continue}let t=0,o=a(e,t,_),f=1,u=0;for(;f<e.length;){const c=a(e,f,_),m=c-u,y=n-o,k=Math.min(m,y);e[t].copyCellsFrom(e[f],u,o,k,!1),o+=k,o===n&&(t++,o=0),u+=k,u===c&&(f++,u=0),o===0&&t!==0&&e[t-1].getWidth(n-1)===2&&(e[t].copyCellsFrom(e[t-1],n-1,o++,1,!1),e[t-1].setCell(n-1,v))}e[t].replaceCells(o,n,v);let p=0;for(let c=e.length-1;c>0&&(c>t||e[c].getTrimmedLength()===0);c--)p++;p>0&&(g.push(h+e.length-p),g.push(p)),h+=e.length-1}return g},r.reflowLargerCreateNewLayout=function(l,_){const n=[];let d=0,v=_[d],g=0;for(let h=0;h<l.length;h++)if(v===h){const i=_[++d];l.onDeleteEmitter.fire({index:h-g,amount:i}),h+=i-1,g+=i,v=_[++d]}else n.push(h);return{layout:n,countRemoved:g}},r.reflowLargerApplyNewLayout=function(l,_){const n=[];for(let d=0;d<_.length;d++)n.push(l.get(_[d]));for(let d=0;d<n.length;d++)l.set(d,n[d]);l.length=_.length},r.reflowSmallerGetNewLineLengths=function(l,_,n){const d=[],v=l.map(((s,e)=>a(l,e,_))).reduce(((s,e)=>s+e));let g=0,h=0,i=0;for(;i<v;){if(v-i<n){d.push(v-i);break}g+=n;const s=a(l,h,_);g>s&&(g-=s,h++);const e=l[h].getWidth(g-1)===2;e&&g--;const t=e?n-1:n;d.push(t),i+=t}return d},r.getWrappedLineTrimmedLength=a},5295:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferSet=void 0;const l=a(8460),_=a(844),n=a(9092);class d extends _.Disposable{constructor(g,h){super(),this._optionsService=g,this._bufferService=h,this._onBufferActivate=this.register(new l.EventEmitter),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this.register(this._optionsService.onSpecificOptionChange("scrollback",(()=>this.resize(this._bufferService.cols,this._bufferService.rows)))),this.register(this._optionsService.onSpecificOptionChange("tabStopWidth",(()=>this.setupTabStops())))}reset(){this._normal=new n.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new n.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(g){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(g),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(g,h){this._normal.resize(g,h),this._alt.resize(g,h),this.setupTabStops(g)}setupTabStops(g){this._normal.setupTabStops(g),this._alt.setupTabStops(g)}}r.BufferSet=d},511:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CellData=void 0;const l=a(482),_=a(643),n=a(3734);class d extends n.AttributeData{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new n.ExtendedAttrs,this.combinedData=""}static fromCharData(g){const h=new d;return h.setFromCharData(g),h}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?(0,l.stringFromCodePoint)(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(g){this.fg=g[_.CHAR_DATA_ATTR_INDEX],this.bg=0;let h=!1;if(g[_.CHAR_DATA_CHAR_INDEX].length>2)h=!0;else if(g[_.CHAR_DATA_CHAR_INDEX].length===2){const i=g[_.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=i&&i<=56319){const s=g[_.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=s&&s<=57343?this.content=1024*(i-55296)+s-56320+65536|g[_.CHAR_DATA_WIDTH_INDEX]<<22:h=!0}else h=!0}else this.content=g[_.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|g[_.CHAR_DATA_WIDTH_INDEX]<<22;h&&(this.combinedData=g[_.CHAR_DATA_CHAR_INDEX],this.content=2097152|g[_.CHAR_DATA_WIDTH_INDEX]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}r.CellData=d},643:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.WHITESPACE_CELL_CODE=r.WHITESPACE_CELL_WIDTH=r.WHITESPACE_CELL_CHAR=r.NULL_CELL_CODE=r.NULL_CELL_WIDTH=r.NULL_CELL_CHAR=r.CHAR_DATA_CODE_INDEX=r.CHAR_DATA_WIDTH_INDEX=r.CHAR_DATA_CHAR_INDEX=r.CHAR_DATA_ATTR_INDEX=r.DEFAULT_EXT=r.DEFAULT_ATTR=r.DEFAULT_COLOR=void 0,r.DEFAULT_COLOR=0,r.DEFAULT_ATTR=256|r.DEFAULT_COLOR<<9,r.DEFAULT_EXT=0,r.CHAR_DATA_ATTR_INDEX=0,r.CHAR_DATA_CHAR_INDEX=1,r.CHAR_DATA_WIDTH_INDEX=2,r.CHAR_DATA_CODE_INDEX=3,r.NULL_CELL_CHAR="",r.NULL_CELL_WIDTH=1,r.NULL_CELL_CODE=0,r.WHITESPACE_CELL_CHAR=" ",r.WHITESPACE_CELL_WIDTH=1,r.WHITESPACE_CELL_CODE=32},4863:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Marker=void 0;const l=a(8460),_=a(844);class n{get id(){return this._id}constructor(v){this.line=v,this.isDisposed=!1,this._disposables=[],this._id=n._nextId++,this._onDispose=this.register(new l.EventEmitter),this.onDispose=this._onDispose.event}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),(0,_.disposeArray)(this._disposables),this._disposables.length=0)}register(v){return this._disposables.push(v),v}}r.Marker=n,n._nextId=1},7116:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.DEFAULT_CHARSET=r.CHARSETS=void 0,r.CHARSETS={},r.DEFAULT_CHARSET=r.CHARSETS.B,r.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},r.CHARSETS.A={"#":"£"},r.CHARSETS.B=void 0,r.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},r.CHARSETS.C=r.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"Ã¥","~":"ü"},r.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},r.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},r.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},r.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},r.CHARSETS.E=r.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"Ã¥","~":"ü"},r.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},r.CHARSETS.H=r.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"Ã¥","~":"ü"},r.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(O,r)=>{var a,l,_;Object.defineProperty(r,"__esModule",{value:!0}),r.C1_ESCAPED=r.C1=r.C0=void 0,(function(n){n.NUL="\0",n.SOH="",n.STX="",n.ETX="",n.EOT="",n.ENQ="",n.ACK="",n.BEL="\x07",n.BS="\b",n.HT="    ",n.LF=`
`,n.VT="\v",n.FF="\f",n.CR="\r",n.SO="",n.SI="",n.DLE="",n.DC1="",n.DC2="",n.DC3="",n.DC4="",n.NAK="",n.SYN="",n.ETB="",n.CAN="",n.EM="",n.SUB="",n.ESC="\x1B",n.FS="",n.GS="",n.RS="",n.US="",n.SP=" ",n.DEL=""})(a||(r.C0=a={})),(function(n){n.PAD="€",n.HOP="",n.BPH="‚",n.NBH="ƒ",n.IND="„",n.NEL="…",n.SSA="†",n.ESA="‡",n.HTS="ˆ",n.HTJ="‰",n.VTS="Š",n.PLD="‹",n.PLU="Œ",n.RI="",n.SS2="Ž",n.SS3="",n.DCS="",n.PU1="‘",n.PU2="’",n.STS="“",n.CCH="”",n.MW="•",n.SPA="–",n.EPA="—",n.SOS="˜",n.SGCI="™",n.SCI="š",n.CSI="›",n.ST="œ",n.OSC="",n.PM="ž",n.APC="Ÿ"})(l||(r.C1=l={})),(function(n){n.ST=`${a.ESC}\\`})(_||(r.C1_ESCAPED=_={}))},7399:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.evaluateKeyboardEvent=void 0;const l=a(2584),_={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};r.evaluateKeyboardEvent=function(n,d,v,g){const h={type:0,cancel:!1,key:void 0},i=(n.shiftKey?1:0)|(n.altKey?2:0)|(n.ctrlKey?4:0)|(n.metaKey?8:0);switch(n.keyCode){case 0:n.key==="UIKeyInputUpArrow"?h.key=d?l.C0.ESC+"OA":l.C0.ESC+"[A":n.key==="UIKeyInputLeftArrow"?h.key=d?l.C0.ESC+"OD":l.C0.ESC+"[D":n.key==="UIKeyInputRightArrow"?h.key=d?l.C0.ESC+"OC":l.C0.ESC+"[C":n.key==="UIKeyInputDownArrow"&&(h.key=d?l.C0.ESC+"OB":l.C0.ESC+"[B");break;case 8:h.key=n.ctrlKey?"\b":l.C0.DEL,n.altKey&&(h.key=l.C0.ESC+h.key);break;case 9:if(n.shiftKey){h.key=l.C0.ESC+"[Z";break}h.key=l.C0.HT,h.cancel=!0;break;case 13:h.key=n.altKey?l.C0.ESC+l.C0.CR:l.C0.CR,h.cancel=!0;break;case 27:h.key=l.C0.ESC,n.altKey&&(h.key=l.C0.ESC+l.C0.ESC),h.cancel=!0;break;case 37:if(n.metaKey)break;i?(h.key=l.C0.ESC+"[1;"+(i+1)+"D",h.key===l.C0.ESC+"[1;3D"&&(h.key=l.C0.ESC+(v?"b":"[1;5D"))):h.key=d?l.C0.ESC+"OD":l.C0.ESC+"[D";break;case 39:if(n.metaKey)break;i?(h.key=l.C0.ESC+"[1;"+(i+1)+"C",h.key===l.C0.ESC+"[1;3C"&&(h.key=l.C0.ESC+(v?"f":"[1;5C"))):h.key=d?l.C0.ESC+"OC":l.C0.ESC+"[C";break;case 38:if(n.metaKey)break;i?(h.key=l.C0.ESC+"[1;"+(i+1)+"A",v||h.key!==l.C0.ESC+"[1;3A"||(h.key=l.C0.ESC+"[1;5A")):h.key=d?l.C0.ESC+"OA":l.C0.ESC+"[A";break;case 40:if(n.metaKey)break;i?(h.key=l.C0.ESC+"[1;"+(i+1)+"B",v||h.key!==l.C0.ESC+"[1;3B"||(h.key=l.C0.ESC+"[1;5B")):h.key=d?l.C0.ESC+"OB":l.C0.ESC+"[B";break;case 45:n.shiftKey||n.ctrlKey||(h.key=l.C0.ESC+"[2~");break;case 46:h.key=i?l.C0.ESC+"[3;"+(i+1)+"~":l.C0.ESC+"[3~";break;case 36:h.key=i?l.C0.ESC+"[1;"+(i+1)+"H":d?l.C0.ESC+"OH":l.C0.ESC+"[H";break;case 35:h.key=i?l.C0.ESC+"[1;"+(i+1)+"F":d?l.C0.ESC+"OF":l.C0.ESC+"[F";break;case 33:n.shiftKey?h.type=2:n.ctrlKey?h.key=l.C0.ESC+"[5;"+(i+1)+"~":h.key=l.C0.ESC+"[5~";break;case 34:n.shiftKey?h.type=3:n.ctrlKey?h.key=l.C0.ESC+"[6;"+(i+1)+"~":h.key=l.C0.ESC+"[6~";break;case 112:h.key=i?l.C0.ESC+"[1;"+(i+1)+"P":l.C0.ESC+"OP";break;case 113:h.key=i?l.C0.ESC+"[1;"+(i+1)+"Q":l.C0.ESC+"OQ";break;case 114:h.key=i?l.C0.ESC+"[1;"+(i+1)+"R":l.C0.ESC+"OR";break;case 115:h.key=i?l.C0.ESC+"[1;"+(i+1)+"S":l.C0.ESC+"OS";break;case 116:h.key=i?l.C0.ESC+"[15;"+(i+1)+"~":l.C0.ESC+"[15~";break;case 117:h.key=i?l.C0.ESC+"[17;"+(i+1)+"~":l.C0.ESC+"[17~";break;case 118:h.key=i?l.C0.ESC+"[18;"+(i+1)+"~":l.C0.ESC+"[18~";break;case 119:h.key=i?l.C0.ESC+"[19;"+(i+1)+"~":l.C0.ESC+"[19~";break;case 120:h.key=i?l.C0.ESC+"[20;"+(i+1)+"~":l.C0.ESC+"[20~";break;case 121:h.key=i?l.C0.ESC+"[21;"+(i+1)+"~":l.C0.ESC+"[21~";break;case 122:h.key=i?l.C0.ESC+"[23;"+(i+1)+"~":l.C0.ESC+"[23~";break;case 123:h.key=i?l.C0.ESC+"[24;"+(i+1)+"~":l.C0.ESC+"[24~";break;default:if(!n.ctrlKey||n.shiftKey||n.altKey||n.metaKey)if(v&&!g||!n.altKey||n.metaKey)!v||n.altKey||n.ctrlKey||n.shiftKey||!n.metaKey?n.key&&!n.ctrlKey&&!n.altKey&&!n.metaKey&&n.keyCode>=48&&n.key.length===1?h.key=n.key:n.key&&n.ctrlKey&&(n.key==="_"&&(h.key=l.C0.US),n.key==="@"&&(h.key=l.C0.NUL)):n.keyCode===65&&(h.type=1);else{const s=_[n.keyCode],e=s==null?void 0:s[n.shiftKey?1:0];if(e)h.key=l.C0.ESC+e;else if(n.keyCode>=65&&n.keyCode<=90){const t=n.ctrlKey?n.keyCode-64:n.keyCode+32;let o=String.fromCharCode(t);n.shiftKey&&(o=o.toUpperCase()),h.key=l.C0.ESC+o}else if(n.keyCode===32)h.key=l.C0.ESC+(n.ctrlKey?l.C0.NUL:" ");else if(n.key==="Dead"&&n.code.startsWith("Key")){let t=n.code.slice(3,4);n.shiftKey||(t=t.toLowerCase()),h.key=l.C0.ESC+t,h.cancel=!0}}else n.keyCode>=65&&n.keyCode<=90?h.key=String.fromCharCode(n.keyCode-64):n.keyCode===32?h.key=l.C0.NUL:n.keyCode>=51&&n.keyCode<=55?h.key=String.fromCharCode(n.keyCode-51+27):n.keyCode===56?h.key=l.C0.DEL:n.keyCode===219?h.key=l.C0.ESC:n.keyCode===220?h.key=l.C0.FS:n.keyCode===221&&(h.key=l.C0.GS)}return h}},482:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Utf8ToUtf32=r.StringToUtf32=r.utf32ToString=r.stringFromCodePoint=void 0,r.stringFromCodePoint=function(a){return a>65535?(a-=65536,String.fromCharCode(55296+(a>>10))+String.fromCharCode(a%1024+56320)):String.fromCharCode(a)},r.utf32ToString=function(a,l=0,_=a.length){let n="";for(let d=l;d<_;++d){let v=a[d];v>65535?(v-=65536,n+=String.fromCharCode(55296+(v>>10))+String.fromCharCode(v%1024+56320)):n+=String.fromCharCode(v)}return n},r.StringToUtf32=class{constructor(){this._interim=0}clear(){this._interim=0}decode(a,l){const _=a.length;if(!_)return 0;let n=0,d=0;if(this._interim){const v=a.charCodeAt(d++);56320<=v&&v<=57343?l[n++]=1024*(this._interim-55296)+v-56320+65536:(l[n++]=this._interim,l[n++]=v),this._interim=0}for(let v=d;v<_;++v){const g=a.charCodeAt(v);if(55296<=g&&g<=56319){if(++v>=_)return this._interim=g,n;const h=a.charCodeAt(v);56320<=h&&h<=57343?l[n++]=1024*(g-55296)+h-56320+65536:(l[n++]=g,l[n++]=h)}else g!==65279&&(l[n++]=g)}return n}},r.Utf8ToUtf32=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(a,l){const _=a.length;if(!_)return 0;let n,d,v,g,h=0,i=0,s=0;if(this.interim[0]){let o=!1,f=this.interim[0];f&=(224&f)==192?31:(240&f)==224?15:7;let u,p=0;for(;(u=63&this.interim[++p])&&p<4;)f<<=6,f|=u;const c=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,m=c-p;for(;s<m;){if(s>=_)return 0;if(u=a[s++],(192&u)!=128){s--,o=!0;break}this.interim[p++]=u,f<<=6,f|=63&u}o||(c===2?f<128?s--:l[h++]=f:c===3?f<2048||f>=55296&&f<=57343||f===65279||(l[h++]=f):f<65536||f>1114111||(l[h++]=f)),this.interim.fill(0)}const e=_-4;let t=s;for(;t<_;){for(;!(!(t<e)||128&(n=a[t])||128&(d=a[t+1])||128&(v=a[t+2])||128&(g=a[t+3]));)l[h++]=n,l[h++]=d,l[h++]=v,l[h++]=g,t+=4;if(n=a[t++],n<128)l[h++]=n;else if((224&n)==192){if(t>=_)return this.interim[0]=n,h;if(d=a[t++],(192&d)!=128){t--;continue}if(i=(31&n)<<6|63&d,i<128){t--;continue}l[h++]=i}else if((240&n)==224){if(t>=_)return this.interim[0]=n,h;if(d=a[t++],(192&d)!=128){t--;continue}if(t>=_)return this.interim[0]=n,this.interim[1]=d,h;if(v=a[t++],(192&v)!=128){t--;continue}if(i=(15&n)<<12|(63&d)<<6|63&v,i<2048||i>=55296&&i<=57343||i===65279)continue;l[h++]=i}else if((248&n)==240){if(t>=_)return this.interim[0]=n,h;if(d=a[t++],(192&d)!=128){t--;continue}if(t>=_)return this.interim[0]=n,this.interim[1]=d,h;if(v=a[t++],(192&v)!=128){t--;continue}if(t>=_)return this.interim[0]=n,this.interim[1]=d,this.interim[2]=v,h;if(g=a[t++],(192&g)!=128){t--;continue}if(i=(7&n)<<18|(63&d)<<12|(63&v)<<6|63&g,i<65536||i>1114111)continue;l[h++]=i}}return h}}},225:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.UnicodeV6=void 0;const l=a(1480),_=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],n=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]];let d;r.UnicodeV6=class{constructor(){if(this.version="6",!d){d=new Uint8Array(65536),d.fill(1),d[0]=0,d.fill(0,1,32),d.fill(0,127,160),d.fill(2,4352,4448),d[9001]=2,d[9002]=2,d.fill(2,11904,42192),d[12351]=1,d.fill(2,44032,55204),d.fill(2,63744,64256),d.fill(2,65040,65050),d.fill(2,65072,65136),d.fill(2,65280,65377),d.fill(2,65504,65511);for(let v=0;v<_.length;++v)d.fill(0,_[v][0],_[v][1]+1)}}wcwidth(v){return v<32?0:v<127?1:v<65536?d[v]:(function(g,h){let i,s=0,e=h.length-1;if(g<h[0][0]||g>h[e][1])return!1;for(;e>=s;)if(i=s+e>>1,g>h[i][1])s=i+1;else{if(!(g<h[i][0]))return!0;e=i-1}return!1})(v,n)?0:v>=131072&&v<=196605||v>=196608&&v<=262141?2:1}charProperties(v,g){let h=this.wcwidth(v),i=h===0&&g!==0;if(i){const s=l.UnicodeService.extractWidth(g);s===0?i=!1:s>h&&(h=s)}return l.UnicodeService.createPropertyValue(0,h,i)}}},5981:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.WriteBuffer=void 0;const l=a(8460),_=a(844);class n extends _.Disposable{constructor(v){super(),this._action=v,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this.register(new l.EventEmitter),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(v,g){if(g!==void 0&&this._syncCalls>g)return void(this._syncCalls=0);if(this._pendingData+=v.length,this._writeBuffer.push(v),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;let h;for(this._isSyncWriting=!0;h=this._writeBuffer.shift();){this._action(h);const i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(v,g){if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput)return this._didUserInput=!1,this._pendingData+=v.length,this._writeBuffer.push(v),this._callbacks.push(g),void this._innerWrite();setTimeout((()=>this._innerWrite()))}this._pendingData+=v.length,this._writeBuffer.push(v),this._callbacks.push(g)}_innerWrite(v=0,g=!0){const h=v||Date.now();for(;this._writeBuffer.length>this._bufferOffset;){const i=this._writeBuffer[this._bufferOffset],s=this._action(i,g);if(s){const t=o=>Date.now()-h>=12?setTimeout((()=>this._innerWrite(0,o))):this._innerWrite(h,o);return void s.catch((o=>(queueMicrotask((()=>{throw o})),Promise.resolve(!1)))).then(t)}const e=this._callbacks[this._bufferOffset];if(e&&e(),this._bufferOffset++,this._pendingData-=i.length,Date.now()-h>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((()=>this._innerWrite()))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}}r.WriteBuffer=n},5941:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.toRgbString=r.parseColor=void 0;const a=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,l=/^[\da-f]+$/;function _(n,d){const v=n.toString(16),g=v.length<2?"0"+v:v;switch(d){case 4:return v[0];case 8:return g;case 12:return(g+g).slice(0,3);default:return g+g}}r.parseColor=function(n){if(!n)return;let d=n.toLowerCase();if(d.indexOf("rgb:")===0){d=d.slice(4);const v=a.exec(d);if(v){const g=v[1]?15:v[4]?255:v[7]?4095:65535;return[Math.round(parseInt(v[1]||v[4]||v[7]||v[10],16)/g*255),Math.round(parseInt(v[2]||v[5]||v[8]||v[11],16)/g*255),Math.round(parseInt(v[3]||v[6]||v[9]||v[12],16)/g*255)]}}else if(d.indexOf("#")===0&&(d=d.slice(1),l.exec(d)&&[3,6,9,12].includes(d.length))){const v=d.length/3,g=[0,0,0];for(let h=0;h<3;++h){const i=parseInt(d.slice(v*h,v*h+v),16);g[h]=v===1?i<<4:v===2?i:v===3?i>>4:i>>8}return g}},r.toRgbString=function(n,d=16){const[v,g,h]=n;return`rgb:${_(v,d)}/${_(g,d)}/${_(h,d)}`}},5770:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.PAYLOAD_LIMIT=void 0,r.PAYLOAD_LIMIT=1e7},6351:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.DcsHandler=r.DcsParser=void 0;const l=a(482),_=a(8742),n=a(5770),d=[];r.DcsParser=class{constructor(){this._handlers=Object.create(null),this._active=d,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=d}registerHandler(g,h){this._handlers[g]===void 0&&(this._handlers[g]=[]);const i=this._handlers[g];return i.push(h),{dispose:()=>{const s=i.indexOf(h);s!==-1&&i.splice(s,1)}}}clearHandler(g){this._handlers[g]&&delete this._handlers[g]}setHandlerFallback(g){this._handlerFb=g}reset(){if(this._active.length)for(let g=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;g>=0;--g)this._active[g].unhook(!1);this._stack.paused=!1,this._active=d,this._ident=0}hook(g,h){if(this.reset(),this._ident=g,this._active=this._handlers[g]||d,this._active.length)for(let i=this._active.length-1;i>=0;i--)this._active[i].hook(h);else this._handlerFb(this._ident,"HOOK",h)}put(g,h,i){if(this._active.length)for(let s=this._active.length-1;s>=0;s--)this._active[s].put(g,h,i);else this._handlerFb(this._ident,"PUT",(0,l.utf32ToString)(g,h,i))}unhook(g,h=!0){if(this._active.length){let i=!1,s=this._active.length-1,e=!1;if(this._stack.paused&&(s=this._stack.loopPosition-1,i=h,e=this._stack.fallThrough,this._stack.paused=!1),!e&&i===!1){for(;s>=0&&(i=this._active[s].unhook(g),i!==!0);s--)if(i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!1,i;s--}for(;s>=0;s--)if(i=this._active[s].unhook(!1),i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!0,i}else this._handlerFb(this._ident,"UNHOOK",g);this._active=d,this._ident=0}};const v=new _.Params;v.addParam(0),r.DcsHandler=class{constructor(g){this._handler=g,this._data="",this._params=v,this._hitLimit=!1}hook(g){this._params=g.length>1||g.params[0]?g.clone():v,this._data="",this._hitLimit=!1}put(g,h,i){this._hitLimit||(this._data+=(0,l.utf32ToString)(g,h,i),this._data.length>n.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))}unhook(g){let h=!1;if(this._hitLimit)h=!1;else if(g&&(h=this._handler(this._data,this._params),h instanceof Promise))return h.then((i=>(this._params=v,this._data="",this._hitLimit=!1,i)));return this._params=v,this._data="",this._hitLimit=!1,h}}},2015:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.EscapeSequenceParser=r.VT500_TRANSITION_TABLE=r.TransitionTable=void 0;const l=a(844),_=a(8742),n=a(6242),d=a(6351);class v{constructor(s){this.table=new Uint8Array(s)}setDefault(s,e){this.table.fill(s<<4|e)}add(s,e,t,o){this.table[e<<8|s]=t<<4|o}addMany(s,e,t,o){for(let f=0;f<s.length;f++)this.table[e<<8|s[f]]=t<<4|o}}r.TransitionTable=v;const g=160;r.VT500_TRANSITION_TABLE=(function(){const i=new v(4095),s=Array.apply(null,Array(256)).map(((p,c)=>c)),e=(p,c)=>s.slice(p,c),t=e(32,127),o=e(0,24);o.push(25),o.push.apply(o,e(28,32));const f=e(0,14);let u;for(u in i.setDefault(1,0),i.addMany(t,0,2,0),f)i.addMany([24,26,153,154],u,3,0),i.addMany(e(128,144),u,3,0),i.addMany(e(144,152),u,3,0),i.add(156,u,0,0),i.add(27,u,11,1),i.add(157,u,4,8),i.addMany([152,158,159],u,0,7),i.add(155,u,11,3),i.add(144,u,11,9);return i.addMany(o,0,3,0),i.addMany(o,1,3,1),i.add(127,1,0,1),i.addMany(o,8,0,8),i.addMany(o,3,3,3),i.add(127,3,0,3),i.addMany(o,4,3,4),i.add(127,4,0,4),i.addMany(o,6,3,6),i.addMany(o,5,3,5),i.add(127,5,0,5),i.addMany(o,2,3,2),i.add(127,2,0,2),i.add(93,1,4,8),i.addMany(t,8,5,8),i.add(127,8,5,8),i.addMany([156,27,24,26,7],8,6,0),i.addMany(e(28,32),8,0,8),i.addMany([88,94,95],1,0,7),i.addMany(t,7,0,7),i.addMany(o,7,0,7),i.add(156,7,0,0),i.add(127,7,0,7),i.add(91,1,11,3),i.addMany(e(64,127),3,7,0),i.addMany(e(48,60),3,8,4),i.addMany([60,61,62,63],3,9,4),i.addMany(e(48,60),4,8,4),i.addMany(e(64,127),4,7,0),i.addMany([60,61,62,63],4,0,6),i.addMany(e(32,64),6,0,6),i.add(127,6,0,6),i.addMany(e(64,127),6,0,0),i.addMany(e(32,48),3,9,5),i.addMany(e(32,48),5,9,5),i.addMany(e(48,64),5,0,6),i.addMany(e(64,127),5,7,0),i.addMany(e(32,48),4,9,5),i.addMany(e(32,48),1,9,2),i.addMany(e(32,48),2,9,2),i.addMany(e(48,127),2,10,0),i.addMany(e(48,80),1,10,0),i.addMany(e(81,88),1,10,0),i.addMany([89,90,92],1,10,0),i.addMany(e(96,127),1,10,0),i.add(80,1,11,9),i.addMany(o,9,0,9),i.add(127,9,0,9),i.addMany(e(28,32),9,0,9),i.addMany(e(32,48),9,9,12),i.addMany(e(48,60),9,8,10),i.addMany([60,61,62,63],9,9,10),i.addMany(o,11,0,11),i.addMany(e(32,128),11,0,11),i.addMany(e(28,32),11,0,11),i.addMany(o,10,0,10),i.add(127,10,0,10),i.addMany(e(28,32),10,0,10),i.addMany(e(48,60),10,8,10),i.addMany([60,61,62,63],10,0,11),i.addMany(e(32,48),10,9,12),i.addMany(o,12,0,12),i.add(127,12,0,12),i.addMany(e(28,32),12,0,12),i.addMany(e(32,48),12,9,12),i.addMany(e(48,64),12,0,11),i.addMany(e(64,127),12,12,13),i.addMany(e(64,127),10,12,13),i.addMany(e(64,127),9,12,13),i.addMany(o,13,13,13),i.addMany(t,13,13,13),i.add(127,13,0,13),i.addMany([27,156,24,26],13,14,0),i.add(g,0,2,0),i.add(g,8,5,8),i.add(g,6,0,6),i.add(g,11,0,11),i.add(g,13,13,13),i})();class h extends l.Disposable{constructor(s=r.VT500_TRANSITION_TABLE){super(),this._transitions=s,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new _.Params,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(e,t,o)=>{},this._executeHandlerFb=e=>{},this._csiHandlerFb=(e,t)=>{},this._escHandlerFb=e=>{},this._errorHandlerFb=e=>e,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this.register((0,l.toDisposable)((()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)}))),this._oscParser=this.register(new n.OscParser),this._dcsParser=this.register(new d.DcsParser),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},(()=>!0))}_identifier(s,e=[64,126]){let t=0;if(s.prefix){if(s.prefix.length>1)throw new Error("only one byte as prefix supported");if(t=s.prefix.charCodeAt(0),t&&60>t||t>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(s.intermediates){if(s.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let f=0;f<s.intermediates.length;++f){const u=s.intermediates.charCodeAt(f);if(32>u||u>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");t<<=8,t|=u}}if(s.final.length!==1)throw new Error("final must be a single byte");const o=s.final.charCodeAt(0);if(e[0]>o||o>e[1])throw new Error(`final must be in range ${e[0]} .. ${e[1]}`);return t<<=8,t|=o,t}identToString(s){const e=[];for(;s;)e.push(String.fromCharCode(255&s)),s>>=8;return e.reverse().join("")}setPrintHandler(s){this._printHandler=s}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(s,e){const t=this._identifier(s,[48,126]);this._escHandlers[t]===void 0&&(this._escHandlers[t]=[]);const o=this._escHandlers[t];return o.push(e),{dispose:()=>{const f=o.indexOf(e);f!==-1&&o.splice(f,1)}}}clearEscHandler(s){this._escHandlers[this._identifier(s,[48,126])]&&delete this._escHandlers[this._identifier(s,[48,126])]}setEscHandlerFallback(s){this._escHandlerFb=s}setExecuteHandler(s,e){this._executeHandlers[s.charCodeAt(0)]=e}clearExecuteHandler(s){this._executeHandlers[s.charCodeAt(0)]&&delete this._executeHandlers[s.charCodeAt(0)]}setExecuteHandlerFallback(s){this._executeHandlerFb=s}registerCsiHandler(s,e){const t=this._identifier(s);this._csiHandlers[t]===void 0&&(this._csiHandlers[t]=[]);const o=this._csiHandlers[t];return o.push(e),{dispose:()=>{const f=o.indexOf(e);f!==-1&&o.splice(f,1)}}}clearCsiHandler(s){this._csiHandlers[this._identifier(s)]&&delete this._csiHandlers[this._identifier(s)]}setCsiHandlerFallback(s){this._csiHandlerFb=s}registerDcsHandler(s,e){return this._dcsParser.registerHandler(this._identifier(s),e)}clearDcsHandler(s){this._dcsParser.clearHandler(this._identifier(s))}setDcsHandlerFallback(s){this._dcsParser.setHandlerFallback(s)}registerOscHandler(s,e){return this._oscParser.registerHandler(s,e)}clearOscHandler(s){this._oscParser.clearHandler(s)}setOscHandlerFallback(s){this._oscParser.setHandlerFallback(s)}setErrorHandler(s){this._errorHandler=s}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(s,e,t,o,f){this._parseStack.state=s,this._parseStack.handlers=e,this._parseStack.handlerPos=t,this._parseStack.transition=o,this._parseStack.chunkPos=f}parse(s,e,t){let o,f=0,u=0,p=0;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,p=this._parseStack.chunkPos+1;else{if(t===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");const c=this._parseStack.handlers;let m=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(t===!1&&m>-1){for(;m>=0&&(o=c[m](this._params),o!==!0);m--)if(o instanceof Promise)return this._parseStack.handlerPos=m,o}this._parseStack.handlers=[];break;case 4:if(t===!1&&m>-1){for(;m>=0&&(o=c[m](),o!==!0);m--)if(o instanceof Promise)return this._parseStack.handlerPos=m,o}this._parseStack.handlers=[];break;case 6:if(f=s[this._parseStack.chunkPos],o=this._dcsParser.unhook(f!==24&&f!==26,t),o)return o;f===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(f=s[this._parseStack.chunkPos],o=this._oscParser.end(f!==24&&f!==26,t),o)return o;f===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,p=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=15&this._parseStack.transition}for(let c=p;c<e;++c){switch(f=s[c],u=this._transitions.table[this.currentState<<8|(f<160?f:g)],u>>4){case 2:for(let w=c+1;;++w){if(w>=e||(f=s[w])<32||f>126&&f<g){this._printHandler(s,c,w),c=w-1;break}if(++w>=e||(f=s[w])<32||f>126&&f<g){this._printHandler(s,c,w),c=w-1;break}if(++w>=e||(f=s[w])<32||f>126&&f<g){this._printHandler(s,c,w),c=w-1;break}if(++w>=e||(f=s[w])<32||f>126&&f<g){this._printHandler(s,c,w),c=w-1;break}}break;case 3:this._executeHandlers[f]?this._executeHandlers[f]():this._executeHandlerFb(f),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:c,code:f,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:const m=this._csiHandlers[this._collect<<8|f];let y=m?m.length-1:-1;for(;y>=0&&(o=m[y](this._params),o!==!0);y--)if(o instanceof Promise)return this._preserveStack(3,m,y,u,c),o;y<0&&this._csiHandlerFb(this._collect<<8|f,this._params),this.precedingJoinState=0;break;case 8:do switch(f){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(f-48)}while(++c<e&&(f=s[c])>47&&f<60);c--;break;case 9:this._collect<<=8,this._collect|=f;break;case 10:const k=this._escHandlers[this._collect<<8|f];let L=k?k.length-1:-1;for(;L>=0&&(o=k[L](),o!==!0);L--)if(o instanceof Promise)return this._preserveStack(4,k,L,u,c),o;L<0&&this._escHandlerFb(this._collect<<8|f),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|f,this._params);break;case 13:for(let w=c+1;;++w)if(w>=e||(f=s[w])===24||f===26||f===27||f>127&&f<g){this._dcsParser.put(s,c,w),c=w-1;break}break;case 14:if(o=this._dcsParser.unhook(f!==24&&f!==26),o)return this._preserveStack(6,[],0,u,c),o;f===27&&(u|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let w=c+1;;w++)if(w>=e||(f=s[w])<32||f>127&&f<g){this._oscParser.put(s,c,w),c=w-1;break}break;case 6:if(o=this._oscParser.end(f!==24&&f!==26),o)return this._preserveStack(5,[],0,u,c),o;f===27&&(u|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0}this.currentState=15&u}}}r.EscapeSequenceParser=h},6242:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.OscHandler=r.OscParser=void 0;const l=a(5770),_=a(482),n=[];r.OscParser=class{constructor(){this._state=0,this._active=n,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(d,v){this._handlers[d]===void 0&&(this._handlers[d]=[]);const g=this._handlers[d];return g.push(v),{dispose:()=>{const h=g.indexOf(v);h!==-1&&g.splice(h,1)}}}clearHandler(d){this._handlers[d]&&delete this._handlers[d]}setHandlerFallback(d){this._handlerFb=d}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=n}reset(){if(this._state===2)for(let d=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;d>=0;--d)this._active[d].end(!1);this._stack.paused=!1,this._active=n,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||n,this._active.length)for(let d=this._active.length-1;d>=0;d--)this._active[d].start();else this._handlerFb(this._id,"START")}_put(d,v,g){if(this._active.length)for(let h=this._active.length-1;h>=0;h--)this._active[h].put(d,v,g);else this._handlerFb(this._id,"PUT",(0,_.utf32ToString)(d,v,g))}start(){this.reset(),this._state=1}put(d,v,g){if(this._state!==3){if(this._state===1)for(;v<g;){const h=d[v++];if(h===59){this._state=2,this._start();break}if(h<48||57<h)return void(this._state=3);this._id===-1&&(this._id=0),this._id=10*this._id+h-48}this._state===2&&g-v>0&&this._put(d,v,g)}}end(d,v=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),this._active.length){let g=!1,h=this._active.length-1,i=!1;if(this._stack.paused&&(h=this._stack.loopPosition-1,g=v,i=this._stack.fallThrough,this._stack.paused=!1),!i&&g===!1){for(;h>=0&&(g=this._active[h].end(d),g!==!0);h--)if(g instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=h,this._stack.fallThrough=!1,g;h--}for(;h>=0;h--)if(g=this._active[h].end(!1),g instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=h,this._stack.fallThrough=!0,g}else this._handlerFb(this._id,"END",d);this._active=n,this._id=-1,this._state=0}}},r.OscHandler=class{constructor(d){this._handler=d,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(d,v,g){this._hitLimit||(this._data+=(0,_.utf32ToString)(d,v,g),this._data.length>l.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))}end(d){let v=!1;if(this._hitLimit)v=!1;else if(d&&(v=this._handler(this._data),v instanceof Promise))return v.then((g=>(this._data="",this._hitLimit=!1,g)));return this._data="",this._hitLimit=!1,v}}},8742:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Params=void 0;const a=2147483647;class l{static fromArray(n){const d=new l;if(!n.length)return d;for(let v=Array.isArray(n[0])?1:0;v<n.length;++v){const g=n[v];if(Array.isArray(g))for(let h=0;h<g.length;++h)d.addSubParam(g[h]);else d.addParam(g)}return d}constructor(n=32,d=32){if(this.maxLength=n,this.maxSubParamsLength=d,d>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(n),this.length=0,this._subParams=new Int32Array(d),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(n),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}clone(){const n=new l(this.maxLength,this.maxSubParamsLength);return n.params.set(this.params),n.length=this.length,n._subParams.set(this._subParams),n._subParamsLength=this._subParamsLength,n._subParamsIdx.set(this._subParamsIdx),n._rejectDigits=this._rejectDigits,n._rejectSubDigits=this._rejectSubDigits,n._digitIsSub=this._digitIsSub,n}toArray(){const n=[];for(let d=0;d<this.length;++d){n.push(this.params[d]);const v=this._subParamsIdx[d]>>8,g=255&this._subParamsIdx[d];g-v>0&&n.push(Array.prototype.slice.call(this._subParams,v,g))}return n}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(n){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(n<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=n>a?a:n}}addSubParam(n){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(n<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=n>a?a:n,this._subParamsIdx[this.length-1]++}}hasSubParams(n){return(255&this._subParamsIdx[n])-(this._subParamsIdx[n]>>8)>0}getSubParams(n){const d=this._subParamsIdx[n]>>8,v=255&this._subParamsIdx[n];return v-d>0?this._subParams.subarray(d,v):null}getSubParamsAll(){const n={};for(let d=0;d<this.length;++d){const v=this._subParamsIdx[d]>>8,g=255&this._subParamsIdx[d];g-v>0&&(n[d]=this._subParams.slice(v,g))}return n}addDigit(n){let d;if(this._rejectDigits||!(d=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;const v=this._digitIsSub?this._subParams:this.params,g=v[d-1];v[d-1]=~g?Math.min(10*g+n,a):n}}r.Params=l},5741:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.AddonManager=void 0,r.AddonManager=class{constructor(){this._addons=[]}dispose(){for(let a=this._addons.length-1;a>=0;a--)this._addons[a].instance.dispose()}loadAddon(a,l){const _={instance:l,dispose:l.dispose,isDisposed:!1};this._addons.push(_),l.dispose=()=>this._wrappedAddonDispose(_),l.activate(a)}_wrappedAddonDispose(a){if(a.isDisposed)return;let l=-1;for(let _=0;_<this._addons.length;_++)if(this._addons[_]===a){l=_;break}if(l===-1)throw new Error("Could not dispose an addon that has not been loaded");a.isDisposed=!0,a.dispose.apply(a.instance),this._addons.splice(l,1)}}},8771:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferApiView=void 0;const l=a(3785),_=a(511);r.BufferApiView=class{constructor(n,d){this._buffer=n,this.type=d}init(n){return this._buffer=n,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(n){const d=this._buffer.lines.get(n);if(d)return new l.BufferLineApiView(d)}getNullCell(){return new _.CellData}}},3785:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferLineApiView=void 0;const l=a(511);r.BufferLineApiView=class{constructor(_){this._line=_}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(_,n){if(!(_<0||_>=this._line.length))return n?(this._line.loadCell(_,n),n):this._line.loadCell(_,new l.CellData)}translateToString(_,n,d){return this._line.translateToString(_,n,d)}}},8285:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferNamespaceApi=void 0;const l=a(8771),_=a(8460),n=a(844);class d extends n.Disposable{constructor(g){super(),this._core=g,this._onBufferChange=this.register(new _.EventEmitter),this.onBufferChange=this._onBufferChange.event,this._normal=new l.BufferApiView(this._core.buffers.normal,"normal"),this._alternate=new l.BufferApiView(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate((()=>this._onBufferChange.fire(this.active)))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}}r.BufferNamespaceApi=d},7975:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ParserApi=void 0,r.ParserApi=class{constructor(a){this._core=a}registerCsiHandler(a,l){return this._core.registerCsiHandler(a,(_=>l(_.toArray())))}addCsiHandler(a,l){return this.registerCsiHandler(a,l)}registerDcsHandler(a,l){return this._core.registerDcsHandler(a,((_,n)=>l(_,n.toArray())))}addDcsHandler(a,l){return this.registerDcsHandler(a,l)}registerEscHandler(a,l){return this._core.registerEscHandler(a,l)}addEscHandler(a,l){return this.registerEscHandler(a,l)}registerOscHandler(a,l){return this._core.registerOscHandler(a,l)}addOscHandler(a,l){return this.registerOscHandler(a,l)}}},7090:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.UnicodeApi=void 0,r.UnicodeApi=class{constructor(a){this._core=a}register(a){this._core.unicodeService.register(a)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(a){this._core.unicodeService.activeVersion=a}}},744:function(O,r,a){var l=this&&this.__decorate||function(i,s,e,t){var o,f=arguments.length,u=f<3?s:t===null?t=Object.getOwnPropertyDescriptor(s,e):t;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")u=Reflect.decorate(i,s,e,t);else for(var p=i.length-1;p>=0;p--)(o=i[p])&&(u=(f<3?o(u):f>3?o(s,e,u):o(s,e))||u);return f>3&&u&&Object.defineProperty(s,e,u),u},_=this&&this.__param||function(i,s){return function(e,t){s(e,t,i)}};Object.defineProperty(r,"__esModule",{value:!0}),r.BufferService=r.MINIMUM_ROWS=r.MINIMUM_COLS=void 0;const n=a(8460),d=a(844),v=a(5295),g=a(2585);r.MINIMUM_COLS=2,r.MINIMUM_ROWS=1;let h=r.BufferService=class extends d.Disposable{get buffer(){return this.buffers.active}constructor(i){super(),this.isUserScrolling=!1,this._onResize=this.register(new n.EventEmitter),this.onResize=this._onResize.event,this._onScroll=this.register(new n.EventEmitter),this.onScroll=this._onScroll.event,this.cols=Math.max(i.rawOptions.cols||0,r.MINIMUM_COLS),this.rows=Math.max(i.rawOptions.rows||0,r.MINIMUM_ROWS),this.buffers=this.register(new v.BufferSet(i,this))}resize(i,s){this.cols=i,this.rows=s,this.buffers.resize(i,s),this._onResize.fire({cols:i,rows:s})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(i,s=!1){const e=this.buffer;let t;t=this._cachedBlankLine,t&&t.length===this.cols&&t.getFg(0)===i.fg&&t.getBg(0)===i.bg||(t=e.getBlankLine(i,s),this._cachedBlankLine=t),t.isWrapped=s;const o=e.ybase+e.scrollTop,f=e.ybase+e.scrollBottom;if(e.scrollTop===0){const u=e.lines.isFull;f===e.lines.length-1?u?e.lines.recycle().copyFrom(t):e.lines.push(t.clone()):e.lines.splice(f+1,0,t.clone()),u?this.isUserScrolling&&(e.ydisp=Math.max(e.ydisp-1,0)):(e.ybase++,this.isUserScrolling||e.ydisp++)}else{const u=f-o+1;e.lines.shiftElements(o+1,u-1,-1),e.lines.set(f,t.clone())}this.isUserScrolling||(e.ydisp=e.ybase),this._onScroll.fire(e.ydisp)}scrollLines(i,s,e){const t=this.buffer;if(i<0){if(t.ydisp===0)return;this.isUserScrolling=!0}else i+t.ydisp>=t.ybase&&(this.isUserScrolling=!1);const o=t.ydisp;t.ydisp=Math.max(Math.min(t.ydisp+i,t.ybase),0),o!==t.ydisp&&(s||this._onScroll.fire(t.ydisp))}};r.BufferService=h=l([_(0,g.IOptionsService)],h)},7994:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CharsetService=void 0,r.CharsetService=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(a){this.glevel=a,this.charset=this._charsets[a]}setgCharset(a,l){this._charsets[a]=l,this.glevel===a&&(this.charset=l)}}},1753:function(O,r,a){var l=this&&this.__decorate||function(t,o,f,u){var p,c=arguments.length,m=c<3?o:u===null?u=Object.getOwnPropertyDescriptor(o,f):u;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")m=Reflect.decorate(t,o,f,u);else for(var y=t.length-1;y>=0;y--)(p=t[y])&&(m=(c<3?p(m):c>3?p(o,f,m):p(o,f))||m);return c>3&&m&&Object.defineProperty(o,f,m),m},_=this&&this.__param||function(t,o){return function(f,u){o(f,u,t)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CoreMouseService=void 0;const n=a(2585),d=a(8460),v=a(844),g={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:t=>t.button!==4&&t.action===1&&(t.ctrl=!1,t.alt=!1,t.shift=!1,!0)},VT200:{events:19,restrict:t=>t.action!==32},DRAG:{events:23,restrict:t=>t.action!==32||t.button!==3},ANY:{events:31,restrict:t=>!0}};function h(t,o){let f=(t.ctrl?16:0)|(t.shift?4:0)|(t.alt?8:0);return t.button===4?(f|=64,f|=t.action):(f|=3&t.button,4&t.button&&(f|=64),8&t.button&&(f|=128),t.action===32?f|=32:t.action!==0||o||(f|=3)),f}const i=String.fromCharCode,s={DEFAULT:t=>{const o=[h(t,!1)+32,t.col+32,t.row+32];return o[0]>255||o[1]>255||o[2]>255?"":`\x1B[M${i(o[0])}${i(o[1])}${i(o[2])}`},SGR:t=>{const o=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${h(t,!0)};${t.col};${t.row}${o}`},SGR_PIXELS:t=>{const o=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${h(t,!0)};${t.x};${t.y}${o}`}};let e=r.CoreMouseService=class extends v.Disposable{constructor(t,o){super(),this._bufferService=t,this._coreService=o,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._onProtocolChange=this.register(new d.EventEmitter),this.onProtocolChange=this._onProtocolChange.event;for(const f of Object.keys(g))this.addProtocol(f,g[f]);for(const f of Object.keys(s))this.addEncoding(f,s[f]);this.reset()}addProtocol(t,o){this._protocols[t]=o}addEncoding(t,o){this._encodings[t]=o}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(t){if(!this._protocols[t])throw new Error(`unknown protocol "${t}"`);this._activeProtocol=t,this._onProtocolChange.fire(this._protocols[t].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(t){if(!this._encodings[t])throw new Error(`unknown encoding "${t}"`);this._activeEncoding=t}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null}triggerMouseEvent(t){if(t.col<0||t.col>=this._bufferService.cols||t.row<0||t.row>=this._bufferService.rows||t.button===4&&t.action===32||t.button===3&&t.action!==32||t.button!==4&&(t.action===2||t.action===3)||(t.col++,t.row++,t.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,t,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(t))return!1;const o=this._encodings[this._activeEncoding](t);return o&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(o):this._coreService.triggerDataEvent(o,!0)),this._lastEvent=t,!0}explainEvents(t){return{down:!!(1&t),up:!!(2&t),drag:!!(4&t),move:!!(8&t),wheel:!!(16&t)}}_equalEvents(t,o,f){if(f){if(t.x!==o.x||t.y!==o.y)return!1}else if(t.col!==o.col||t.row!==o.row)return!1;return t.button===o.button&&t.action===o.action&&t.ctrl===o.ctrl&&t.alt===o.alt&&t.shift===o.shift}};r.CoreMouseService=e=l([_(0,n.IBufferService),_(1,n.ICoreService)],e)},6975:function(O,r,a){var l=this&&this.__decorate||function(e,t,o,f){var u,p=arguments.length,c=p<3?t:f===null?f=Object.getOwnPropertyDescriptor(t,o):f;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")c=Reflect.decorate(e,t,o,f);else for(var m=e.length-1;m>=0;m--)(u=e[m])&&(c=(p<3?u(c):p>3?u(t,o,c):u(t,o))||c);return p>3&&c&&Object.defineProperty(t,o,c),c},_=this&&this.__param||function(e,t){return function(o,f){t(o,f,e)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CoreService=void 0;const n=a(1439),d=a(8460),v=a(844),g=a(2585),h=Object.freeze({insertMode:!1}),i=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0});let s=r.CoreService=class extends v.Disposable{constructor(e,t,o){super(),this._bufferService=e,this._logService=t,this._optionsService=o,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this.register(new d.EventEmitter),this.onData=this._onData.event,this._onUserInput=this.register(new d.EventEmitter),this.onUserInput=this._onUserInput.event,this._onBinary=this.register(new d.EventEmitter),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this.register(new d.EventEmitter),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=(0,n.clone)(h),this.decPrivateModes=(0,n.clone)(i)}reset(){this.modes=(0,n.clone)(h),this.decPrivateModes=(0,n.clone)(i)}triggerDataEvent(e,t=!1){if(this._optionsService.rawOptions.disableStdin)return;const o=this._bufferService.buffer;t&&this._optionsService.rawOptions.scrollOnUserInput&&o.ybase!==o.ydisp&&this._onRequestScrollToBottom.fire(),t&&this._onUserInput.fire(),this._logService.debug(`sending data "${e}"`,(()=>e.split("").map((f=>f.charCodeAt(0))))),this._onData.fire(e)}triggerBinaryEvent(e){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${e}"`,(()=>e.split("").map((t=>t.charCodeAt(0))))),this._onBinary.fire(e))}};r.CoreService=s=l([_(0,g.IBufferService),_(1,g.ILogService),_(2,g.IOptionsService)],s)},9074:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.DecorationService=void 0;const l=a(8055),_=a(8460),n=a(844),d=a(6106);let v=0,g=0;class h extends n.Disposable{get decorations(){return this._decorations.values()}constructor(){super(),this._decorations=new d.SortedList((e=>e==null?void 0:e.marker.line)),this._onDecorationRegistered=this.register(new _.EventEmitter),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this.register(new _.EventEmitter),this.onDecorationRemoved=this._onDecorationRemoved.event,this.register((0,n.toDisposable)((()=>this.reset())))}registerDecoration(e){if(e.marker.isDisposed)return;const t=new i(e);if(t){const o=t.marker.onDispose((()=>t.dispose()));t.onDispose((()=>{t&&(this._decorations.delete(t)&&this._onDecorationRemoved.fire(t),o.dispose())})),this._decorations.insert(t),this._onDecorationRegistered.fire(t)}return t}reset(){for(const e of this._decorations.values())e.dispose();this._decorations.clear()}*getDecorationsAtCell(e,t,o){let f=0,u=0;for(const p of this._decorations.getKeyIterator(t))f=p.options.x??0,u=f+(p.options.width??1),e>=f&&e<u&&(!o||(p.options.layer??"bottom")===o)&&(yield p)}forEachDecorationAtCell(e,t,o,f){this._decorations.forEachByKey(t,(u=>{v=u.options.x??0,g=v+(u.options.width??1),e>=v&&e<g&&(!o||(u.options.layer??"bottom")===o)&&f(u)}))}}r.DecorationService=h;class i extends n.Disposable{get isDisposed(){return this._isDisposed}get backgroundColorRGB(){return this._cachedBg===null&&(this.options.backgroundColor?this._cachedBg=l.css.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=l.css.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}constructor(e){super(),this.options=e,this.onRenderEmitter=this.register(new _.EventEmitter),this.onRender=this.onRenderEmitter.event,this._onDispose=this.register(new _.EventEmitter),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=e.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}dispose(){this._onDispose.fire(),super.dispose()}}},4348:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.InstantiationService=r.ServiceCollection=void 0;const l=a(2585),_=a(8343);class n{constructor(...v){this._entries=new Map;for(const[g,h]of v)this.set(g,h)}set(v,g){const h=this._entries.get(v);return this._entries.set(v,g),h}forEach(v){for(const[g,h]of this._entries.entries())v(g,h)}has(v){return this._entries.has(v)}get(v){return this._entries.get(v)}}r.ServiceCollection=n,r.InstantiationService=class{constructor(){this._services=new n,this._services.set(l.IInstantiationService,this)}setService(d,v){this._services.set(d,v)}getService(d){return this._services.get(d)}createInstance(d,...v){const g=(0,_.getServiceDependencies)(d).sort(((s,e)=>s.index-e.index)),h=[];for(const s of g){const e=this._services.get(s.id);if(!e)throw new Error(`[createInstance] ${d.name} depends on UNKNOWN service ${s.id}.`);h.push(e)}const i=g.length>0?g[0].index:v.length;if(v.length!==i)throw new Error(`[createInstance] First service dependency of ${d.name} at position ${i+1} conflicts with ${v.length} static arguments`);return new d(...v,...h)}}},7866:function(O,r,a){var l=this&&this.__decorate||function(i,s,e,t){var o,f=arguments.length,u=f<3?s:t===null?t=Object.getOwnPropertyDescriptor(s,e):t;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")u=Reflect.decorate(i,s,e,t);else for(var p=i.length-1;p>=0;p--)(o=i[p])&&(u=(f<3?o(u):f>3?o(s,e,u):o(s,e))||u);return f>3&&u&&Object.defineProperty(s,e,u),u},_=this&&this.__param||function(i,s){return function(e,t){s(e,t,i)}};Object.defineProperty(r,"__esModule",{value:!0}),r.traceCall=r.setTraceLogger=r.LogService=void 0;const n=a(844),d=a(2585),v={trace:d.LogLevelEnum.TRACE,debug:d.LogLevelEnum.DEBUG,info:d.LogLevelEnum.INFO,warn:d.LogLevelEnum.WARN,error:d.LogLevelEnum.ERROR,off:d.LogLevelEnum.OFF};let g,h=r.LogService=class extends n.Disposable{get logLevel(){return this._logLevel}constructor(i){super(),this._optionsService=i,this._logLevel=d.LogLevelEnum.OFF,this._updateLogLevel(),this.register(this._optionsService.onSpecificOptionChange("logLevel",(()=>this._updateLogLevel()))),g=this}_updateLogLevel(){this._logLevel=v[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(i){for(let s=0;s<i.length;s++)typeof i[s]=="function"&&(i[s]=i[s]())}_log(i,s,e){this._evalLazyOptionalParams(e),i.call(console,(this._optionsService.options.logger?"":"xterm.js: ")+s,...e)}trace(i,...s){var e;this._logLevel<=d.LogLevelEnum.TRACE&&this._log(((e=this._optionsService.options.logger)==null?void 0:e.trace.bind(this._optionsService.options.logger))??console.log,i,s)}debug(i,...s){var e;this._logLevel<=d.LogLevelEnum.DEBUG&&this._log(((e=this._optionsService.options.logger)==null?void 0:e.debug.bind(this._optionsService.options.logger))??console.log,i,s)}info(i,...s){var e;this._logLevel<=d.LogLevelEnum.INFO&&this._log(((e=this._optionsService.options.logger)==null?void 0:e.info.bind(this._optionsService.options.logger))??console.info,i,s)}warn(i,...s){var e;this._logLevel<=d.LogLevelEnum.WARN&&this._log(((e=this._optionsService.options.logger)==null?void 0:e.warn.bind(this._optionsService.options.logger))??console.warn,i,s)}error(i,...s){var e;this._logLevel<=d.LogLevelEnum.ERROR&&this._log(((e=this._optionsService.options.logger)==null?void 0:e.error.bind(this._optionsService.options.logger))??console.error,i,s)}};r.LogService=h=l([_(0,d.IOptionsService)],h),r.setTraceLogger=function(i){g=i},r.traceCall=function(i,s,e){if(typeof e.value!="function")throw new Error("not supported");const t=e.value;e.value=function(...o){if(g.logLevel!==d.LogLevelEnum.TRACE)return t.apply(this,o);g.trace(`GlyphRenderer#${t.name}(${o.map((u=>JSON.stringify(u))).join(", ")})`);const f=t.apply(this,o);return g.trace(`GlyphRenderer#${t.name} return`,f),f}}},7302:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.OptionsService=r.DEFAULT_OPTIONS=void 0;const l=a(8460),_=a(844),n=a(6114);r.DEFAULT_OPTIONS={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},rescaleOverlappingGlyphs:!1,rightClickSelectsWord:n.isMac,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRulerWidth:0};const d=["normal","bold","100","200","300","400","500","600","700","800","900"];class v extends _.Disposable{constructor(h){super(),this._onOptionChange=this.register(new l.EventEmitter),this.onOptionChange=this._onOptionChange.event;const i={...r.DEFAULT_OPTIONS};for(const s in h)if(s in i)try{const e=h[s];i[s]=this._sanitizeAndValidateOption(s,e)}catch(e){console.error(e)}this.rawOptions=i,this.options={...i},this._setupOptions(),this.register((0,_.toDisposable)((()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null})))}onSpecificOptionChange(h,i){return this.onOptionChange((s=>{s===h&&i(this.rawOptions[h])}))}onMultipleOptionChange(h,i){return this.onOptionChange((s=>{h.indexOf(s)!==-1&&i()}))}_setupOptions(){const h=s=>{if(!(s in r.DEFAULT_OPTIONS))throw new Error(`No option with key "${s}"`);return this.rawOptions[s]},i=(s,e)=>{if(!(s in r.DEFAULT_OPTIONS))throw new Error(`No option with key "${s}"`);e=this._sanitizeAndValidateOption(s,e),this.rawOptions[s]!==e&&(this.rawOptions[s]=e,this._onOptionChange.fire(s))};for(const s in this.rawOptions){const e={get:h.bind(this,s),set:i.bind(this,s)};Object.defineProperty(this.options,s,e)}}_sanitizeAndValidateOption(h,i){switch(h){case"cursorStyle":if(i||(i=r.DEFAULT_OPTIONS[h]),!(function(s){return s==="block"||s==="underline"||s==="bar"})(i))throw new Error(`"${i}" is not a valid value for ${h}`);break;case"wordSeparator":i||(i=r.DEFAULT_OPTIONS[h]);break;case"fontWeight":case"fontWeightBold":if(typeof i=="number"&&1<=i&&i<=1e3)break;i=d.includes(i)?i:r.DEFAULT_OPTIONS[h];break;case"cursorWidth":i=Math.floor(i);case"lineHeight":case"tabStopWidth":if(i<1)throw new Error(`${h} cannot be less than 1, value: ${i}`);break;case"minimumContrastRatio":i=Math.max(1,Math.min(21,Math.round(10*i)/10));break;case"scrollback":if((i=Math.min(i,4294967295))<0)throw new Error(`${h} cannot be less than 0, value: ${i}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(i<=0)throw new Error(`${h} cannot be less than or equal to 0, value: ${i}`);break;case"rows":case"cols":if(!i&&i!==0)throw new Error(`${h} must be numeric, value: ${i}`);break;case"windowsPty":i=i??{}}return i}}r.OptionsService=v},2660:function(O,r,a){var l=this&&this.__decorate||function(v,g,h,i){var s,e=arguments.length,t=e<3?g:i===null?i=Object.getOwnPropertyDescriptor(g,h):i;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")t=Reflect.decorate(v,g,h,i);else for(var o=v.length-1;o>=0;o--)(s=v[o])&&(t=(e<3?s(t):e>3?s(g,h,t):s(g,h))||t);return e>3&&t&&Object.defineProperty(g,h,t),t},_=this&&this.__param||function(v,g){return function(h,i){g(h,i,v)}};Object.defineProperty(r,"__esModule",{value:!0}),r.OscLinkService=void 0;const n=a(2585);let d=r.OscLinkService=class{constructor(v){this._bufferService=v,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(v){const g=this._bufferService.buffer;if(v.id===void 0){const o=g.addMarker(g.ybase+g.y),f={data:v,id:this._nextId++,lines:[o]};return o.onDispose((()=>this._removeMarkerFromLink(f,o))),this._dataByLinkId.set(f.id,f),f.id}const h=v,i=this._getEntryIdKey(h),s=this._entriesWithId.get(i);if(s)return this.addLineToLink(s.id,g.ybase+g.y),s.id;const e=g.addMarker(g.ybase+g.y),t={id:this._nextId++,key:this._getEntryIdKey(h),data:h,lines:[e]};return e.onDispose((()=>this._removeMarkerFromLink(t,e))),this._entriesWithId.set(t.key,t),this._dataByLinkId.set(t.id,t),t.id}addLineToLink(v,g){const h=this._dataByLinkId.get(v);if(h&&h.lines.every((i=>i.line!==g))){const i=this._bufferService.buffer.addMarker(g);h.lines.push(i),i.onDispose((()=>this._removeMarkerFromLink(h,i)))}}getLinkData(v){var g;return(g=this._dataByLinkId.get(v))==null?void 0:g.data}_getEntryIdKey(v){return`${v.id};;${v.uri}`}_removeMarkerFromLink(v,g){const h=v.lines.indexOf(g);h!==-1&&(v.lines.splice(h,1),v.lines.length===0&&(v.data.id!==void 0&&this._entriesWithId.delete(v.key),this._dataByLinkId.delete(v.id)))}};r.OscLinkService=d=l([_(0,n.IBufferService)],d)},8343:(O,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.createDecorator=r.getServiceDependencies=r.serviceRegistry=void 0;const a="di$target",l="di$dependencies";r.serviceRegistry=new Map,r.getServiceDependencies=function(_){return _[l]||[]},r.createDecorator=function(_){if(r.serviceRegistry.has(_))return r.serviceRegistry.get(_);const n=function(d,v,g){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");(function(h,i,s){i[a]===i?i[l].push({id:h,index:s}):(i[l]=[{id:h,index:s}],i[a]=i)})(n,d,g)};return n.toString=()=>_,r.serviceRegistry.set(_,n),n}},2585:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.IDecorationService=r.IUnicodeService=r.IOscLinkService=r.IOptionsService=r.ILogService=r.LogLevelEnum=r.IInstantiationService=r.ICharsetService=r.ICoreService=r.ICoreMouseService=r.IBufferService=void 0;const l=a(8343);var _;r.IBufferService=(0,l.createDecorator)("BufferService"),r.ICoreMouseService=(0,l.createDecorator)("CoreMouseService"),r.ICoreService=(0,l.createDecorator)("CoreService"),r.ICharsetService=(0,l.createDecorator)("CharsetService"),r.IInstantiationService=(0,l.createDecorator)("InstantiationService"),(function(n){n[n.TRACE=0]="TRACE",n[n.DEBUG=1]="DEBUG",n[n.INFO=2]="INFO",n[n.WARN=3]="WARN",n[n.ERROR=4]="ERROR",n[n.OFF=5]="OFF"})(_||(r.LogLevelEnum=_={})),r.ILogService=(0,l.createDecorator)("LogService"),r.IOptionsService=(0,l.createDecorator)("OptionsService"),r.IOscLinkService=(0,l.createDecorator)("OscLinkService"),r.IUnicodeService=(0,l.createDecorator)("UnicodeService"),r.IDecorationService=(0,l.createDecorator)("DecorationService")},1480:(O,r,a)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.UnicodeService=void 0;const l=a(8460),_=a(225);class n{static extractShouldJoin(v){return(1&v)!=0}static extractWidth(v){return v>>1&3}static extractCharKind(v){return v>>3}static createPropertyValue(v,g,h=!1){return(16777215&v)<<3|(3&g)<<1|(h?1:0)}constructor(){this._providers=Object.create(null),this._active="",this._onChange=new l.EventEmitter,this.onChange=this._onChange.event;const v=new _.UnicodeV6;this.register(v),this._active=v.version,this._activeProvider=v}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(v){if(!this._providers[v])throw new Error(`unknown Unicode version "${v}"`);this._active=v,this._activeProvider=this._providers[v],this._onChange.fire(v)}register(v){this._providers[v.version]=v}wcwidth(v){return this._activeProvider.wcwidth(v)}getStringCellWidth(v){let g=0,h=0;const i=v.length;for(let s=0;s<i;++s){let e=v.charCodeAt(s);if(55296<=e&&e<=56319){if(++s>=i)return g+this.wcwidth(e);const f=v.charCodeAt(s);56320<=f&&f<=57343?e=1024*(e-55296)+f-56320+65536:g+=this.wcwidth(f)}const t=this.charProperties(e,h);let o=n.extractWidth(t);n.extractShouldJoin(t)&&(o-=n.extractWidth(h)),g+=o,h=t}return g}charProperties(v,g){return this._activeProvider.charProperties(v,g)}}r.UnicodeService=n}},Y={};function G(O){var r=Y[O];if(r!==void 0)return r.exports;var a=Y[O]={exports:{}};return ie[O].call(a.exports,a,a.exports,G),a.exports}var Q={};return(()=>{var O=Q;Object.defineProperty(O,"__esModule",{value:!0}),O.Terminal=void 0;const r=G(9042),a=G(3236),l=G(844),_=G(5741),n=G(8285),d=G(7975),v=G(7090),g=["cols","rows"];class h extends l.Disposable{constructor(s){super(),this._core=this.register(new a.Terminal(s)),this._addonManager=this.register(new _.AddonManager),this._publicOptions={...this._core.options};const e=o=>this._core.options[o],t=(o,f)=>{this._checkReadonlyOptions(o),this._core.options[o]=f};for(const o in this._core.options){const f={get:e.bind(this,o),set:t.bind(this,o)};Object.defineProperty(this._publicOptions,o,f)}}_checkReadonlyOptions(s){if(g.includes(s))throw new Error(`Option "${s}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new d.ParserApi(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new v.UnicodeApi(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this.register(new n.BufferNamespaceApi(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){const s=this._core.coreService.decPrivateModes;let e="none";switch(this._core.coreMouseService.activeProtocol){case"X10":e="x10";break;case"VT200":e="vt200";break;case"DRAG":e="drag";break;case"ANY":e="any"}return{applicationCursorKeysMode:s.applicationCursorKeys,applicationKeypadMode:s.applicationKeypad,bracketedPasteMode:s.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:e,originMode:s.origin,reverseWraparoundMode:s.reverseWraparound,sendFocusMode:s.sendFocus,wraparoundMode:s.wraparound}}get options(){return this._publicOptions}set options(s){for(const e in s)this._publicOptions[e]=s[e]}blur(){this._core.blur()}focus(){this._core.focus()}input(s,e=!0){this._core.input(s,e)}resize(s,e){this._verifyIntegers(s,e),this._core.resize(s,e)}open(s){this._core.open(s)}attachCustomKeyEventHandler(s){this._core.attachCustomKeyEventHandler(s)}attachCustomWheelEventHandler(s){this._core.attachCustomWheelEventHandler(s)}registerLinkProvider(s){return this._core.registerLinkProvider(s)}registerCharacterJoiner(s){return this._checkProposedApi(),this._core.registerCharacterJoiner(s)}deregisterCharacterJoiner(s){this._checkProposedApi(),this._core.deregisterCharacterJoiner(s)}registerMarker(s=0){return this._verifyIntegers(s),this._core.registerMarker(s)}registerDecoration(s){return this._checkProposedApi(),this._verifyPositiveIntegers(s.x??0,s.width??0,s.height??0),this._core.registerDecoration(s)}hasSelection(){return this._core.hasSelection()}select(s,e,t){this._verifyIntegers(s,e,t),this._core.select(s,e,t)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(s,e){this._verifyIntegers(s,e),this._core.selectLines(s,e)}dispose(){super.dispose()}scrollLines(s){this._verifyIntegers(s),this._core.scrollLines(s)}scrollPages(s){this._verifyIntegers(s),this._core.scrollPages(s)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(s){this._verifyIntegers(s),this._core.scrollToLine(s)}clear(){this._core.clear()}write(s,e){this._core.write(s,e)}writeln(s,e){this._core.write(s),this._core.write(`\r
`,e)}paste(s){this._core.paste(s)}refresh(s,e){this._verifyIntegers(s,e),this._core.refresh(s,e)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(s){this._addonManager.loadAddon(this,s)}static get strings(){return r}_verifyIntegers(...s){for(const e of s)if(e===1/0||isNaN(e)||e%1!=0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...s){for(const e of s)if(e&&(e===1/0||isNaN(e)||e%1!=0||e<0))throw new Error("This API only accepts positive integers")}}O.Terminal=h})(),Q})()))})(fe)),fe.exports}var we=be(),ve={exports:{}},ge;function ye(){return ge||(ge=1,(function(ce,Se){(function(ie,Y){ce.exports=Y()})(self,(()=>(()=>{var ie={};return(()=>{var Y=ie;Object.defineProperty(Y,"__esModule",{value:!0}),Y.FitAddon=void 0,Y.FitAddon=class{activate(G){this._terminal=G}dispose(){}fit(){const G=this.proposeDimensions();if(!G||!this._terminal||isNaN(G.cols)||isNaN(G.rows))return;const Q=this._terminal._core;this._terminal.rows===G.rows&&this._terminal.cols===G.cols||(Q._renderService.clear(),this._terminal.resize(G.cols,G.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;const G=this._terminal._core,Q=G._renderService.dimensions;if(Q.css.cell.width===0||Q.css.cell.height===0)return;const O=this._terminal.options.scrollback===0?0:G.viewport.scrollBarWidth,r=window.getComputedStyle(this._terminal.element.parentElement),a=parseInt(r.getPropertyValue("height")),l=Math.max(0,parseInt(r.getPropertyValue("width"))),_=window.getComputedStyle(this._terminal.element),n=a-(parseInt(_.getPropertyValue("padding-top"))+parseInt(_.getPropertyValue("padding-bottom"))),d=l-(parseInt(_.getPropertyValue("padding-right"))+parseInt(_.getPropertyValue("padding-left")))-O;return{cols:Math.max(2,Math.floor(d/Q.css.cell.width)),rows:Math.max(1,Math.floor(n/Q.css.cell.height))}}}})(),ie})()))})(ve)),ve.exports}var Ee=ye();const ke={Terminal:we.Terminal,FitAddon:Ee.FitAddon};export{ke as default};
scripts/node_modules/playwright-core/lib/vite/traceViewer/codeMirrorModule.DYBRYzYX.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid black;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor .CodeMirror-line::selection,.cm-fat-cursor .CodeMirror-line>span::selection,.cm-fat-cursor .CodeMirror-line>span>span::selection{background:transparent}.cm-fat-cursor .CodeMirror-line::-moz-selection,.cm-fat-cursor .CodeMirror-line>span::-moz-selection,.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:transparent}.cm-fat-cursor{caret-color:transparent}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3,.cm-s-default .cm-type{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-s-default .cm-error,.cm-invalidchar{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:#ff96004d}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative;z-index:0}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;outline:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-scroll,.CodeMirror-sizer,.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}div.CodeMirror-dragcursors,.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:#ff06}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:none}.CodeMirror-dialog{position:absolute;left:0;right:0;background:inherit;z-index:15;padding:.1em .8em;overflow:hidden;color:inherit}.CodeMirror-dialog-top{border-bottom:1px solid #eee;top:0}.CodeMirror-dialog-bottom{border-top:1px solid #eee;bottom:0}.CodeMirror-dialog input{border:none;outline:none;background:transparent;width:20em;color:inherit;font-family:monospace}.CodeMirror-dialog button{font-size:70%}
scripts/node_modules/playwright-core/lib/vite/traceViewer/codicon.DCmgc-ay.ttf
Binary files differ
scripts/node_modules/playwright-core/lib/vite/traceViewer/defaultSettingsView.CjdS-WJx.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
:root{color-scheme:light dark}body{--transparent-blue: #2196F355;--light-pink: #ff69b460;--gray: #888888;--sidebar-width: 250px;--box-shadow: rgba(0, 0, 0, .133) 0px 1.6px 3.6px 0px, rgba(0, 0, 0, .11) 0px .3px .9px 0px}html,body{width:100%;height:100%;padding:0;margin:0;overflow:hidden;display:flex;overscroll-behavior-x:none}#root{width:100%;height:100%;display:flex}body,dialog{background-color:var(--vscode-panel-background);color:var(--vscode-foreground);font-family:var(--vscode-font-family);font-weight:var(--vscode-font-weight);font-size:var(--vscode-font-size);-webkit-font-smoothing:antialiased}a{color:var(--vscode-textLink-foreground)}dialog{border:none;padding:0;box-shadow:var(--box-shadow);line-height:28px;max-width:400px}dialog .title{display:flex;align-items:center;margin:0;padding:0 5px;height:32px;background-color:var(--vscode-sideBar-background);max-width:400px}dialog .title .codicon{margin-right:3px}dialog .body{padding:10px;text-align:center}.button{color:var(--vscode-button-foreground);background:var(--vscode-button-background);margin:10px;border:none;height:28px;min-width:40px;cursor:pointer;-webkit-user-select:none;user-select:none}.button:focus{outline:1px solid var(--vscode-focusBorder)}.button:hover{background:var(--vscode-button-hoverBackground)}.button.secondary{color:var(--vscode-button-secondaryForeground);background:var(--vscode-button-secondaryBackground)}.button.secondary:hover{background:var(--vscode-button-secondaryHoverBackground)}*{box-sizing:border-box;min-width:0;min-height:0}*[hidden],.hidden{display:none!important}.invisible{visibility:hidden!important}svg{fill:currentColor}.vbox{display:flex;flex-direction:column;flex:auto;position:relative}.fill{position:absolute;top:0;right:0;bottom:0;left:0}.hbox{display:flex;flex:auto;position:relative}.spacer{flex:auto}.codicon-check{color:var(--vscode-charts-green)}.codicon-error{color:var(--vscode-errorForeground)}.codicon-warning{color:var(--vscode-list-warningForeground)}.codicon-circle-outline{color:var(--vscode-disabledForeground)}input[type=text],input[type=search]{color:var(--vscode-input-foreground);background-color:var(--vscode-input-background);border:none;outline:none}.codicon-loading{animation:spin 1s infinite linear}::placeholder{color:var(--vscode-input-placeholderForeground)}@keyframes spin{to{transform:rotate(360deg)}}@font-face{font-family:codicon;src:url(./codicon.DCmgc-ay.ttf) format("truetype")}.codicon{font: 16px/1 codicon;flex:none;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.codicon-add:before{content:"î© "}.codicon-plus:before{content:"î© "}.codicon-gist-new:before{content:"î© "}.codicon-repo-create:before{content:"î© "}.codicon-lightbulb:before{content:"î©¡"}.codicon-light-bulb:before{content:"î©¡"}.codicon-repo:before{content:"î©¢"}.codicon-repo-delete:before{content:"î©¢"}.codicon-gist-fork:before{content:"î©£"}.codicon-repo-forked:before{content:"î©£"}.codicon-git-pull-request:before{content:""}.codicon-git-pull-request-abandoned:before{content:""}.codicon-record-keys:before{content:"î©¥"}.codicon-keyboard:before{content:"î©¥"}.codicon-tag:before{content:""}.codicon-git-pull-request-label:before{content:""}.codicon-tag-add:before{content:""}.codicon-tag-remove:before{content:""}.codicon-person:before{content:"î©§"}.codicon-person-follow:before{content:"î©§"}.codicon-person-outline:before{content:"î©§"}.codicon-person-filled:before{content:"î©§"}.codicon-git-branch:before{content:""}.codicon-git-branch-create:before{content:""}.codicon-git-branch-delete:before{content:""}.codicon-source-control:before{content:""}.codicon-mirror:before{content:"î©©"}.codicon-mirror-public:before{content:"î©©"}.codicon-star:before{content:""}.codicon-star-add:before{content:""}.codicon-star-delete:before{content:""}.codicon-star-empty:before{content:""}.codicon-comment:before{content:"î©«"}.codicon-comment-add:before{content:"î©«"}.codicon-alert:before{content:""}.codicon-warning:before{content:""}.codicon-search:before{content:"î©­"}.codicon-search-save:before{content:"î©­"}.codicon-log-out:before{content:"î©®"}.codicon-sign-out:before{content:"î©®"}.codicon-log-in:before{content:""}.codicon-sign-in:before{content:""}.codicon-eye:before{content:"î©°"}.codicon-eye-unwatch:before{content:"î©°"}.codicon-eye-watch:before{content:"î©°"}.codicon-circle-filled:before{content:""}.codicon-primitive-dot:before{content:""}.codicon-close-dirty:before{content:""}.codicon-debug-breakpoint:before{content:""}.codicon-debug-breakpoint-disabled:before{content:""}.codicon-debug-hint:before{content:""}.codicon-terminal-decoration-success:before{content:""}.codicon-primitive-square:before{content:""}.codicon-edit:before{content:""}.codicon-pencil:before{content:""}.codicon-info:before{content:"î©´"}.codicon-issue-opened:before{content:"î©´"}.codicon-gist-private:before{content:""}.codicon-git-fork-private:before{content:""}.codicon-lock:before{content:""}.codicon-mirror-private:before{content:""}.codicon-close:before{content:"î©¶"}.codicon-remove-close:before{content:"î©¶"}.codicon-x:before{content:"î©¶"}.codicon-repo-sync:before{content:"î©·"}.codicon-sync:before{content:"î©·"}.codicon-clone:before{content:""}.codicon-desktop-download:before{content:""}.codicon-beaker:before{content:""}.codicon-microscope:before{content:""}.codicon-vm:before{content:""}.codicon-device-desktop:before{content:""}.codicon-file:before{content:"î©»"}.codicon-file-text:before{content:"î©»"}.codicon-more:before{content:""}.codicon-ellipsis:before{content:""}.codicon-kebab-horizontal:before{content:""}.codicon-mail-reply:before{content:""}.codicon-reply:before{content:""}.codicon-organization:before{content:""}.codicon-organization-filled:before{content:""}.codicon-organization-outline:before{content:""}.codicon-new-file:before{content:"î©¿"}.codicon-file-add:before{content:"î©¿"}.codicon-new-folder:before{content:""}.codicon-file-directory-create:before{content:""}.codicon-trash:before{content:""}.codicon-trashcan:before{content:""}.codicon-history:before{content:""}.codicon-clock:before{content:""}.codicon-folder:before{content:""}.codicon-file-directory:before{content:""}.codicon-symbol-folder:before{content:""}.codicon-logo-github:before{content:""}.codicon-mark-github:before{content:""}.codicon-github:before{content:""}.codicon-terminal:before{content:""}.codicon-console:before{content:""}.codicon-repl:before{content:""}.codicon-zap:before{content:""}.codicon-symbol-event:before{content:""}.codicon-error:before{content:""}.codicon-stop:before{content:""}.codicon-variable:before{content:""}.codicon-symbol-variable:before{content:""}.codicon-array:before{content:""}.codicon-symbol-array:before{content:""}.codicon-symbol-module:before{content:""}.codicon-symbol-package:before{content:""}.codicon-symbol-namespace:before{content:""}.codicon-symbol-object:before{content:""}.codicon-symbol-method:before{content:""}.codicon-symbol-function:before{content:""}.codicon-symbol-constructor:before{content:""}.codicon-symbol-boolean:before{content:""}.codicon-symbol-null:before{content:""}.codicon-symbol-numeric:before{content:""}.codicon-symbol-number:before{content:""}.codicon-symbol-structure:before{content:""}.codicon-symbol-struct:before{content:""}.codicon-symbol-parameter:before{content:""}.codicon-symbol-type-parameter:before{content:""}.codicon-symbol-key:before{content:""}.codicon-symbol-text:before{content:""}.codicon-symbol-reference:before{content:""}.codicon-go-to-file:before{content:""}.codicon-symbol-enum:before{content:""}.codicon-symbol-value:before{content:""}.codicon-symbol-ruler:before{content:""}.codicon-symbol-unit:before{content:""}.codicon-activate-breakpoints:before{content:""}.codicon-archive:before{content:""}.codicon-arrow-both:before{content:""}.codicon-arrow-down:before{content:""}.codicon-arrow-left:before{content:""}.codicon-arrow-right:before{content:""}.codicon-arrow-small-down:before{content:""}.codicon-arrow-small-left:before{content:""}.codicon-arrow-small-right:before{content:""}.codicon-arrow-small-up:before{content:""}.codicon-arrow-up:before{content:""}.codicon-bell:before{content:""}.codicon-bold:before{content:""}.codicon-book:before{content:""}.codicon-bookmark:before{content:""}.codicon-debug-breakpoint-conditional-unverified:before{content:""}.codicon-debug-breakpoint-conditional:before{content:""}.codicon-debug-breakpoint-conditional-disabled:before{content:""}.codicon-debug-breakpoint-data-unverified:before{content:""}.codicon-debug-breakpoint-data:before{content:""}.codicon-debug-breakpoint-data-disabled:before{content:""}.codicon-debug-breakpoint-log-unverified:before{content:""}.codicon-debug-breakpoint-log:before{content:""}.codicon-debug-breakpoint-log-disabled:before{content:""}.codicon-briefcase:before{content:""}.codicon-broadcast:before{content:""}.codicon-browser:before{content:""}.codicon-bug:before{content:""}.codicon-calendar:before{content:""}.codicon-case-sensitive:before{content:""}.codicon-check:before{content:""}.codicon-checklist:before{content:""}.codicon-chevron-down:before{content:""}.codicon-chevron-left:before{content:""}.codicon-chevron-right:before{content:""}.codicon-chevron-up:before{content:""}.codicon-chrome-close:before{content:""}.codicon-chrome-maximize:before{content:""}.codicon-chrome-minimize:before{content:""}.codicon-chrome-restore:before{content:""}.codicon-circle-outline:before{content:""}.codicon-circle:before{content:""}.codicon-debug-breakpoint-unverified:before{content:""}.codicon-terminal-decoration-incomplete:before{content:""}.codicon-circle-slash:before{content:""}.codicon-circuit-board:before{content:""}.codicon-clear-all:before{content:""}.codicon-clippy:before{content:""}.codicon-close-all:before{content:""}.codicon-cloud-download:before{content:""}.codicon-cloud-upload:before{content:""}.codicon-code:before{content:""}.codicon-collapse-all:before{content:""}.codicon-color-mode:before{content:""}.codicon-comment-discussion:before{content:""}.codicon-credit-card:before{content:""}.codicon-dash:before{content:""}.codicon-dashboard:before{content:""}.codicon-database:before{content:""}.codicon-debug-continue:before{content:""}.codicon-debug-disconnect:before{content:""}.codicon-debug-pause:before{content:""}.codicon-debug-restart:before{content:""}.codicon-debug-start:before{content:""}.codicon-debug-step-into:before{content:""}.codicon-debug-step-out:before{content:""}.codicon-debug-step-over:before{content:""}.codicon-debug-stop:before{content:""}.codicon-debug:before{content:""}.codicon-device-camera-video:before{content:""}.codicon-device-camera:before{content:""}.codicon-device-mobile:before{content:""}.codicon-diff-added:before{content:""}.codicon-diff-ignored:before{content:""}.codicon-diff-modified:before{content:""}.codicon-diff-removed:before{content:""}.codicon-diff-renamed:before{content:"î« "}.codicon-diff:before{content:"î«¡"}.codicon-diff-sidebyside:before{content:"î«¡"}.codicon-discard:before{content:"î«¢"}.codicon-editor-layout:before{content:"î«£"}.codicon-empty-window:before{content:""}.codicon-exclude:before{content:"î«¥"}.codicon-extensions:before{content:""}.codicon-eye-closed:before{content:"î«§"}.codicon-file-binary:before{content:""}.codicon-file-code:before{content:"î«©"}.codicon-file-media:before{content:""}.codicon-file-pdf:before{content:"î««"}.codicon-file-submodule:before{content:""}.codicon-file-symlink-directory:before{content:"î«­"}.codicon-file-symlink-file:before{content:"î«®"}.codicon-file-zip:before{content:""}.codicon-files:before{content:"î«°"}.codicon-filter:before{content:""}.codicon-flame:before{content:""}.codicon-fold-down:before{content:""}.codicon-fold-up:before{content:"î«´"}.codicon-fold:before{content:""}.codicon-folder-active:before{content:"î«¶"}.codicon-folder-opened:before{content:"î«·"}.codicon-gear:before{content:""}.codicon-gift:before{content:""}.codicon-gist-secret:before{content:""}.codicon-gist:before{content:"î«»"}.codicon-git-commit:before{content:""}.codicon-git-compare:before{content:""}.codicon-compare-changes:before{content:""}.codicon-git-merge:before{content:""}.codicon-github-action:before{content:"î«¿"}.codicon-github-alt:before{content:""}.codicon-globe:before{content:""}.codicon-grabber:before{content:""}.codicon-graph:before{content:""}.codicon-gripper:before{content:""}.codicon-heart:before{content:""}.codicon-home:before{content:""}.codicon-horizontal-rule:before{content:""}.codicon-hubot:before{content:""}.codicon-inbox:before{content:""}.codicon-issue-reopened:before{content:""}.codicon-issues:before{content:""}.codicon-italic:before{content:""}.codicon-jersey:before{content:""}.codicon-json:before{content:""}.codicon-kebab-vertical:before{content:""}.codicon-key:before{content:""}.codicon-law:before{content:""}.codicon-lightbulb-autofix:before{content:""}.codicon-link-external:before{content:""}.codicon-link:before{content:""}.codicon-list-ordered:before{content:""}.codicon-list-unordered:before{content:""}.codicon-live-share:before{content:""}.codicon-loading:before{content:""}.codicon-location:before{content:""}.codicon-mail-read:before{content:""}.codicon-mail:before{content:""}.codicon-markdown:before{content:""}.codicon-megaphone:before{content:""}.codicon-mention:before{content:""}.codicon-milestone:before{content:""}.codicon-git-pull-request-milestone:before{content:""}.codicon-mortar-board:before{content:""}.codicon-move:before{content:""}.codicon-multiple-windows:before{content:""}.codicon-mute:before{content:""}.codicon-no-newline:before{content:""}.codicon-note:before{content:""}.codicon-octoface:before{content:""}.codicon-open-preview:before{content:""}.codicon-package:before{content:""}.codicon-paintcan:before{content:""}.codicon-pin:before{content:""}.codicon-play:before{content:""}.codicon-run:before{content:""}.codicon-plug:before{content:""}.codicon-preserve-case:before{content:""}.codicon-preview:before{content:""}.codicon-project:before{content:""}.codicon-pulse:before{content:""}.codicon-question:before{content:""}.codicon-quote:before{content:""}.codicon-radio-tower:before{content:""}.codicon-reactions:before{content:""}.codicon-references:before{content:""}.codicon-refresh:before{content:""}.codicon-regex:before{content:""}.codicon-remote-explorer:before{content:""}.codicon-remote:before{content:""}.codicon-remove:before{content:""}.codicon-replace-all:before{content:""}.codicon-replace:before{content:""}.codicon-repo-clone:before{content:""}.codicon-repo-force-push:before{content:""}.codicon-repo-pull:before{content:""}.codicon-repo-push:before{content:""}.codicon-report:before{content:""}.codicon-request-changes:before{content:""}.codicon-rocket:before{content:""}.codicon-root-folder-opened:before{content:""}.codicon-root-folder:before{content:""}.codicon-rss:before{content:""}.codicon-ruby:before{content:""}.codicon-save-all:before{content:""}.codicon-save-as:before{content:""}.codicon-save:before{content:""}.codicon-screen-full:before{content:""}.codicon-screen-normal:before{content:""}.codicon-search-stop:before{content:""}.codicon-server:before{content:""}.codicon-settings-gear:before{content:""}.codicon-settings:before{content:""}.codicon-shield:before{content:""}.codicon-smiley:before{content:""}.codicon-sort-precedence:before{content:""}.codicon-split-horizontal:before{content:""}.codicon-split-vertical:before{content:""}.codicon-squirrel:before{content:""}.codicon-star-full:before{content:""}.codicon-star-half:before{content:""}.codicon-symbol-class:before{content:""}.codicon-symbol-color:before{content:""}.codicon-symbol-constant:before{content:""}.codicon-symbol-enum-member:before{content:""}.codicon-symbol-field:before{content:""}.codicon-symbol-file:before{content:"î­ "}.codicon-symbol-interface:before{content:"î­¡"}.codicon-symbol-keyword:before{content:"î­¢"}.codicon-symbol-misc:before{content:"î­£"}.codicon-symbol-operator:before{content:"î­¤"}.codicon-symbol-property:before{content:"î­¥"}.codicon-wrench:before{content:"î­¥"}.codicon-wrench-subaction:before{content:"î­¥"}.codicon-symbol-snippet:before{content:"î­¦"}.codicon-tasklist:before{content:"î­§"}.codicon-telescope:before{content:"î­¨"}.codicon-text-size:before{content:"î­©"}.codicon-three-bars:before{content:"î­ª"}.codicon-thumbsdown:before{content:"î­«"}.codicon-thumbsup:before{content:"î­¬"}.codicon-tools:before{content:"î­­"}.codicon-triangle-down:before{content:"î­®"}.codicon-triangle-left:before{content:"î­¯"}.codicon-triangle-right:before{content:"î­°"}.codicon-triangle-up:before{content:"î­±"}.codicon-twitter:before{content:"î­²"}.codicon-unfold:before{content:"î­³"}.codicon-unlock:before{content:"î­´"}.codicon-unmute:before{content:"î­µ"}.codicon-unverified:before{content:"î­¶"}.codicon-verified:before{content:"î­·"}.codicon-versions:before{content:"î­¸"}.codicon-vm-active:before{content:"î­¹"}.codicon-vm-outline:before{content:"î­º"}.codicon-vm-running:before{content:"î­»"}.codicon-watch:before{content:"î­¼"}.codicon-whitespace:before{content:"î­½"}.codicon-whole-word:before{content:"î­¾"}.codicon-window:before{content:"î­¿"}.codicon-word-wrap:before{content:""}.codicon-zoom-in:before{content:""}.codicon-zoom-out:before{content:""}.codicon-list-filter:before{content:""}.codicon-list-flat:before{content:""}.codicon-list-selection:before{content:""}.codicon-selection:before{content:""}.codicon-list-tree:before{content:""}.codicon-debug-breakpoint-function-unverified:before{content:""}.codicon-debug-breakpoint-function:before{content:""}.codicon-debug-breakpoint-function-disabled:before{content:""}.codicon-debug-stackframe-active:before{content:""}.codicon-circle-small-filled:before{content:""}.codicon-debug-stackframe-dot:before{content:""}.codicon-terminal-decoration-mark:before{content:""}.codicon-debug-stackframe:before{content:""}.codicon-debug-stackframe-focused:before{content:""}.codicon-debug-breakpoint-unsupported:before{content:""}.codicon-symbol-string:before{content:""}.codicon-debug-reverse-continue:before{content:""}.codicon-debug-step-back:before{content:""}.codicon-debug-restart-frame:before{content:""}.codicon-debug-alt:before{content:""}.codicon-call-incoming:before{content:""}.codicon-call-outgoing:before{content:""}.codicon-menu:before{content:""}.codicon-expand-all:before{content:""}.codicon-feedback:before{content:""}.codicon-git-pull-request-reviewer:before{content:""}.codicon-group-by-ref-type:before{content:""}.codicon-ungroup-by-ref-type:before{content:""}.codicon-account:before{content:""}.codicon-git-pull-request-assignee:before{content:""}.codicon-bell-dot:before{content:""}.codicon-debug-console:before{content:""}.codicon-library:before{content:""}.codicon-output:before{content:""}.codicon-run-all:before{content:""}.codicon-sync-ignored:before{content:""}.codicon-pinned:before{content:"î® "}.codicon-github-inverted:before{content:""}.codicon-server-process:before{content:""}.codicon-server-environment:before{content:""}.codicon-pass:before{content:""}.codicon-issue-closed:before{content:""}.codicon-stop-circle:before{content:""}.codicon-play-circle:before{content:""}.codicon-record:before{content:"î®§"}.codicon-debug-alt-small:before{content:""}.codicon-vm-connect:before{content:""}.codicon-cloud:before{content:""}.codicon-merge:before{content:""}.codicon-export:before{content:""}.codicon-graph-left:before{content:"î®­"}.codicon-magnet:before{content:"î®®"}.codicon-notebook:before{content:""}.codicon-redo:before{content:"î®°"}.codicon-check-all:before{content:"î®±"}.codicon-pinned-dirty:before{content:""}.codicon-pass-filled:before{content:""}.codicon-circle-large-filled:before{content:"î®´"}.codicon-circle-large:before{content:""}.codicon-circle-large-outline:before{content:""}.codicon-combine:before{content:"î®¶"}.codicon-gather:before{content:"î®¶"}.codicon-table:before{content:"î®·"}.codicon-variable-group:before{content:""}.codicon-type-hierarchy:before{content:""}.codicon-type-hierarchy-sub:before{content:""}.codicon-type-hierarchy-super:before{content:"î®»"}.codicon-git-pull-request-create:before{content:""}.codicon-run-above:before{content:""}.codicon-run-below:before{content:""}.codicon-notebook-template:before{content:""}.codicon-debug-rerun:before{content:""}.codicon-workspace-trusted:before{content:""}.codicon-workspace-untrusted:before{content:""}.codicon-workspace-unknown:before{content:""}.codicon-terminal-cmd:before{content:""}.codicon-terminal-debian:before{content:""}.codicon-terminal-linux:before{content:""}.codicon-terminal-powershell:before{content:""}.codicon-terminal-tmux:before{content:""}.codicon-terminal-ubuntu:before{content:""}.codicon-terminal-bash:before{content:""}.codicon-arrow-swap:before{content:""}.codicon-copy:before{content:""}.codicon-person-add:before{content:""}.codicon-filter-filled:before{content:""}.codicon-wand:before{content:""}.codicon-debug-line-by-line:before{content:""}.codicon-inspect:before{content:""}.codicon-layers:before{content:""}.codicon-layers-dot:before{content:""}.codicon-layers-active:before{content:""}.codicon-compass:before{content:""}.codicon-compass-dot:before{content:""}.codicon-compass-active:before{content:""}.codicon-azure:before{content:""}.codicon-issue-draft:before{content:""}.codicon-git-pull-request-closed:before{content:""}.codicon-git-pull-request-draft:before{content:""}.codicon-debug-all:before{content:""}.codicon-debug-coverage:before{content:""}.codicon-run-errors:before{content:""}.codicon-folder-library:before{content:""}.codicon-debug-continue-small:before{content:""}.codicon-beaker-stop:before{content:""}.codicon-graph-line:before{content:""}.codicon-graph-scatter:before{content:""}.codicon-pie-chart:before{content:""}.codicon-bracket:before{content:""}.codicon-bracket-dot:before{content:""}.codicon-bracket-error:before{content:""}.codicon-lock-small:before{content:""}.codicon-azure-devops:before{content:""}.codicon-verified-filled:before{content:""}.codicon-newline:before{content:""}.codicon-layout:before{content:""}.codicon-layout-activitybar-left:before{content:""}.codicon-layout-activitybar-right:before{content:""}.codicon-layout-panel-left:before{content:""}.codicon-layout-panel-center:before{content:""}.codicon-layout-panel-justify:before{content:""}.codicon-layout-panel-right:before{content:""}.codicon-layout-panel:before{content:""}.codicon-layout-sidebar-left:before{content:""}.codicon-layout-sidebar-right:before{content:""}.codicon-layout-statusbar:before{content:""}.codicon-layout-menubar:before{content:""}.codicon-layout-centered:before{content:""}.codicon-target:before{content:""}.codicon-indent:before{content:""}.codicon-record-small:before{content:""}.codicon-error-small:before{content:""}.codicon-terminal-decoration-error:before{content:""}.codicon-arrow-circle-down:before{content:""}.codicon-arrow-circle-left:before{content:""}.codicon-arrow-circle-right:before{content:""}.codicon-arrow-circle-up:before{content:""}.codicon-layout-sidebar-right-off:before{content:""}.codicon-layout-panel-off:before{content:""}.codicon-layout-sidebar-left-off:before{content:""}.codicon-blank:before{content:""}.codicon-heart-filled:before{content:""}.codicon-map:before{content:""}.codicon-map-horizontal:before{content:""}.codicon-fold-horizontal:before{content:""}.codicon-map-filled:before{content:""}.codicon-map-horizontal-filled:before{content:""}.codicon-fold-horizontal-filled:before{content:""}.codicon-circle-small:before{content:""}.codicon-bell-slash:before{content:""}.codicon-bell-slash-dot:before{content:""}.codicon-comment-unresolved:before{content:""}.codicon-git-pull-request-go-to-changes:before{content:""}.codicon-git-pull-request-new-changes:before{content:""}.codicon-search-fuzzy:before{content:""}.codicon-comment-draft:before{content:""}.codicon-send:before{content:""}.codicon-sparkle:before{content:""}.codicon-insert:before{content:""}.codicon-mic:before{content:""}.codicon-thumbsdown-filled:before{content:""}.codicon-thumbsup-filled:before{content:""}.codicon-coffee:before{content:""}.codicon-snake:before{content:""}.codicon-game:before{content:""}.codicon-vr:before{content:""}.codicon-chip:before{content:""}.codicon-piano:before{content:""}.codicon-music:before{content:""}.codicon-mic-filled:before{content:""}.codicon-repo-fetch:before{content:""}.codicon-copilot:before{content:""}.codicon-lightbulb-sparkle:before{content:""}.codicon-robot:before{content:"î° "}.codicon-sparkle-filled:before{content:"î°¡"}.codicon-diff-single:before{content:"î°¢"}.codicon-diff-multiple:before{content:"î°£"}.codicon-surround-with:before{content:"î°¤"}.codicon-share:before{content:"î°¥"}.codicon-git-stash:before{content:"î°¦"}.codicon-git-stash-apply:before{content:"î°§"}.codicon-git-stash-pop:before{content:"î°¨"}.codicon-vscode:before{content:"î°©"}.codicon-vscode-insiders:before{content:"î°ª"}.codicon-code-oss:before{content:"î°«"}.codicon-run-coverage:before{content:"î°¬"}.codicon-run-all-coverage:before{content:"î°­"}.codicon-coverage:before{content:"î°®"}.codicon-github-project:before{content:"î°¯"}.codicon-map-vertical:before{content:"î°°"}.codicon-fold-vertical:before{content:"î°°"}.codicon-map-vertical-filled:before{content:"î°±"}.codicon-fold-vertical-filled:before{content:"î°±"}.codicon-go-to-search:before{content:"î°²"}.codicon-percentage:before{content:"î°³"}.codicon-sort-percentage:before{content:"î°³"}.codicon-attach:before{content:"î°´"}.codicon-git-fetch:before{content:""}.split-view{display:flex;flex:auto;position:relative}.split-view.vertical{flex-direction:column}.split-view.vertical.sidebar-first{flex-direction:column-reverse}.split-view.horizontal{flex-direction:row}.split-view.horizontal.sidebar-first{flex-direction:row-reverse}.split-view-main{display:flex;flex:auto}.split-view-sidebar{display:flex;flex:none}.split-view.vertical:not(.sidebar-first)>.split-view-sidebar{border-top:1px solid var(--vscode-panel-border)}.split-view.horizontal:not(.sidebar-first)>.split-view-sidebar{border-left:1px solid var(--vscode-panel-border)}.split-view.vertical.sidebar-first>.split-view-sidebar{border-bottom:1px solid var(--vscode-panel-border)}.split-view.horizontal.sidebar-first>.split-view-sidebar{border-right:1px solid var(--vscode-panel-border)}.split-view-resizer{position:absolute;z-index:100}.split-view.vertical>.split-view-resizer{left:0;right:0;height:12px;cursor:ns-resize}.split-view.horizontal>.split-view-resizer{top:0;bottom:0;width:12px;cursor:ew-resize}.action-title>.hbox{align-items:center}.action-title-line{display:block;overflow:hidden;text-overflow:ellipsis}.action-title-selector{text-overflow:ellipsis;overflow:hidden;color:var(--vscode-tab-inactiveForeground);margin-top:-8px}.action-title-method{white-space:pre;overflow:hidden;text-overflow:ellipsis;font-weight:500}.action-title-param{color:var(--vscode-editorBracketHighlight-foreground1)}.action-location{display:flex;flex:none;margin:0 4px;color:var(--vscode-foreground)}.action-location>span{margin:0 4px;cursor:pointer;text-decoration:underline}.action-duration{display:flex;flex:none;align-items:center;margin:0 4px;color:var(--vscode-editorCodeLens-foreground)}.action-skipped{margin-right:4px}.action-icon{flex:none;display:flex;align-items:center;padding-right:3px}.action-icons{flex:none;display:flex;flex-direction:row;cursor:pointer;height:20px;position:relative;top:1px;border-bottom:1px solid transparent}.action-icons:hover{border-bottom:1px solid var(--vscode-sideBarTitle-foreground)}.action-error{color:var(--vscode-errorForeground);position:relative;margin-right:2px;flex:none}.action-parameter{display:inline;flex:none;padding-left:5px}.action-locator-parameter{color:var(--vscode-charts-orange)}.action-generic-parameter{color:var(--vscode-charts-purple)}.action-url{display:inline;flex:none;padding-left:5px;color:var(--vscode-charts-blue)}.action-list-show-all{display:flex;cursor:pointer;height:28px;align-items:center}.action-list-container{min-height:0;flex:auto;display:flex;flex-direction:column}.tree-view-content{display:flex;flex-direction:column;flex:auto;position:relative;-webkit-user-select:none;user-select:none;overflow:hidden auto;outline:1px solid transparent}.tree-view-entry{display:flex;flex:none;cursor:pointer;align-items:center;white-space:nowrap;line-height:28px;padding-left:5px}.tree-view-content.not-selectable>.tree-view-entry{cursor:inherit}.tree-view-entry.highlighted:not(.selected){background-color:var(--vscode-list-inactiveSelectionBackground)!important}.tree-view-entry.selected{z-index:10}.tree-view-indent{min-width:16px}.tree-view-content:focus .tree-view-entry.selected{background-color:var(--vscode-list-activeSelectionBackground);color:var(--vscode-list-activeSelectionForeground);outline:1px solid var(--vscode-focusBorder)}.tree-view-content .tree-view-entry.selected{background-color:var(--vscode-list-inactiveSelectionBackground)}.tree-view-content:focus .tree-view-entry.selected *{color:var(--vscode-list-activeSelectionForeground)!important;background-color:transparent!important}.tree-view-content:focus .tree-view-entry.selected .codicon{color:var(--vscode-list-activeSelectionForeground)!important}.tree-view-content:focus .tree-view-entry.selected button.eye.toggled{border-radius:6px;outline:1px solid var(--vscode-button-foreground)}.tree-view-empty{flex:auto;display:flex;align-items:center;justify-content:center}.tree-view-entry.error{color:var(--vscode-list-errorForeground);background-color:var(--vscode-inputValidation-errorBackground)}.tree-view-entry.warning{color:var(--vscode-list-warningForeground);background-color:var(--vscode-inputValidation-warningBackground)}.tree-view-entry.info{background-color:var(--vscode-inputValidation-infoBackground)}.toolbar-button{position:relative;flex:none;border:none;outline:none;color:var(--vscode-sideBarTitle-foreground);background:transparent;padding:4px;cursor:pointer;display:inline-flex;align-items:center;border-radius:4px}.toolbar-button:disabled{color:var(--vscode-disabledForeground)!important;cursor:default}.toolbar-button:not(:disabled):hover{background-color:var(--vscode-toolbar-hoverBackground)}.toolbar-button:not(:disabled):active{background-color:var(--vscode-toolbar-activeBackground)}.toolbar-button.toggled{color:var(--vscode-notificationLink-foreground)}.toolbar-button-error-badge{position:absolute;top:2px;right:2px;width:7px;height:7px;border-radius:50%;background-color:var(--vscode-notificationsErrorIcon-foreground)}.toolbar-separator{flex:none;background-color:var(--vscode-menu-separatorBackground);width:1px;padding:0;margin:5px 4px;height:16px}.call-tab{flex:auto;line-height:24px;white-space:pre;overflow:auto;-webkit-user-select:text;user-select:text}.call-error{border-bottom:1px solid var(--vscode-panel-border);padding:3px 0 3px 12px}.call-error .codicon{color:var(--vscode-errorForeground);position:relative;top:2px;margin-right:2px}.call-section{padding-left:6px;padding-top:2px;margin-top:2px;font-weight:700;text-transform:uppercase;font-size:10px;color:var(--vscode-sideBarTitle-foreground);line-height:24px}.call-section:not(:first-child){border-top:1px solid var(--vscode-panel-border)}.call-line{padding:4px 0 4px 6px;display:flex;align-items:center;text-overflow:ellipsis;overflow:hidden;line-height:20px;white-space:nowrap}.call-line:not(:hover) .toolbar-button.copy{display:none}.call-line .toolbar-button.copy,.call-line .toolbar-button.check{margin-left:5px;margin-top:-2px;margin-bottom:-2px}.call-value{margin-left:2px;text-overflow:ellipsis;overflow:hidden}a.call-value{text-decoration:none}a.call-value:hover{text-decoration:underline}.call-value:before{content:" "}.call-value.datetime,.call-value.string,.call-value.literal,.call-value.locator{color:var(--vscode-charts-orange)}.call-value.number,.call-value.bigint,.call-value.boolean,.call-value.symbol,.call-value.undefined,.call-value.function,.call-value.object{color:var(--vscode-charts-blue)}.call-tab .error-message{padding:5px;line-height:17px}.copy-to-clipboard-text-button{background-color:var(--vscode-editor-inactiveSelectionBackground);border:none;padding:4px 12px;cursor:pointer}.list-view-content{display:flex;flex-direction:column;flex:auto;position:relative;-webkit-user-select:none;user-select:none;overflow:hidden auto;outline:1px solid transparent}.list-view-entry{display:flex;flex:none;cursor:pointer;align-items:center;white-space:nowrap;line-height:28px;padding-left:5px}.list-view-content.not-selectable>.list-view-entry{cursor:inherit}.list-view-entry.highlighted:not(.selected){background-color:var(--vscode-list-inactiveSelectionBackground)!important}.list-view-entry.selected{z-index:10}.list-view-indent{min-width:16px}.list-view-content:focus .list-view-entry.selected{background-color:var(--vscode-list-activeSelectionBackground);color:var(--vscode-list-activeSelectionForeground);outline:1px solid var(--vscode-focusBorder)}.list-view-content .list-view-entry.selected{background-color:var(--vscode-list-inactiveSelectionBackground)}.list-view-content:focus .list-view-entry.selected *{color:var(--vscode-list-activeSelectionForeground)!important;background-color:transparent!important}.list-view-content:focus .list-view-entry.selected .codicon{color:var(--vscode-list-activeSelectionForeground)!important}.list-view-empty{flex:auto;display:flex;align-items:center;justify-content:center}.list-view-entry.error{color:var(--vscode-list-errorForeground);background-color:var(--vscode-inputValidation-errorBackground)}.list-view-entry.warning{color:var(--vscode-list-warningForeground);background-color:var(--vscode-inputValidation-warningBackground)}.list-view-entry.info{background-color:var(--vscode-inputValidation-infoBackground)}.log-list-duration{display:flex;flex:none;align-items:center;color:var(--vscode-editorCodeLens-foreground);float:right;margin-right:5px;-webkit-user-select:none;user-select:none}.log-list-item{text-wrap:wrap;-webkit-user-select:text;user-select:text;width:100%}.error-message{font-family:var(--vscode-editor-font-family);font-weight:var(--vscode-editor-font-weight);font-size:var(--vscode-editor-font-size);white-space:pre-wrap;word-break:break-word;padding:10px}.attachments-tab{flex:auto;line-height:24px;white-space:pre;overflow:auto;-webkit-user-select:text;user-select:text}.attachments-section{padding-left:6px;font-weight:700;text-transform:uppercase;font-size:12px;color:var(--vscode-sideBarTitle-foreground);line-height:24px}.attachments-section:not(:first-child){border-top:1px solid var(--vscode-panel-border);margin-top:10px}.attachment-item{margin:4px 8px}.attachment-title-highlight{text-decoration:underline var(--vscode-terminal-findMatchBackground);text-decoration-thickness:1.5px}.attachment-item img{flex:none;min-width:200px;max-width:80%;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a}a.codicon-cloud-download:hover{background-color:var(--vscode-list-inactiveSelectionBackground)}.yellow-flash{animation:yellowflash-bg 2s}@keyframes yellowflash-bg{0%{background:var(--vscode-peekViewEditor-matchHighlightBackground)}to{background:transparent}}:root{--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #616161;--vscode-disabledForeground: rgba(97, 97, 97, .5);--vscode-errorForeground: #a1260d;--vscode-descriptionForeground: #717171;--vscode-icon-foreground: #424242;--vscode-focusBorder: #0090f1;--vscode-textSeparator-foreground: rgba(0, 0, 0, .18);--vscode-textLink-foreground: #006ab1;--vscode-textLink-activeForeground: #006ab1;--vscode-textPreformat-foreground: #a31515;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(220, 220, 220, .4);--vscode-widget-shadow: rgba(0, 0, 0, .16);--vscode-input-background: #ffffff;--vscode-input-foreground: #616161;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(184, 184, 184, .31);--vscode-inputOption-activeBackground: rgba(0, 144, 241, .2);--vscode-inputOption-activeForeground: #000000;--vscode-input-placeholderForeground: #767676;--vscode-inputValidation-infoBackground: #d6ecf2;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #f6f5d2;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #f2dede;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #ffffff;--vscode-dropdown-border: #cecece;--vscode-checkbox-background: #ffffff;--vscode-checkbox-border: #cecece;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #007acc;--vscode-button-hoverBackground: #0062a3;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #5f6a79;--vscode-button-secondaryHoverBackground: #4c5561;--vscode-badge-background: #c4c4c4;--vscode-badge-foreground: #333333;--vscode-scrollbar-shadow: #dddddd;--vscode-scrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #e51400;--vscode-editorWarning-foreground: #bf8803;--vscode-editorInfo-foreground: #1a85ff;--vscode-editorHint-foreground: #6c6c6c;--vscode-sash-hoverBorder: #0090f1;--vscode-editor-background: #ffffff;--vscode-editor-foreground: #000000;--vscode-editorStickyScroll-background: #ffffff;--vscode-editorStickyScrollHover-background: #f0f0f0;--vscode-editorWidget-background: #f3f3f3;--vscode-editorWidget-foreground: #616161;--vscode-editorWidget-border: #c8c8c8;--vscode-quickInput-background: #f3f3f3;--vscode-quickInput-foreground: #616161;--vscode-quickInputTitle-background: rgba(0, 0, 0, .06);--vscode-pickerGroup-foreground: #0066bf;--vscode-pickerGroup-border: #cccedb;--vscode-keybindingLabel-background: rgba(221, 221, 221, .4);--vscode-keybindingLabel-foreground: #555555;--vscode-keybindingLabel-border: rgba(204, 204, 204, .4);--vscode-keybindingLabel-bottomBorder: rgba(187, 187, 187, .4);--vscode-editor-selectionBackground: #add6ff;--vscode-editor-inactiveSelectionBackground: #e5ebf1;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .5);--vscode-editor-findMatchBackground: #a8ac94;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(180, 180, 180, .3);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(173, 214, 255, .15);--vscode-editorHoverWidget-background: #f3f3f3;--vscode-editorHoverWidget-foreground: #616161;--vscode-editorHoverWidget-border: #c8c8c8;--vscode-editorHoverWidget-statusBarBackground: #e7e7e7;--vscode-editorLink-activeForeground: #0000ff;--vscode-editorInlayHint-foreground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-background: rgba(196, 196, 196, .3);--vscode-editorInlayHint-typeForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-typeBackground: rgba(196, 196, 196, .3);--vscode-editorInlayHint-parameterForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-parameterBackground: rgba(196, 196, 196, .3);--vscode-editorLightBulb-foreground: #ddb100;--vscode-editorLightBulbAutoFix-foreground: #007acc;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .4);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .3);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(34, 34, 34, .2);--vscode-list-focusOutline: #0090f1;--vscode-list-focusAndSelectionOutline: #90c2f9;--vscode-list-activeSelectionBackground: #0060c0;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #e4e6f1;--vscode-list-hoverBackground: #e8e8e8;--vscode-list-dropBackground: #d6ebff;--vscode-list-highlightForeground: #0066bf;--vscode-list-focusHighlightForeground: #bbe7ff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #b01011;--vscode-list-warningForeground: #855f00;--vscode-listFilterWidget-background: #f3f3f3;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .16);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #a9a9a9;--vscode-tree-tableColumnsBorder: rgba(97, 97, 97, .13);--vscode-tree-tableOddRowsBackground: rgba(97, 97, 97, .04);--vscode-list-deemphasizedForeground: #8e8e90;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #0060c0;--vscode-menu-foreground: #616161;--vscode-menu-background: #ffffff;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #0060c0;--vscode-menu-separatorBackground: #d4d4d4;--vscode-toolbar-hoverBackground: rgba(184, 184, 184, .31);--vscode-toolbar-activeBackground: rgba(166, 166, 166, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(10, 50, 100, .2);--vscode-editor-snippetFinalTabstopHighlightBorder: rgba(10, 50, 100, .5);--vscode-breadcrumb-foreground: rgba(97, 97, 97, .8);--vscode-breadcrumb-background: #ffffff;--vscode-breadcrumb-focusForeground: #4e4e4e;--vscode-breadcrumb-activeSelectionForeground: #4e4e4e;--vscode-breadcrumbPicker-background: #f3f3f3;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #c9c9c9;--vscode-minimap-selectionHighlight: #add6ff;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #bf8803;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(100, 100, 100, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(0, 0, 0, .3);--vscode-problemsErrorIcon-foreground: #e51400;--vscode-problemsWarningIcon-foreground: #bf8803;--vscode-problemsInfoIcon-foreground: #1a85ff;--vscode-charts-foreground: #616161;--vscode-charts-lines: rgba(97, 97, 97, .5);--vscode-charts-red: #e51400;--vscode-charts-blue: #1a85ff;--vscode-charts-yellow: #bf8803;--vscode-charts-orange: #d18616;--vscode-charts-green: #388a34;--vscode-charts-purple: #652d90;--vscode-editor-lineHighlightBorder: #eeeeee;--vscode-editor-rangeHighlightBackground: rgba(253, 255, 0, .2);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #000000;--vscode-editorWhitespace-foreground: rgba(51, 51, 51, .2);--vscode-editorIndentGuide-background: #d3d3d3;--vscode-editorIndentGuide-activeBackground: #939393;--vscode-editorLineNumber-foreground: #237893;--vscode-editorActiveLineNumber-foreground: #0b216f;--vscode-editorLineNumber-activeForeground: #0b216f;--vscode-editorRuler-foreground: #d3d3d3;--vscode-editorCodeLens-foreground: #919191;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #b9b9b9;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #ffffff;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .47);--vscode-editorGhostText-foreground: rgba(0, 0, 0, .47);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #bf8803;--vscode-editorOverviewRuler-infoForeground: #1a85ff;--vscode-editorBracketHighlight-foreground1: #0431fa;--vscode-editorBracketHighlight-foreground2: #319331;--vscode-editorBracketHighlight-foreground3: #7b3814;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #cea33d;--vscode-editorUnicodeHighlight-background: rgba(206, 163, 61, .08);--vscode-symbolIcon-arrayForeground: #616161;--vscode-symbolIcon-booleanForeground: #616161;--vscode-symbolIcon-classForeground: #d67e00;--vscode-symbolIcon-colorForeground: #616161;--vscode-symbolIcon-constantForeground: #616161;--vscode-symbolIcon-constructorForeground: #652d90;--vscode-symbolIcon-enumeratorForeground: #d67e00;--vscode-symbolIcon-enumeratorMemberForeground: #007acc;--vscode-symbolIcon-eventForeground: #d67e00;--vscode-symbolIcon-fieldForeground: #007acc;--vscode-symbolIcon-fileForeground: #616161;--vscode-symbolIcon-folderForeground: #616161;--vscode-symbolIcon-functionForeground: #652d90;--vscode-symbolIcon-interfaceForeground: #007acc;--vscode-symbolIcon-keyForeground: #616161;--vscode-symbolIcon-keywordForeground: #616161;--vscode-symbolIcon-methodForeground: #652d90;--vscode-symbolIcon-moduleForeground: #616161;--vscode-symbolIcon-namespaceForeground: #616161;--vscode-symbolIcon-nullForeground: #616161;--vscode-symbolIcon-numberForeground: #616161;--vscode-symbolIcon-objectForeground: #616161;--vscode-symbolIcon-operatorForeground: #616161;--vscode-symbolIcon-packageForeground: #616161;--vscode-symbolIcon-propertyForeground: #616161;--vscode-symbolIcon-referenceForeground: #616161;--vscode-symbolIcon-snippetForeground: #616161;--vscode-symbolIcon-stringForeground: #616161;--vscode-symbolIcon-structForeground: #616161;--vscode-symbolIcon-textForeground: #616161;--vscode-symbolIcon-typeParameterForeground: #616161;--vscode-symbolIcon-unitForeground: #616161;--vscode-symbolIcon-variableForeground: #007acc;--vscode-editorHoverWidget-highlightForeground: #0066bf;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(173, 214, 255, .3);--vscode-editorGutter-foldingControlForeground: #424242;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .25);--vscode-editor-wordHighlightStrongBackground: rgba(14, 99, 156, .25);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(26, 133, 255, .1);--vscode-peekViewTitleLabel-foreground: #000000;--vscode-peekViewTitleDescription-foreground: #616161;--vscode-peekView-border: #1a85ff;--vscode-peekViewResult-background: #f3f3f3;--vscode-peekViewResult-lineForeground: #646465;--vscode-peekViewResult-fileForeground: #1e1e1e;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #6c6c6c;--vscode-peekViewEditor-background: #f2f8fc;--vscode-peekViewEditorGutter-background: #f2f8fc;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(245, 216, 2, .87);--vscode-editorMarkerNavigationError-background: #e51400;--vscode-editorMarkerNavigationError-headerBackground: rgba(229, 20, 0, .1);--vscode-editorMarkerNavigationWarning-background: #bf8803;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(191, 136, 3, .1);--vscode-editorMarkerNavigationInfo-background: #1a85ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(26, 133, 255, .1);--vscode-editorMarkerNavigation-background: #ffffff;--vscode-editorSuggestWidget-background: #f3f3f3;--vscode-editorSuggestWidget-border: #c8c8c8;--vscode-editorSuggestWidget-foreground: #000000;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #0060c0;--vscode-editorSuggestWidget-highlightForeground: #0066bf;--vscode-editorSuggestWidget-focusHighlightForeground: #bbe7ff;--vscode-editorSuggestWidgetStatus-foreground: rgba(0, 0, 0, .5);--vscode-tab-activeBackground: #ffffff;--vscode-tab-unfocusedActiveBackground: #ffffff;--vscode-tab-inactiveBackground: #ececec;--vscode-tab-unfocusedInactiveBackground: #ececec;--vscode-tab-activeForeground: #333333;--vscode-tab-inactiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedActiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedInactiveForeground: rgba(51, 51, 51, .35);--vscode-tab-border: #f3f3f3;--vscode-tab-lastPinnedBorder: rgba(97, 97, 97, .19);--vscode-tab-activeModifiedBorder: #33aaee;--vscode-tab-inactiveModifiedBorder: rgba(51, 170, 238, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 170, 238, .7);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 170, 238, .25);--vscode-editorPane-background: #ffffff;--vscode-editorGroupHeader-tabsBackground: #f3f3f3;--vscode-editorGroupHeader-noTabsBackground: #ffffff;--vscode-editorGroup-border: #e7e7e7;--vscode-editorGroup-dropBackground: rgba(38, 119, 203, .18);--vscode-editorGroup-dropIntoPromptForeground: #616161;--vscode-editorGroup-dropIntoPromptBackground: #f3f3f3;--vscode-sideBySideEditor-horizontalBorder: #e7e7e7;--vscode-sideBySideEditor-verticalBorder: #e7e7e7;--vscode-panel-background: #ffffff;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #424242;--vscode-panelTitle-inactiveForeground: rgba(66, 66, 66, .75);--vscode-panelTitle-activeBorder: #424242;--vscode-panelInput-border: #dddddd;--vscode-panel-dropBorder: #424242;--vscode-panelSection-dropBackground: rgba(38, 119, 203, .18);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #004386;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #1a85ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #725102;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #2c2c2c;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #f3f3f3;--vscode-sideBarTitle-foreground: #6f6f6f;--vscode-sideBar-dropBackground: rgba(38, 119, 203, .18);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(97, 97, 97, .19);--vscode-titleBar-activeForeground: #333333;--vscode-titleBar-inactiveForeground: rgba(51, 51, 51, .6);--vscode-titleBar-activeBackground: #dddddd;--vscode-titleBar-inactiveBackground: rgba(221, 221, 221, .6);--vscode-menubar-selectionForeground: #333333;--vscode-menubar-selectionBackground: rgba(184, 184, 184, .31);--vscode-notifications-foreground: #616161;--vscode-notifications-background: #f3f3f3;--vscode-notificationLink-foreground: #006ab1;--vscode-notificationCenterHeader-background: #e7e7e7;--vscode-notifications-border: #e7e7e7;--vscode-notificationsErrorIcon-foreground: #e51400;--vscode-notificationsWarningIcon-foreground: #bf8803;--vscode-notificationsInfoIcon-foreground: #1a85ff;--vscode-commandCenter-foreground: #333333;--vscode-commandCenter-activeForeground: #333333;--vscode-commandCenter-activeBackground: rgba(184, 184, 184, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(97, 97, 97, .5);--vscode-editorCommentsWidget-unresolvedBorder: #1a85ff;--vscode-editorCommentsWidget-rangeBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(26, 133, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(26, 133, 255, .4);--vscode-editorGutter-commentRangeForeground: #d5d8e9;--vscode-debugToolBar-background: #f3f3f3;--vscode-debugIcon-startForeground: #388a34;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 102, .45);--vscode-editor-focusedStackFrameHighlightBackground: rgba(206, 231, 206, .45);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .4);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #444444;--vscode-settings-modifiedItemIndicator: #66afe0;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #ffffff;--vscode-settings-dropdownBorder: #cecece;--vscode-settings-dropdownListBorder: #c8c8c8;--vscode-settings-checkboxBackground: #ffffff;--vscode-settings-checkboxBorder: #cecece;--vscode-settings-textInputBackground: #ffffff;--vscode-settings-textInputForeground: #616161;--vscode-settings-textInputBorder: #cecece;--vscode-settings-numberInputBackground: #ffffff;--vscode-settings-numberInputForeground: #616161;--vscode-settings-numberInputBorder: #cecece;--vscode-settings-focusedRowBackground: rgba(232, 232, 232, .6);--vscode-settings-rowHoverBackground: rgba(232, 232, 232, .3);--vscode-settings-focusedRowBorder: rgba(0, 0, 0, .12);--vscode-terminal-foreground: #333333;--vscode-terminal-selectionBackground: #add6ff;--vscode-terminal-inactiveSelectionBackground: #e5ebf1;--vscode-terminalCommandDecoration-defaultBackground: rgba(0, 0, 0, .25);--vscode-terminalCommandDecoration-successBackground: #2090d3;--vscode-terminalCommandDecoration-errorBackground: #e51400;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #a8ac94;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(38, 119, 203, .18);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #e51400;--vscode-testing-peekHeaderBackground: rgba(229, 20, 0, .1);--vscode-testing-message\.error\.decorationForeground: #e51400;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(0, 0, 0, .5);--vscode-welcomePage-tileBackground: #f3f3f3;--vscode-welcomePage-tileHoverBackground: #dbdbdb;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .16);--vscode-welcomePage-progress\.background: #ffffff;--vscode-welcomePage-progress\.foreground: #006ab1;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #f1dfde;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(0, 0, 0, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #2090d3;--vscode-editorGutter-addedBackground: #48985d;--vscode-editorGutter-deletedBackground: #e51400;--vscode-minimapGutter-modifiedBackground: #2090d3;--vscode-minimapGutter-addedBackground: #48985d;--vscode-minimapGutter-deletedBackground: #e51400;--vscode-editorOverviewRuler-modifiedForeground: rgba(32, 144, 211, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 152, 93, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(229, 20, 0, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #be8700;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #e8e8e8;--vscode-notebook-focusedEditorBorder: #0090f1;--vscode-notebookStatusSuccessIcon-foreground: #388a34;--vscode-notebookStatusErrorIcon-foreground: #a1260d;--vscode-notebookStatusRunningIcon-foreground: #616161;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: rgba(200, 221, 241, .31);--vscode-notebook-selectedCellBorder: #e8e8e8;--vscode-notebook-focusedCellBorder: #0090f1;--vscode-notebook-inactiveFocusedCellBorder: #e8e8e8;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(0, 0, 0, .08);--vscode-notebook-cellInsertionIndicator: #0090f1;--vscode-notebookScrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-notebook-symbolHighlightBackground: rgba(253, 255, 0, .2);--vscode-notebook-cellEditorBackground: #f3f3f3;--vscode-notebook-editorBackground: #ffffff;--vscode-keybindingTable-headerBackground: rgba(97, 97, 97, .04);--vscode-keybindingTable-rowsBackground: rgba(97, 97, 97, .04);--vscode-scm-providerBorder: #c8c8c8;--vscode-searchEditor-textInputBorder: #cecece;--vscode-debugTokenExpression-name: #9b46b0;--vscode-debugTokenExpression-value: rgba(108, 108, 108, .8);--vscode-debugTokenExpression-string: #a31515;--vscode-debugTokenExpression-boolean: #0000ff;--vscode-debugTokenExpression-number: #098658;--vscode-debugTokenExpression-error: #e51400;--vscode-debugView-exceptionLabelForeground: #ffffff;--vscode-debugView-exceptionLabelBackground: #a31515;--vscode-debugView-stateLabelForeground: #616161;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #1a85ff;--vscode-debugConsole-warningForeground: #bf8803;--vscode-debugConsole-errorForeground: #a1260d;--vscode-debugConsole-sourceForeground: #616161;--vscode-debugConsoleInputIcon-foreground: #616161;--vscode-debugIcon-pauseForeground: #007acc;--vscode-debugIcon-stopForeground: #a1260d;--vscode-debugIcon-disconnectForeground: #a1260d;--vscode-debugIcon-restartForeground: #388a34;--vscode-debugIcon-stepOverForeground: #007acc;--vscode-debugIcon-stepIntoForeground: #007acc;--vscode-debugIcon-stepOutForeground: #007acc;--vscode-debugIcon-continueForeground: #007acc;--vscode-debugIcon-stepBackForeground: #007acc;--vscode-extensionButton-prominentBackground: #007acc;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #0062a3;--vscode-extensionIcon-starForeground: #df6100;--vscode-extensionIcon-verifiedForeground: #006ab1;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #b51e78;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #00bc00;--vscode-terminal-ansiYellow: #949800;--vscode-terminal-ansiBlue: #0451a5;--vscode-terminal-ansiMagenta: #bc05bc;--vscode-terminal-ansiCyan: #0598bc;--vscode-terminal-ansiWhite: #555555;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #cd3131;--vscode-terminal-ansiBrightGreen: #14ce14;--vscode-terminal-ansiBrightYellow: #b5ba00;--vscode-terminal-ansiBrightBlue: #0451a5;--vscode-terminal-ansiBrightMagenta: #bc05bc;--vscode-terminal-ansiBrightCyan: #0598bc;--vscode-terminal-ansiBrightWhite: #a5a5a5;--vscode-interactive-activeCodeBorder: #1a85ff;--vscode-interactive-inactiveCodeBorder: #e4e6f1;--vscode-gitDecoration-addedResourceForeground: #587c0c;--vscode-gitDecoration-modifiedResourceForeground: #895503;--vscode-gitDecoration-deletedResourceForeground: #ad0707;--vscode-gitDecoration-renamedResourceForeground: #007100;--vscode-gitDecoration-untrackedResourceForeground: #007100;--vscode-gitDecoration-ignoredResourceForeground: #8e8e90;--vscode-gitDecoration-stageModifiedResourceForeground: #895503;--vscode-gitDecoration-stageDeletedResourceForeground: #ad0707;--vscode-gitDecoration-conflictingResourceForeground: #ad0707;--vscode-gitDecoration-submoduleResourceForeground: #1258a7}:root.light-mode{color-scheme:light}:root.dark-mode{color-scheme:dark;--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #cccccc;--vscode-disabledForeground: rgba(204, 204, 204, .5);--vscode-errorForeground: #f48771;--vscode-descriptionForeground: rgba(204, 204, 204, .7);--vscode-icon-foreground: #c5c5c5;--vscode-focusBorder: #007fd4;--vscode-textSeparator-foreground: rgba(255, 255, 255, .18);--vscode-textLink-foreground: #3794ff;--vscode-textLink-activeForeground: #3794ff;--vscode-textPreformat-foreground: #d7ba7d;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(10, 10, 10, .4);--vscode-widget-shadow: rgba(0, 0, 0, .36);--vscode-input-background: #3c3c3c;--vscode-input-foreground: #cccccc;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(90, 93, 94, .5);--vscode-inputOption-activeBackground: rgba(0, 127, 212, .4);--vscode-inputOption-activeForeground: #ffffff;--vscode-input-placeholderForeground: #a6a6a6;--vscode-inputValidation-infoBackground: #063b49;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #352a05;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #5a1d1d;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #3c3c3c;--vscode-dropdown-foreground: #f0f0f0;--vscode-dropdown-border: #3c3c3c;--vscode-checkbox-background: #3c3c3c;--vscode-checkbox-foreground: #f0f0f0;--vscode-checkbox-border: #3c3c3c;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #0e639c;--vscode-button-hoverBackground: #1177bb;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #3a3d41;--vscode-button-secondaryHoverBackground: #45494e;--vscode-badge-background: #4d4d4d;--vscode-badge-foreground: #ffffff;--vscode-scrollbar-shadow: #000000;--vscode-scrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #f14c4c;--vscode-editorWarning-foreground: #cca700;--vscode-editorInfo-foreground: #3794ff;--vscode-editorHint-foreground: rgba(238, 238, 238, .7);--vscode-sash-hoverBorder: #007fd4;--vscode-editor-background: #1e1e1e;--vscode-editor-foreground: #d4d4d4;--vscode-editorStickyScroll-background: #1e1e1e;--vscode-editorStickyScrollHover-background: #2a2d2e;--vscode-editorWidget-background: #252526;--vscode-editorWidget-foreground: #cccccc;--vscode-editorWidget-border: #454545;--vscode-quickInput-background: #252526;--vscode-quickInput-foreground: #cccccc;--vscode-quickInputTitle-background: rgba(255, 255, 255, .1);--vscode-pickerGroup-foreground: #3794ff;--vscode-pickerGroup-border: #3f3f46;--vscode-keybindingLabel-background: rgba(128, 128, 128, .17);--vscode-keybindingLabel-foreground: #cccccc;--vscode-keybindingLabel-border: rgba(51, 51, 51, .6);--vscode-keybindingLabel-bottomBorder: rgba(68, 68, 68, .6);--vscode-editor-selectionBackground: #264f78;--vscode-editor-inactiveSelectionBackground: #3a3d41;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .15);--vscode-editor-findMatchBackground: #515c6a;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(58, 61, 65, .4);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(38, 79, 120, .25);--vscode-editorHoverWidget-background: #252526;--vscode-editorHoverWidget-foreground: #cccccc;--vscode-editorHoverWidget-border: #454545;--vscode-editorHoverWidget-statusBarBackground: #2c2c2d;--vscode-editorLink-activeForeground: #4e94ce;--vscode-editorInlayHint-foreground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-background: rgba(77, 77, 77, .6);--vscode-editorInlayHint-typeForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-typeBackground: rgba(77, 77, 77, .6);--vscode-editorInlayHint-parameterForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-parameterBackground: rgba(77, 77, 77, .6);--vscode-editorLightBulb-foreground: #ffcc00;--vscode-editorLightBulbAutoFix-foreground: #75beff;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .2);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .4);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(204, 204, 204, .2);--vscode-list-focusOutline: #007fd4;--vscode-list-activeSelectionBackground: #04395e;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #37373d;--vscode-list-hoverBackground: #2a2d2e;--vscode-list-dropBackground: #383b3d;--vscode-list-highlightForeground: #2aaaff;--vscode-list-focusHighlightForeground: #2aaaff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #f88070;--vscode-list-warningForeground: #cca700;--vscode-listFilterWidget-background: #252526;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .36);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #585858;--vscode-tree-tableColumnsBorder: rgba(204, 204, 204, .13);--vscode-tree-tableOddRowsBackground: rgba(204, 204, 204, .04);--vscode-list-deemphasizedForeground: #8c8c8c;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #04395e;--vscode-menu-foreground: #cccccc;--vscode-menu-background: #303031;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #04395e;--vscode-menu-separatorBackground: #606060;--vscode-toolbar-hoverBackground: rgba(90, 93, 94, .31);--vscode-toolbar-activeBackground: rgba(99, 102, 103, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(124, 124, 124, .3);--vscode-editor-snippetFinalTabstopHighlightBorder: #525252;--vscode-breadcrumb-foreground: rgba(204, 204, 204, .8);--vscode-breadcrumb-background: #1e1e1e;--vscode-breadcrumb-focusForeground: #e0e0e0;--vscode-breadcrumb-activeSelectionForeground: #e0e0e0;--vscode-breadcrumbPicker-background: #252526;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #676767;--vscode-minimap-selectionHighlight: #264f78;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #cca700;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(121, 121, 121, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(191, 191, 191, .2);--vscode-problemsErrorIcon-foreground: #f14c4c;--vscode-problemsWarningIcon-foreground: #cca700;--vscode-problemsInfoIcon-foreground: #3794ff;--vscode-charts-foreground: #cccccc;--vscode-charts-lines: rgba(204, 204, 204, .5);--vscode-charts-red: #f14c4c;--vscode-charts-blue: #3794ff;--vscode-charts-yellow: #cca700;--vscode-charts-orange: #d18616;--vscode-charts-green: #89d185;--vscode-charts-purple: #b180d7;--vscode-editor-lineHighlightBorder: #282828;--vscode-editor-rangeHighlightBackground: rgba(255, 255, 255, .04);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #aeafad;--vscode-editorWhitespace-foreground: rgba(227, 228, 226, .16);--vscode-editorIndentGuide-background: #404040;--vscode-editorIndentGuide-activeBackground: #707070;--vscode-editorLineNumber-foreground: #858585;--vscode-editorActiveLineNumber-foreground: #c6c6c6;--vscode-editorLineNumber-activeForeground: #c6c6c6;--vscode-editorRuler-foreground: #5a5a5a;--vscode-editorCodeLens-foreground: #999999;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #888888;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #1e1e1e;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .67);--vscode-editorGhostText-foreground: rgba(255, 255, 255, .34);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #cca700;--vscode-editorOverviewRuler-infoForeground: #3794ff;--vscode-editorBracketHighlight-foreground1: #ffd700;--vscode-editorBracketHighlight-foreground2: #da70d6;--vscode-editorBracketHighlight-foreground3: #179fff;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #bd9b03;--vscode-editorUnicodeHighlight-background: rgba(189, 155, 3, .15);--vscode-symbolIcon-arrayForeground: #cccccc;--vscode-symbolIcon-booleanForeground: #cccccc;--vscode-symbolIcon-classForeground: #ee9d28;--vscode-symbolIcon-colorForeground: #cccccc;--vscode-symbolIcon-constantForeground: #cccccc;--vscode-symbolIcon-constructorForeground: #b180d7;--vscode-symbolIcon-enumeratorForeground: #ee9d28;--vscode-symbolIcon-enumeratorMemberForeground: #75beff;--vscode-symbolIcon-eventForeground: #ee9d28;--vscode-symbolIcon-fieldForeground: #75beff;--vscode-symbolIcon-fileForeground: #cccccc;--vscode-symbolIcon-folderForeground: #cccccc;--vscode-symbolIcon-functionForeground: #b180d7;--vscode-symbolIcon-interfaceForeground: #75beff;--vscode-symbolIcon-keyForeground: #cccccc;--vscode-symbolIcon-keywordForeground: #cccccc;--vscode-symbolIcon-methodForeground: #b180d7;--vscode-symbolIcon-moduleForeground: #cccccc;--vscode-symbolIcon-namespaceForeground: #cccccc;--vscode-symbolIcon-nullForeground: #cccccc;--vscode-symbolIcon-numberForeground: #cccccc;--vscode-symbolIcon-objectForeground: #cccccc;--vscode-symbolIcon-operatorForeground: #cccccc;--vscode-symbolIcon-packageForeground: #cccccc;--vscode-symbolIcon-propertyForeground: #cccccc;--vscode-symbolIcon-referenceForeground: #cccccc;--vscode-symbolIcon-snippetForeground: #cccccc;--vscode-symbolIcon-stringForeground: #cccccc;--vscode-symbolIcon-structForeground: #cccccc;--vscode-symbolIcon-textForeground: #cccccc;--vscode-symbolIcon-typeParameterForeground: #cccccc;--vscode-symbolIcon-unitForeground: #cccccc;--vscode-symbolIcon-variableForeground: #75beff;--vscode-editorHoverWidget-highlightForeground: #2aaaff;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(38, 79, 120, .3);--vscode-editorGutter-foldingControlForeground: #c5c5c5;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .72);--vscode-editor-wordHighlightStrongBackground: rgba(0, 73, 114, .72);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(55, 148, 255, .1);--vscode-peekViewTitleLabel-foreground: #ffffff;--vscode-peekViewTitleDescription-foreground: rgba(204, 204, 204, .7);--vscode-peekView-border: #3794ff;--vscode-peekViewResult-background: #252526;--vscode-peekViewResult-lineForeground: #bbbbbb;--vscode-peekViewResult-fileForeground: #ffffff;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #ffffff;--vscode-peekViewEditor-background: #001f33;--vscode-peekViewEditorGutter-background: #001f33;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(255, 143, 0, .6);--vscode-editorMarkerNavigationError-background: #f14c4c;--vscode-editorMarkerNavigationError-headerBackground: rgba(241, 76, 76, .1);--vscode-editorMarkerNavigationWarning-background: #cca700;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(204, 167, 0, .1);--vscode-editorMarkerNavigationInfo-background: #3794ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(55, 148, 255, .1);--vscode-editorMarkerNavigation-background: #1e1e1e;--vscode-editorSuggestWidget-background: #252526;--vscode-editorSuggestWidget-border: #454545;--vscode-editorSuggestWidget-foreground: #d4d4d4;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #04395e;--vscode-editorSuggestWidget-highlightForeground: #2aaaff;--vscode-editorSuggestWidget-focusHighlightForeground: #2aaaff;--vscode-editorSuggestWidgetStatus-foreground: rgba(212, 212, 212, .5);--vscode-tab-activeBackground: #1e1e1e;--vscode-tab-unfocusedActiveBackground: #1e1e1e;--vscode-tab-inactiveBackground: #2d2d2d;--vscode-tab-unfocusedInactiveBackground: #2d2d2d;--vscode-tab-activeForeground: #ffffff;--vscode-tab-inactiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedActiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedInactiveForeground: rgba(255, 255, 255, .25);--vscode-tab-border: #252526;--vscode-tab-lastPinnedBorder: rgba(204, 204, 204, .2);--vscode-tab-activeModifiedBorder: #3399cc;--vscode-tab-inactiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 153, 204, .25);--vscode-editorPane-background: #1e1e1e;--vscode-editorGroupHeader-tabsBackground: #252526;--vscode-editorGroupHeader-noTabsBackground: #1e1e1e;--vscode-editorGroup-border: #444444;--vscode-editorGroup-dropBackground: rgba(83, 89, 93, .5);--vscode-editorGroup-dropIntoPromptForeground: #cccccc;--vscode-editorGroup-dropIntoPromptBackground: #252526;--vscode-sideBySideEditor-horizontalBorder: #444444;--vscode-sideBySideEditor-verticalBorder: #444444;--vscode-panel-background: #1e1e1e;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #e7e7e7;--vscode-panelTitle-inactiveForeground: rgba(231, 231, 231, .6);--vscode-panelTitle-activeBorder: #e7e7e7;--vscode-panel-dropBorder: #e7e7e7;--vscode-panelSection-dropBackground: rgba(83, 89, 93, .5);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #04395e;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #3794ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #7a6400;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #333333;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #252526;--vscode-sideBarTitle-foreground: #bbbbbb;--vscode-sideBar-dropBackground: rgba(83, 89, 93, .5);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(204, 204, 204, .2);--vscode-titleBar-activeForeground: #cccccc;--vscode-titleBar-inactiveForeground: rgba(204, 204, 204, .6);--vscode-titleBar-activeBackground: #3c3c3c;--vscode-titleBar-inactiveBackground: rgba(60, 60, 60, .6);--vscode-menubar-selectionForeground: #cccccc;--vscode-menubar-selectionBackground: rgba(90, 93, 94, .31);--vscode-notifications-foreground: #cccccc;--vscode-notifications-background: #252526;--vscode-notificationLink-foreground: #3794ff;--vscode-notificationCenterHeader-background: #303031;--vscode-notifications-border: #303031;--vscode-notificationsErrorIcon-foreground: #f14c4c;--vscode-notificationsWarningIcon-foreground: #cca700;--vscode-notificationsInfoIcon-foreground: #3794ff;--vscode-commandCenter-foreground: #cccccc;--vscode-commandCenter-activeForeground: #cccccc;--vscode-commandCenter-activeBackground: rgba(90, 93, 94, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(204, 204, 204, .5);--vscode-editorCommentsWidget-unresolvedBorder: #3794ff;--vscode-editorCommentsWidget-rangeBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(55, 148, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(55, 148, 255, .4);--vscode-editorGutter-commentRangeForeground: #37373d;--vscode-debugToolBar-background: #333333;--vscode-debugIcon-startForeground: #89d185;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 0, .2);--vscode-editor-focusedStackFrameHighlightBackground: rgba(122, 189, 122, .3);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .2);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #e7e7e7;--vscode-settings-modifiedItemIndicator: #0c7d9d;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #3c3c3c;--vscode-settings-dropdownForeground: #f0f0f0;--vscode-settings-dropdownBorder: #3c3c3c;--vscode-settings-dropdownListBorder: #454545;--vscode-settings-checkboxBackground: #3c3c3c;--vscode-settings-checkboxForeground: #f0f0f0;--vscode-settings-checkboxBorder: #3c3c3c;--vscode-settings-textInputBackground: #3c3c3c;--vscode-settings-textInputForeground: #cccccc;--vscode-settings-numberInputBackground: #3c3c3c;--vscode-settings-numberInputForeground: #cccccc;--vscode-settings-focusedRowBackground: rgba(42, 45, 46, .6);--vscode-settings-rowHoverBackground: rgba(42, 45, 46, .3);--vscode-settings-focusedRowBorder: rgba(255, 255, 255, .12);--vscode-terminal-foreground: #cccccc;--vscode-terminal-selectionBackground: #264f78;--vscode-terminal-inactiveSelectionBackground: #3a3d41;--vscode-terminalCommandDecoration-defaultBackground: rgba(255, 255, 255, .25);--vscode-terminalCommandDecoration-successBackground: #1b81a8;--vscode-terminalCommandDecoration-errorBackground: #f14c4c;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #515c6a;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(83, 89, 93, .5);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #f14c4c;--vscode-testing-peekHeaderBackground: rgba(241, 76, 76, .1);--vscode-testing-message\.error\.decorationForeground: #f14c4c;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(212, 212, 212, .5);--vscode-welcomePage-tileBackground: #252526;--vscode-welcomePage-tileHoverBackground: #2c2c2d;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .36);--vscode-welcomePage-progress\.background: #3c3c3c;--vscode-welcomePage-progress\.foreground: #3794ff;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #420b0d;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(255, 255, 255, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #1b81a8;--vscode-editorGutter-addedBackground: #487e02;--vscode-editorGutter-deletedBackground: #f14c4c;--vscode-minimapGutter-modifiedBackground: #1b81a8;--vscode-minimapGutter-addedBackground: #487e02;--vscode-minimapGutter-deletedBackground: #f14c4c;--vscode-editorOverviewRuler-modifiedForeground: rgba(27, 129, 168, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 126, 2, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(241, 76, 76, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #ffcc00;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #37373d;--vscode-notebook-focusedEditorBorder: #007fd4;--vscode-notebookStatusSuccessIcon-foreground: #89d185;--vscode-notebookStatusErrorIcon-foreground: #f48771;--vscode-notebookStatusRunningIcon-foreground: #cccccc;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: #37373d;--vscode-notebook-selectedCellBorder: #37373d;--vscode-notebook-focusedCellBorder: #007fd4;--vscode-notebook-inactiveFocusedCellBorder: #37373d;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(255, 255, 255, .15);--vscode-notebook-cellInsertionIndicator: #007fd4;--vscode-notebookScrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-notebook-symbolHighlightBackground: rgba(255, 255, 255, .04);--vscode-notebook-cellEditorBackground: #252526;--vscode-notebook-editorBackground: #1e1e1e;--vscode-keybindingTable-headerBackground: rgba(204, 204, 204, .04);--vscode-keybindingTable-rowsBackground: rgba(204, 204, 204, .04);--vscode-scm-providerBorder: #454545;--vscode-debugTokenExpression-name: #c586c0;--vscode-debugTokenExpression-value: rgba(204, 204, 204, .6);--vscode-debugTokenExpression-string: #ce9178;--vscode-debugTokenExpression-boolean: #4e94ce;--vscode-debugTokenExpression-number: #b5cea8;--vscode-debugTokenExpression-error: #f48771;--vscode-debugView-exceptionLabelForeground: #cccccc;--vscode-debugView-exceptionLabelBackground: #6c2022;--vscode-debugView-stateLabelForeground: #cccccc;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #3794ff;--vscode-debugConsole-warningForeground: #cca700;--vscode-debugConsole-errorForeground: #f48771;--vscode-debugConsole-sourceForeground: #cccccc;--vscode-debugConsoleInputIcon-foreground: #cccccc;--vscode-debugIcon-pauseForeground: #75beff;--vscode-debugIcon-stopForeground: #f48771;--vscode-debugIcon-disconnectForeground: #f48771;--vscode-debugIcon-restartForeground: #89d185;--vscode-debugIcon-stepOverForeground: #75beff;--vscode-debugIcon-stepIntoForeground: #75beff;--vscode-debugIcon-stepOutForeground: #75beff;--vscode-debugIcon-continueForeground: #75beff;--vscode-debugIcon-stepBackForeground: #75beff;--vscode-extensionButton-prominentBackground: #0e639c;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #1177bb;--vscode-extensionIcon-starForeground: #ff8e00;--vscode-extensionIcon-verifiedForeground: #3794ff;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #d758b3;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #0dbc79;--vscode-terminal-ansiYellow: #e5e510;--vscode-terminal-ansiBlue: #2472c8;--vscode-terminal-ansiMagenta: #bc3fbc;--vscode-terminal-ansiCyan: #11a8cd;--vscode-terminal-ansiWhite: #e5e5e5;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #f14c4c;--vscode-terminal-ansiBrightGreen: #23d18b;--vscode-terminal-ansiBrightYellow: #f5f543;--vscode-terminal-ansiBrightBlue: #3b8eea;--vscode-terminal-ansiBrightMagenta: #d670d6;--vscode-terminal-ansiBrightCyan: #29b8db;--vscode-terminal-ansiBrightWhite: #e5e5e5;--vscode-interactive-activeCodeBorder: #3794ff;--vscode-interactive-inactiveCodeBorder: #37373d;--vscode-gitDecoration-addedResourceForeground: #81b88b;--vscode-gitDecoration-modifiedResourceForeground: #e2c08d;--vscode-gitDecoration-deletedResourceForeground: #c74e39;--vscode-gitDecoration-renamedResourceForeground: #73c991;--vscode-gitDecoration-untrackedResourceForeground: #73c991;--vscode-gitDecoration-ignoredResourceForeground: #8c8c8c;--vscode-gitDecoration-stageModifiedResourceForeground: #e2c08d;--vscode-gitDecoration-stageDeletedResourceForeground: #c74e39;--vscode-gitDecoration-conflictingResourceForeground: #e4676b;--vscode-gitDecoration-submoduleResourceForeground: #8db9e2}.cm-wrapper{line-height:18px}.cm-wrapper,.cm-wrapper>div{width:100%;height:100%}.CodeMirror span.cm-meta{color:var(--vscode-editor-foreground)}.CodeMirror span.cm-number{color:var(--vscode-debugTokenExpression-number)}.CodeMirror span.cm-keyword,.CodeMirror span.cm-builtin{color:var(--vscode-debugTokenExpression-name)}.CodeMirror span.cm-operator{color:var(--vscode-editor-foreground)}.CodeMirror span.cm-string,.CodeMirror span.cm-string-2{color:var(--vscode-debugTokenExpression-string)}.CodeMirror span.cm-error{color:var(--vscode-errorForeground)}.CodeMirror span.cm-def,.CodeMirror span.cm-tag{color:#0070c1}.CodeMirror span.cm-comment,.CodeMirror span.cm-link{color:green}.CodeMirror span.cm-variable,.CodeMirror span.cm-variable-2,.CodeMirror span.cm-atom{color:#0070c1}.CodeMirror span.cm-property{color:#795e26}.CodeMirror span.cm-qualifier,.CodeMirror span.cm-attribute{color:#001080}.CodeMirror span.cm-variable-3,.CodeMirror span.cm-type{color:#267f99}:root.dark-mode .CodeMirror span.cm-def,:root.dark-mode .CodeMirror span.cm-tag{color:var(--vscode-debugView-valueChangedHighlight)}:root.dark-mode .CodeMirror span.cm-comment,:root.dark-mode .CodeMirror span.cm-link{color:#6a9955}:root.dark-mode .CodeMirror span.cm-variable,:root.dark-mode .CodeMirror span.cm-variable-2,:root.dark-mode .CodeMirror span.cm-atom{color:#4fc1ff}:root.dark-mode .CodeMirror span.cm-property{color:#dcdcaa}:root.dark-mode .CodeMirror span.cm-qualifier,:root.dark-mode .CodeMirror span.cm-attribute{color:#9cdcfe}:root.dark-mode .CodeMirror span.cm-variable-3,:root.dark-mode .CodeMirror span.cm-type{color:#4ec9b0}.CodeMirror span.cm-bracket{color:var(--vscode-editorBracketHighlight-foreground3)}.CodeMirror-cursor{border-left:1px solid var(--vscode-editor-foreground)!important}.CodeMirror div.CodeMirror-selected{background:var(--vscode-terminal-inactiveSelectionBackground)}.CodeMirror .CodeMirror-gutters{z-index:0;background:1px solid var(--vscode-editorGroup-border);border-right:none}.CodeMirror .CodeMirror-gutter-elt{background-color:var(--vscode-editorGutter-background)}.CodeMirror .CodeMirror-gutterwrapper{border-right:1px solid var(--vscode-editorGroup-border);color:var(--vscode-editorLineNumber-foreground)}.CodeMirror .CodeMirror-matchingbracket{background-color:var(--vscode-editorBracketPairGuide-background1);color:var(--vscode-editorBracketHighlight-foreground1)!important}.CodeMirror{font-family:var(--vscode-editor-font-family)!important;color:var(--vscode-editor-foreground)!important;background-color:var(--vscode-editor-background)!important;font-weight:var(--vscode-editor-font-weight)!important;font-size:var(--vscode-editor-font-size)!important}.CodeMirror .source-line-running{background-color:var(--vscode-editor-selectionBackground);z-index:2}.CodeMirror .source-line-paused{background-color:var(--vscode-editor-selectionHighlightBackground);z-index:2}.CodeMirror .source-line-error-widget{background-color:var(--vscode-inputValidation-errorBackground);white-space:pre-wrap;margin:3px 10px;padding:5px}.CodeMirror span.cm-link,span.cm-linkified{color:var(--vscode-textLink-foreground);text-decoration:underline;cursor:pointer}.CodeMirror .source-line-error-underline{text-decoration:underline;text-decoration-color:var(--vscode-errorForeground);text-decoration-style:wavy}.CodeMirror-placeholder{color:var(--vscode-input-placeholderForeground)!important}.CodeMirror-dialog-top{padding-top:8px!important}.expandable{flex:none;flex-direction:column;line-height:28px}.expandable-title{flex:none;display:flex;flex-direction:row;align-items:center;white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:pointer}.expandable-content{margin-left:25px}.console-tab{display:flex;flex:auto;white-space:pre}.console-line{width:100%;-webkit-user-select:text;user-select:text}.console-line .codicon{padding:0 2px 0 3px;position:relative;flex:none;top:3px}.console-line.warning .codicon{color:#ff8c00}.console-line-message{word-break:break-word;white-space:pre-wrap;position:relative}.console-location{padding-right:3px;float:right;color:var(--vscode-editorCodeLens-foreground);-webkit-user-select:none;user-select:none}.console-time{float:left;min-width:50px;color:var(--vscode-editorCodeLens-foreground);-webkit-user-select:none;user-select:none}.console-stack{white-space:pre-wrap;margin-left:50px}.console-line .codicon.status-none:after,.console-line .codicon.status-error:after,.console-line .codicon.status-warning:after{display:inline-block;content:"a";color:transparent;border-radius:4px;width:8px;height:8px;position:relative;top:8px;left:-7px}.console-line .codicon.status-error:after{background-color:var(--vscode-errorForeground)}.console-line .codicon.status-warning:after{background-color:var(--vscode-list-warningForeground)}.console-repeat{display:inline-block;padding:0 2px;font-size:12px;line-height:18px;border-radius:6px;background-color:#8c959f;color:#fff;margin-right:10px;flex:none;font-weight:600}.network-request-status-route{color:var(--vscode-statusBar-foreground);background-color:var(--vscode-statusBar-background)}.network-request-status-route.api{color:var(--vscode-statusBar-foreground);background-color:var(--vscode-statusBarItem-remoteBackground)}.network-grid-view .grid-view-column-method,.network-grid-view .grid-view-column-status{text-align:center}.network-grid-view .grid-view-column-duration,.network-grid-view .grid-view-column-size,.network-grid-view .grid-view-column-start{text-align:end}.network-request-details-tab{-webkit-user-select:text;user-select:text;overflow:auto}.network-response-toolbar{border-top:1px solid var(--vscode-panel-border);border-bottom:none!important}.network-request-details-tab>*{flex:none}.network-request-no-payload{margin-left:14px}.network-request-details-tab .expandable-title{padding-left:3px;background-color:var(--vscode-sideBar-background)}.network-request-details-tab .expandable-content{margin-left:0;padding-left:28px;line-height:24px}.network-request-details-header{margin:3px 0 3px 14px;font-weight:700}.network-request-details-header-count{color:var(--vscode-editorCodeLens-foreground);font-weight:400}.network-request-details-table{width:100%;line-height:18px;padding:8px 0 8px 8px;white-space:pre-wrap}.network-request-details-table td:first-of-type{width:30%;min-width:160px;vertical-align:top}.network-request-details-table td:nth-of-type(2){word-break:break-all;vertical-align:center}.network-request-details-tab .cm-wrapper{overflow:hidden}.network-response-body{flex:1}.network-request-request-body{max-height:100%}.network-request-request-body .expandable-content{height:100%}.network-font-preview{font-family:font-preview;font-size:30px;line-height:40px;padding:16px 16px 16px 6px;overflow:hidden;text-overflow:ellipsis;text-align:center}.network-font-preview-error{margin-top:8px;text-align:center}.network-websocket-message-row{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%;padding:2px 8px;white-space:nowrap;overflow:hidden}.network-websocket-message-row .codicon{flex:none}.network-websocket-message-direction-send{color:var(--vscode-charts-green)}.network-websocket-message-direction-receive{color:var(--vscode-charts-red)}.network-websocket-message-preview{flex:auto;font-family:var(--vscode-editor-font-family);text-overflow:ellipsis;overflow:hidden}.network-websocket-message-opcode,.network-websocket-message-length,.network-websocket-message-time{flex:none;color:var(--vscode-descriptionForeground);font-variant-numeric:tabular-nums}.network-websocket-message-opcode{min-width:80px;text-align:left}.network-websocket-message-length,.network-websocket-message-time{min-width:64px;text-align:right}.network-websocket-message-detail{flex:auto;overflow:hidden}.network-websocket-message-detail-toolbar{padding:0 8px;border-bottom:1px solid var(--vscode-panel-border)}.network-websocket-message-detail-summary{color:var(--vscode-descriptionForeground);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.network-websocket-message-detail-body{flex:auto;overflow:hidden}.tab-network .toolbar{min-height:30px!important;background-color:initial!important;border-bottom:1px solid var(--vscode-panel-border)}.tab-network .toolbar:after{box-shadow:none!important}.tab-network .tabbed-pane-tab.selected{font-weight:700}.copy-request-dropdown .copy-request-dropdown-toggle{margin-right:14px;width:135px}.copy-request-dropdown:not(:hover) .copy-request-dropdown-menu{display:none}.copy-request-dropdown .copy-request-dropdown-menu{position:absolute;display:flex;flex-direction:column;width:135px;z-index:10;background-color:var(--vscode-list-dropBackground)}.copy-request-dropdown .copy-request-dropdown-menu button{padding:8px;text-align:left}.green-circle:before,.red-circle:before,.yellow-circle:before{content:"";display:inline-block;width:12px;height:12px;border-radius:6px;margin-right:2px;align-self:center}.green-circle:before{background-color:var(--vscode-charts-green)}.red-circle:before{background-color:var(--vscode-charts-red)}.yellow-circle:before{background-color:var(--vscode-charts-yellow)}.tabbed-pane{display:flex;flex:auto;overflow:hidden}.tabbed-pane .toolbar{background-color:var(--vscode-sideBar-background)}.tabbed-pane .tab-content{display:flex;flex:auto;overflow:hidden;position:relative;flex-direction:column}.tabbed-pane-tab{padding:2px 6px 0;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-bottom:2px solid transparent;outline:none;height:100%}.tabbed-pane-tab-label{max-width:250px;white-space:pre;overflow:hidden;text-overflow:ellipsis;display:inline-block}.tabbed-pane-tab.selected{background-color:var(--vscode-tab-activeBackground)}.tabbed-pane-tab-counter{padding:0 4px;background:var(--vscode-menu-separatorBackground);border-radius:8px;height:16px;margin-left:4px;line-height:16px;min-width:18px;display:flex;align-items:center;justify-content:center}.tabbed-pane-tab-counter.error{background:var(--vscode-list-errorForeground);color:var(--vscode-button-foreground)}.toolbar{position:relative;display:flex;color:var(--vscode-sideBarTitle-foreground);min-height:30px;align-items:center;flex:none;padding-right:4px}.toolbar.toolbar-sidebar-background{background-color:var(--vscode-sideBar-background)}.toolbar:not(.no-shadow):after{content:"";display:block;position:absolute;pointer-events:none;top:0;bottom:0;left:-2px;right:-2px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px;z-index:100}.toolbar.no-min-height{min-height:0}.toolbar input{padding:0 5px;line-height:24px;outline:none;margin:0 4px}.toolbar select{background:none;outline:none;padding:3px;margin:2px}.toolbar option{background-color:var(--vscode-tab-activeBackground)}.toolbar input,.toolbar select{border:none;color:var(--vscode-input-foreground);background-color:var(--vscode-input-background)}.grid-view{display:flex;position:relative;flex:auto}.grid-view .list-view-entry{padding-left:0}.grid-view-cell{overflow:hidden;text-overflow:ellipsis;padding:0 5px;flex:none}.grid-view-header{-webkit-user-select:none;user-select:none;display:flex;flex:0 0 30px;align-items:center;flex-direction:row;border-bottom:1px solid var(--vscode-panel-border)}.grid-view-header .codicon-triangle-up,.grid-view-header .codicon-triangle-down{display:none}.grid-view-header>.filter-positive .codicon-triangle-down{display:initial!important}.grid-view-header>.filter-negative .codicon-triangle-up{display:initial!important}.grid-view-header-cell{flex:none;align-items:center;overflow:hidden;text-overflow:ellipsis;padding-left:10px;cursor:pointer;display:flex;white-space:nowrap}.grid-view-header-cell-title{overflow:hidden;text-overflow:ellipsis;flex:auto}.network-filters{display:flex;gap:16px;background-color:var(--vscode-sideBar-background);padding:4px 8px;min-height:32px}.network-filters input[type=search]{padding:0 5px}.network-filters-resource-types{display:flex;gap:8px;align-items:center}.network-filters-resource-type{cursor:pointer;border-radius:2px;padding:3px 8px;text-align:center;overflow:hidden;text-overflow:ellipsis}.network-filters-resource-type.selected{background-color:var(--vscode-list-inactiveSelectionBackground)}.snapshot-tab{align-items:stretch;outline:none;overflow:hidden}.snapshot-tab .toolbar{background-color:var(--vscode-sideBar-background)}.snapshot-tab .toolbar .pick-locator{margin:0 4px}.snapshot-controls{flex:none;background-color:var(--vscode-sideBar-background);color:var(--vscode-sideBarTitle-foreground);display:flex;box-shadow:var(--box-shadow);height:32px;align-items:center;justify-content:center}.snapshot-toggle{margin-top:4px;padding:4px 8px;cursor:pointer;border-radius:20px;margin-left:4px;width:60px;display:flex;align-items:center;justify-content:center}.snapshot-toggle:hover{background-color:#ededed}.snapshot-toggle.toggled{background:var(--gray);color:#fff}.snapshot-tab:focus .snapshot-toggle.toggled{background:var(--vscode-charts-blue)}.snapshot-wrapper{flex:auto;margin:1px;padding:10px;position:relative;--browser-frame-header-height: 40px}.snapshot-container{display:block;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a}.snapshot-browser-body{height:calc(100% - var(--browser-frame-header-height));background:conic-gradient(#eee 25%,#ddd 0,#ddd 50%,#eee 0,#eee 75%,#ddd 0) 0 0 / 40px 40px}.snapshot-switcher{width:100%;height:100%;position:relative}iframe[name=snapshot]{position:absolute;top:0;left:0;width:100%;height:100%;border:none;background:light-dark(white,#333);visibility:hidden}iframe.snapshot-visible[name=snapshot]{visibility:visible}.no-snapshot{text-align:center;padding:50px}.snapshot-tab .cm-wrapper{line-height:23px;margin-right:4px}.browser-frame-dot{border-radius:50%;display:inline-block;height:12px;width:12px}.browser-frame-address-bar{background-color:var(--vscode-input-background);border-radius:12.5px;color:var(--vscode-input-foreground);flex:1 0;font:400 16px Arial,sans-serif;margin:0 16px 0 8px;padding:5px 15px;display:flex;align-items:center;height:28px}.browser-frame-address{flex:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.browser-frame-menu-bar{background-color:#aaa;display:block;height:3px;margin:3px 0;width:17px}.browser-frame-header{align-items:center;background:#ebedf0;display:flex;padding:8px 16px;border-top-left-radius:6px;border-top-right-radius:6px;height:var(--browser-frame-header-height)}:root.dark-mode .browser-frame-header{background:#444950}.browser-traffic-lights{display:grid;white-space:nowrap;grid-template-columns:auto auto auto;column-gap:6px;margin-right:8px}.playback-scrubber{position:relative;height:16px;cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;outline:none}.playback-scrubber:focus-visible .playback-thumb{box-shadow:0 0 0 2px var(--vscode-focusBorder)}.playback-track{position:absolute;top:7px;left:0;right:0;height:2px;background-color:var(--vscode-panel-border);border-radius:1px}.playback-track-filled{position:absolute;top:7px;left:0;height:2px;background-color:var(--vscode-focusBorder);border-radius:1px}.playback-track-filled.animated{transition:width .15s ease-out}.playback-tick{position:absolute;top:4px;width:1px;height:8px;background-color:var(--vscode-foreground)}.playback-thumb{position:absolute;top:3px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background-color:var(--vscode-focusBorder);z-index:1}.playback-thumb.animated{transition:left .15s ease-out}.playback-speed{background:none;border:none;color:inherit;font-size:12px;cursor:pointer;padding:2px 6px;min-width:36px;text-align:center;-webkit-user-select:none;user-select:none;border-radius:3px}.playback-speed:hover{background-color:var(--vscode-toolbar-hoverBackground)}.source-tab{flex:auto;position:relative;overflow:hidden;display:flex;flex-direction:row}.source-tab-file-name{padding-left:8px;height:100%;display:flex;align-items:center;flex:1 1 auto}.source-tab-file-name div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stack-trace-frame-function{flex:1 1 100px;overflow:hidden;text-overflow:ellipsis}.stack-trace-frame-location{flex:1 1 100px;overflow:hidden;text-overflow:ellipsis;text-align:end}.stack-trace-frame-line{flex:none}.film-strip{flex:none;display:flex;flex-direction:column;position:relative}.film-strip-lanes{flex:none;display:flex;flex-direction:column;position:relative;min-height:50px;max-height:200px;overflow-x:hidden;overflow-y:auto}.film-strip-lane{flex:none;display:flex}.film-strip-frame{flex:none;pointer-events:none;box-shadow:var(--box-shadow)}.film-strip-hover{position:absolute;top:0;left:0;background-color:var(--vscode-panel-background);box-shadow:#0002 0 1.6px 10px,#0000001c 0 .3px 10px;z-index:200;pointer-events:none}.film-strip-hover-title{padding:2px 4px;display:flex;align-items:center;overflow:hidden;line-height:28px}.timeline-view-container{flex:none;border-bottom:1px solid var(--vscode-panel-border)}.timeline-view{flex:none;position:relative;display:flex;flex-direction:column;padding-top:16px;cursor:text;-webkit-user-select:none;user-select:none;margin-left:10px}.timeline-divider{position:absolute;width:1px;top:0;bottom:0;background-color:var(--vscode-panel-border)}.timeline-time{position:absolute;top:4px;right:3px;font-size:80%;white-space:nowrap;pointer-events:none}.timeline-time-input{cursor:pointer}.timeline-grid{position:absolute;top:0;right:0;bottom:0;left:0}.timeline-highlight{position:absolute;top:0;bottom:0;pointer-events:none;background-color:#1a85ff33;border-left:2px solid var(--vscode-charts-blue);border-right:2px solid var(--vscode-charts-blue)}.timeline-window{display:flex;position:absolute;top:0;bottom:20px;left:0;right:0;pointer-events:none}.timeline-window-center{flex:auto}.timeline-window-drag{height:20px;cursor:grab;pointer-events:all}.timeline-window-curtain{flex:none;background-color:#3879d91a}:root.dark-mode .timeline-window-curtain{background-color:#161718bf}.timeline-window-resizer{flex:none;width:10px;cursor:ew-resize;pointer-events:all;position:relative;background-color:var(--vscode-panel-border);border-left:1px solid var(--vscode-panel-border);border-right:1px solid var(--vscode-panel-border)}.annotations-tab{flex:auto;line-height:24px;white-space:pre;overflow:auto;-webkit-user-select:text;user-select:text}.annotation-item{margin:4px 8px;text-wrap:wrap}.workbench-run-status{height:30px;padding:4px 4px 4px 5px;flex:none;display:flex;flex-direction:row;align-items:center;border-bottom:1px solid var(--vscode-panel-border)}.workbench-run-status.failed{color:var(--vscode-errorForeground)}.workbench-run-status .codicon{margin-right:4px}.workbench-run-duration{display:flex;flex:none;align-items:center;color:var(--vscode-editorCodeLens-foreground)}.workbench-actions-hidden-count{padding-right:4px;-webkit-user-select:none;user-select:none;color:var(--vscode-editorCodeLens-foreground)}.workbench-action-filter{margin-top:3px;border-bottom:1px solid var(--vscode-panel-border);flex:none}.workbench-action-filter input[type=search]{width:100%;padding:4px 8px;line-height:20px}.settings-view{display:flex;flex:none;padding:4px 0;row-gap:8px;-webkit-user-select:none;user-select:none}.settings-view .setting{display:flex;align-items:center}.settings-view .setting label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;cursor:pointer}.settings-view .setting input{margin-right:5px;flex-shrink:0}.settings-view .setting-select{display:grid;grid-template-rows:auto auto;row-gap:8px;margin:0 16px 0 22px;line-height:initial}.settings-view .setting-select:not(:first-child){margin-top:4px}.settings-view .setting-counter{padding:0 4px;background:var(--vscode-menu-separatorBackground);border-radius:9px;height:18px;margin-left:4px;line-height:18px;min-width:18px;display:inline-flex;align-items:center;justify-content:center}
scripts/node_modules/playwright-core/lib/vite/traceViewer/index.CzXZzn5A.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
.drop-target{display:flex;align-items:center;justify-content:center;flex:auto;flex-direction:column;background-color:var(--vscode-editor-background);position:absolute;top:0;right:0;bottom:0;left:0;z-index:100;line-height:24px}body .drop-target{background:#fffc}:root.dark-mode .drop-target{background:#000c}.drop-target .title{font-size:24px;font-weight:700;margin-bottom:30px}.drop-target .info{max-width:400px;text-align:center}.drop-target .processing-error{font-size:24px;color:#e74c3c;font-weight:700;text-align:center;margin:30px;white-space:pre-line}.drop-target input{margin-top:50px}.drop-target button{color:#fff;background-color:#007acc;padding:8px 12px;border:none;margin:30px 0;cursor:pointer}.drop-target .version{color:var(--vscode-disabledForeground);margin-top:8px}.progress-dialog{width:400px;top:0;right:0;bottom:0;left:0;border:none;outline:none;background-color:var(--vscode-sideBar-background)}.progress-dialog::backdrop{background-color:#0006}.progress-content{padding:16px}.progress-content .title{background-color:unset;font-size:18px;font-weight:700;padding:0}.progress-wrapper{background-color:var(--vscode-commandCenter-activeBackground);width:100%;margin-top:16px;margin-bottom:8px}.inner-progress{background-color:var(--vscode-progressBar-background);height:4px}.workbench-loader-header{display:flex;background-color:var(--vscode-sideBar-background);flex:none;flex-basis:48px;line-height:48px;font-size:16px;align-items:center;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}.workbench-loader{contain:size}.workbench-loader .workbench-loader-header{flex-basis:32px;line-height:32px;font-size:13px}.workbench-loader .workbench-loader-header .toolbar-button{margin:4px}.workbench-loader .logo{margin-left:16px;display:flex;align-items:center}.workbench-loader .logo img{height:32px;width:32px;pointer-events:none;flex:none}.workbench-loader .product{font-weight:600;margin-left:16px;flex:none}.workbench-loader .workbench-loader-header .title{margin-left:16px;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}html,body{min-width:550px;min-height:450px;overflow:auto}
scripts/node_modules/playwright-core/lib/vite/traceViewer/index.DMMX1gXU.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,2 @@
import"./assets/urlMatch-BYQrIQwR.js";import{T as x,r,a as C,W as F,j as e,D as z,b as I,c as P,d as A,e as O,f as V}from"./assets/defaultSettingsView-BNmKHKpQ.js";const $=()=>{const[o,c]=r.useState(!1),[n,l]=r.useState(),[h,u]=r.useState(),[p,b]=r.useState(N),[f,j]=r.useState({done:0,total:0}),[k,v]=r.useState(!1),[y,m]=r.useState(null),[T,R]=r.useState(null),[U,E]=r.useState(!1),g=r.useCallback(t=>{const s=new URL(window.location.href);if(!t.length)return;const i=t.item(0),a=URL.createObjectURL(i);s.searchParams.append("trace",a);const d=s.toString();window.history.pushState({},"",d),l(a),u(i.name),v(!1),m(null)},[]);r.useEffect(()=>{const t=async s=>{var a;if(!((a=s.clipboardData)!=null&&a.files.length))return;const i=["application/zip","application/x-zip-compressed"];for(const d of s.clipboardData.files)if(!i.includes(d.type))return;s.preventDefault(),g(s.clipboardData.files)};return document.addEventListener("paste",t),()=>document.removeEventListener("paste",t)}),r.useEffect(()=>{const t=s=>{const{method:i,params:a}=s.data;if(i!=="load"||!((a==null?void 0:a.trace)instanceof Blob))return;const d=new File([a.trace],"trace.zip",{type:"application/zip"}),w=new DataTransfer;w.items.add(d),g(w.files)};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)});const W=r.useCallback(t=>{t.preventDefault(),g(t.dataTransfer.files)},[g]),M=r.useCallback(t=>{t.preventDefault(),t.target.files&&g(t.target.files)},[g]);r.useEffect(()=>{const t=new URL(window.location.href).searchParams,s=t.get("trace");if(c(t.has("isServer")),s!=null&&s.startsWith("file:")){R(s||null);return}if(t.has("isServer")){const i=new URLSearchParams(window.location.search).get("ws"),a=new URL(`../${i}`,window.location.toString());a.protocol=window.location.protocol==="https:"?"wss:":"ws:";const d=new C(new F(a));d.onLoadTraceRequested(async w=>{l(w.traceUrl),v(!1),m(null)}),d.initialize({}).catch(()=>{})}else s&&!s.startsWith("blob:")&&l(s)},[]);const S=r.useCallback(async t=>{const s=new URLSearchParams;s.set("trace",t);const i=await fetch(`contexts?${s.toString()}`);if(!i.ok){const{error:w}=await i.json();return m(w),w}const a=await i.json(),d=new x(t,a);j({done:0,total:0}),m(null),b(d)},[]);r.useEffect(()=>{(async()=>{if(!n){b(N);return}const t=s=>{s.data.method==="progress"&&j(s.data.params)};try{navigator.serviceWorker.addEventListener("message",t),j({done:0,total:1});let s=await S(n);s!=null&&s.includes("please grant permission for Local Network Access")&&(await fetch(n,{method:"HEAD",headers:{"x-pw-serviceworker":"skip"}}),s=await S(n)),s&&(o||l(void 0))}finally{navigator.serviceWorker.removeEventListener("message",t)}})()},[o,n,h,S]);const D=f.done!==f.total&&f.total!==0&&!y;r.useEffect(()=>{if(D){const t=setTimeout(()=>{E(!0)},200);return()=>clearTimeout(t)}else E(!1)},[D]);const L=!!(!o&&!k&&!T&&(!n||y));return e.jsxs("div",{className:"vbox workbench-loader",onDragOver:t=>{t.preventDefault(),t.dataTransfer.types.includes("Files")&&v(!0)},children:[e.jsxs("div",{className:"hbox workbench-loader-header",...L?{inert:!0}:{},children:[e.jsx("div",{className:"logo",children:e.jsx("img",{src:"playwright-logo.svg",alt:"Playwright logo"})}),e.jsx("div",{className:"product",children:"Playwright"}),p.title&&e.jsx("div",{className:"title",children:p.title}),e.jsx("div",{className:"spacer"}),e.jsx(z,{icon:"settings-gear",title:"Settings",dialogDataTestId:"settings-toolbar-dialog",children:e.jsx(I,{location:"trace-viewer"})})]}),e.jsx(P,{model:p,inert:L}),T&&e.jsxs("div",{className:"drop-target",children:[e.jsx("div",{children:"Trace Viewer uses Service Workers to show traces. To view trace:"}),e.jsxs("div",{style:{paddingTop:20},children:[e.jsxs("div",{children:["1. Click ",e.jsx("a",{href:T,children:"here"})," to put your trace into the download shelf"]}),e.jsxs("div",{children:["2. Go to ",e.jsx("a",{href:"https://trace.playwright.dev",children:"trace.playwright.dev"})]}),e.jsx("div",{children:"3. Drop the trace from the download shelf into the page"})]})]}),e.jsx(A,{open:U,isModal:!0,className:"progress-dialog",children:e.jsxs("div",{className:"progress-content",children:[e.jsx("div",{className:"title",role:"heading","aria-level":1,children:"Loading Playwright Trace..."}),e.jsx("div",{className:"progress-wrapper",children:e.jsx("div",{className:"inner-progress",style:{width:f.total?100*f.done/f.total+"%":0}})})]})}),L&&e.jsxs("div",{className:"drop-target",children:[e.jsx("div",{className:"processing-error",role:"alert",children:y}),e.jsx("div",{className:"title",role:"heading","aria-level":1,children:"Drop Playwright Trace to load"}),e.jsx("div",{children:"or"}),e.jsx("button",{onClick:()=>{const t=document.createElement("input");t.type="file",t.click(),t.addEventListener("change",s=>M(s))},type:"button",children:"Select file"}),e.jsx("div",{className:"info",children:"Playwright Trace Viewer is a Progressive Web App, it does not send your trace anywhere, it opens it locally."}),e.jsxs("div",{className:"version",children:["Playwright v","1.61.1"]})]}),o&&!n&&e.jsx("div",{className:"drop-target",children:e.jsx("div",{className:"title",children:"Select test to see the trace"})}),k&&e.jsx("div",{className:"drop-target",onDragLeave:()=>{v(!1)},onDrop:t=>W(t),children:e.jsx("div",{className:"title",children:"Release to analyse the Playwright Trace"})})]})},N=new x("",[]),q=({traceJson:o})=>{const[c,n]=r.useState(void 0),[l,h]=r.useState(0),u=r.useRef(null);return r.useEffect(()=>(u.current&&clearTimeout(u.current),u.current=setTimeout(async()=>{try{const p=await B(o);n(p)}catch{const p=new x("",[]);n(p)}finally{h(l+1)}},500),()=>{u.current&&clearTimeout(u.current)}),[o,l]),e.jsx(P,{isLive:!0,model:c})};async function B(o){const c=new URLSearchParams;c.set("trace",o);const l=await(await fetch(`contexts?${c.toString()}`)).json();return new x(o,l)}(async()=>{const o=new URLSearchParams(window.location.search);if(O(),window.location.protocol!=="file:"){if(o.get("isUnderTest")==="true"&&await new Promise(h=>setTimeout(h,1e3)),!navigator.serviceWorker)throw new Error(`Service workers are not supported.
Make sure to serve the Trace Viewer (${window.location}) via HTTPS or localhost.`);navigator.serviceWorker.register("sw.bundle.js"),navigator.serviceWorker.controller||await new Promise(h=>{navigator.serviceWorker.oncontrollerchange=()=>h()}),setInterval(function(){fetch("ping")},1e4)}const c=o.get("trace"),l=(c==null?void 0:c.endsWith(".json"))?e.jsx(q,{traceJson:c}):e.jsx($,{});V.createRoot(document.querySelector("#root")).render(l)})();
scripts/node_modules/playwright-core/lib/vite/traceViewer/index.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,44 @@
<!DOCTYPE html>
<html lang="en" translate="no">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" href="./playwright-logo.svg" type="image/svg+xml">
    <link rel="manifest" href="./manifest.webmanifest">
    <title>Playwright Trace Viewer</title>
    <script type="module" crossorigin src="./index.DMMX1gXU.js"></script>
    <link rel="modulepreload" crossorigin href="./assets/urlMatch-BYQrIQwR.js">
    <link rel="modulepreload" crossorigin href="./assets/defaultSettingsView-BNmKHKpQ.js">
    <link rel="stylesheet" crossorigin href="./defaultSettingsView.CjdS-WJx.css">
    <link rel="stylesheet" crossorigin href="./index.CzXZzn5A.css">
  </head>
  <body>
    <div id="root"></div>
    <dialog id="fallback-error">
      <p>The Playwright Trace Viewer must be loaded over the <code>http://</code> or <code>https://</code> protocols.</p>
      <p>For more information, please see the <a href="https://aka.ms/playwright/trace-viewer-file-protocol">docs</a>.</p>
    </dialog>
    <script>
      if (!/^https?:/.test(window.location.protocol)) {
        const fallbackErrorDialog = document.getElementById('fallback-error');
        const isTraceViewerInsidePlaywrightReport = window.location.protocol === 'file:' && window.location.pathname.endsWith('/trace/index.html');
        // Best-effort to show the report path in the dialog.
        if (isTraceViewerInsidePlaywrightReport) {
          const reportPath = (() => {
            const base = decodeURIComponent(window.location.pathname).replace(/\/trace\/index\.html$/, '');
            if (navigator.platform === 'Win32')
              return base.replace(/^\//, '').replace(/\//g, '\\\\');
            return base;
          })();
          const reportLink = document.createElement('div');
          const command = `npx playwright show-report "${reportPath}"`;
          reportLink.innerHTML = `You can open the report via <code>${command}</code> from your Playwright project. <button type="button">Copy Command</button>`;
          fallbackErrorDialog.insertBefore(reportLink, fallbackErrorDialog.children[1]);
          reportLink.querySelector('button').addEventListener('click', () => navigator.clipboard.writeText(command));
        }
        fallbackErrorDialog.show();
      }
    </script>
  </body>
</html>
scripts/node_modules/playwright-core/lib/vite/traceViewer/manifest.webmanifest
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
{
    "theme_color": "#000",
    "background_color": "#fff",
    "display": "standalone",
    "start_url": "index.html",
    "name": "Playwright Trace Viewer",
    "short_name": "Trace Viewer",
    "icons": [
        {
            "src": "playwright-logo.svg",
            "sizes": "48x48 72x72 96x96 128x128 150x150 256x256 512x512 1024x1024",
            "type": "image/svg+xml",
            "purpose": "any"
        }
    ]
}
scripts/node_modules/playwright-core/lib/vite/traceViewer/playwright-logo.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
<svg width="400" height="400" viewBox="0 0 400 400" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M136.444 221.556C123.558 225.213 115.104 231.625 109.535 238.032C114.869 233.364 122.014 229.08 131.652 226.348C141.51 223.554 149.92 223.574 156.869 224.915V219.481C150.941 218.939 144.145 219.371 136.444 221.556ZM108.946 175.876L61.0895 188.484C61.0895 188.484 61.9617 189.716 63.5767 191.36L104.153 180.668C104.153 180.668 103.578 188.077 98.5847 194.705C108.03 187.559 108.946 175.876 108.946 175.876ZM149.005 288.347C81.6582 306.486 46.0272 228.438 35.2396 187.928C30.2556 169.229 28.0799 155.067 27.5 145.928C27.4377 144.979 27.4665 144.179 27.5336 143.446C24.04 143.657 22.3674 145.473 22.7077 150.721C23.2876 159.855 25.4633 174.016 30.4473 192.721C41.2301 233.225 76.8659 311.273 144.213 293.134C158.872 289.185 169.885 281.992 178.152 272.81C170.532 279.692 160.995 285.112 149.005 288.347ZM161.661 128.11V132.903H188.077C187.535 131.206 186.989 129.677 186.447 128.11H161.661Z" fill="#2D4552"/>
<path d="M193.981 167.584C205.861 170.958 212.144 179.287 215.465 186.658L228.711 190.42C228.711 190.42 226.904 164.623 203.57 157.995C181.741 151.793 168.308 170.124 166.674 172.496C173.024 167.972 182.297 164.268 193.981 167.584ZM299.422 186.777C277.573 180.547 264.145 198.916 262.535 201.255C268.89 196.736 278.158 193.031 289.837 196.362C301.698 199.741 307.976 208.06 311.307 215.436L324.572 219.212C324.572 219.212 322.736 193.41 299.422 186.777ZM286.262 254.795L176.072 223.99C176.072 223.99 177.265 230.038 181.842 237.869L274.617 263.805C282.255 259.386 286.262 254.795 286.262 254.795ZM209.867 321.102C122.618 297.71 133.166 186.543 147.284 133.865C153.097 112.156 159.073 96.0203 164.029 85.204C161.072 84.5953 158.623 86.1529 156.203 91.0746C150.941 101.747 144.212 119.124 137.7 143.45C123.586 196.127 113.038 307.29 200.283 330.682C241.406 341.699 273.442 324.955 297.323 298.659C274.655 319.19 245.714 330.701 209.867 321.102Z" fill="#2D4552"/>
<path d="M161.661 262.296V239.863L99.3324 257.537C99.3324 257.537 103.938 230.777 136.444 221.556C146.302 218.762 154.713 218.781 161.661 220.123V128.11H192.869C189.471 117.61 186.184 109.526 183.423 103.909C178.856 94.612 174.174 100.775 163.545 109.665C156.059 115.919 137.139 129.261 108.668 136.933C80.1966 144.61 57.179 142.574 47.5752 140.911C33.9601 138.562 26.8387 135.572 27.5049 145.928C28.0847 155.062 30.2605 169.224 35.2445 187.928C46.0272 228.433 81.663 306.481 149.01 288.342C166.602 283.602 179.019 274.233 187.626 262.291H161.661V262.296ZM61.0848 188.484L108.946 175.876C108.946 175.876 107.551 194.288 89.6087 199.018C71.6614 203.743 61.0848 188.484 61.0848 188.484Z" fill="#E2574C"/>
<path d="M341.786 129.174C329.345 131.355 299.498 134.072 262.612 124.185C225.716 114.304 201.236 97.0224 191.537 88.8994C177.788 77.3834 171.74 69.3802 165.788 81.4857C160.526 92.163 153.797 109.54 147.284 133.866C133.171 186.543 122.623 297.706 209.867 321.098C297.093 344.47 343.53 242.92 357.644 190.238C364.157 165.917 367.013 147.5 367.799 135.625C368.695 122.173 359.455 126.078 341.786 129.174ZM166.497 172.756C166.497 172.756 180.246 151.372 203.565 158C226.899 164.628 228.706 190.425 228.706 190.425L166.497 172.756ZM223.42 268.713C182.403 256.698 176.077 223.99 176.077 223.99L286.262 254.796C286.262 254.791 264.021 280.578 223.42 268.713ZM262.377 201.495C262.377 201.495 276.107 180.126 299.422 186.773C322.736 193.411 324.572 219.208 324.572 219.208L262.377 201.495Z" fill="#2EAD33"/>
<path d="M139.88 246.04L99.3324 257.532C99.3324 257.532 103.737 232.44 133.607 222.496L110.647 136.33L108.663 136.933C80.1918 144.611 57.1742 142.574 47.5704 140.911C33.9554 138.563 26.834 135.572 27.5001 145.929C28.08 155.063 30.2557 169.224 35.2397 187.929C46.0225 228.433 81.6583 306.481 149.005 288.342L150.989 287.719L139.88 246.04ZM61.0848 188.485L108.946 175.876C108.946 175.876 107.551 194.288 89.6087 199.018C71.6615 203.743 61.0848 188.485 61.0848 188.485Z" fill="#D65348"/>
<path d="M225.27 269.163L223.415 268.712C182.398 256.698 176.072 223.99 176.072 223.99L232.89 239.872L262.971 124.281L262.607 124.185C225.711 114.304 201.232 97.0224 191.532 88.8994C177.783 77.3834 171.735 69.3802 165.783 81.4857C160.526 92.163 153.797 109.54 147.284 133.866C133.171 186.543 122.623 297.706 209.867 321.097L211.655 321.5L225.27 269.163ZM166.497 172.756C166.497 172.756 180.246 151.372 203.565 158C226.899 164.628 228.706 190.425 228.706 190.425L166.497 172.756Z" fill="#1D8D22"/>
<path d="M141.946 245.451L131.072 248.537C133.641 263.019 138.169 276.917 145.276 289.195C146.513 288.922 147.74 288.687 149 288.342C152.302 287.451 155.364 286.348 158.312 285.145C150.371 273.361 145.118 259.789 141.946 245.451ZM137.7 143.451C132.112 164.307 127.113 194.326 128.489 224.436C130.952 223.367 133.554 222.371 136.444 221.551L138.457 221.101C136.003 188.939 141.308 156.165 147.284 133.866C148.799 128.225 150.318 122.978 151.832 118.085C149.393 119.637 146.767 121.228 143.776 122.867C141.759 129.093 139.722 135.898 137.7 143.451Z" fill="#C04B41"/>
</svg>
scripts/node_modules/playwright-core/lib/vite/traceViewer/snapshot.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
  <script type="module" crossorigin src="./snapshot.v8KI4P3m.js"></script>
  <link rel="modulepreload" crossorigin href="./assets/urlMatch-BYQrIQwR.js">
  <body>
    <iframe src="about:blank" sandbox="allow-same-origin allow-scripts" style="position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;border:none;"></iframe>
  </body>
</html>
scripts/node_modules/playwright-core/lib/vite/traceViewer/snapshot.v8KI4P3m.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,2 @@
import{i as c}from"./assets/urlMatch-BYQrIQwR.js";(async()=>{if(!navigator.serviceWorker)throw new Error(`Service workers are not supported.
Make sure to serve the Trace Viewer (${window.location}) via HTTPS or localhost.`);navigator.serviceWorker.register("sw.bundle.js"),navigator.serviceWorker.controller||await new Promise(t=>navigator.serviceWorker.oncontrollerchange=t);const e=new URL(location.href).searchParams.get("trace"),o=new URLSearchParams;e&&o.set("trace",e),await fetch("contexts?"+o.toString());const r=new URLSearchParams(location.search).get("r");if(!r||!c(r,location.href))return;const a=document.querySelector("iframe");a&&(a.src=r)})();
scripts/node_modules/playwright-core/lib/vite/traceViewer/sw.bundle.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
class Xs{constructor(t,e){this._snapshotIds=new Map,this._snapshotStorage=t,this._resourceLoader=e}serveSnapshot(t,e,n){const r=this._snapshot(t,e);if(!r)return new Response(null,{status:404});const i=r.render();return this._snapshotIds.set(n,r),new Response(i.html,{status:200,headers:{"Content-Type":"text/html; charset=utf-8"}})}async serveClosestScreenshot(t,e){const n=this._snapshot(t,e),r=n==null?void 0:n.closestScreenshot();return r?new Response(await this._resourceLoader(r)):new Response(null,{status:404})}serveSnapshotInfo(t,e){const n=this._snapshot(t,e);return this._respondWithJson(n?{viewport:n.viewport(),url:n.snapshot().frameUrl,timestamp:n.snapshot().timestamp,wallTime:n.snapshot().wallTime}:{error:"No snapshot found"})}_snapshot(t,e){const n=e.get("name");return this._snapshotStorage.snapshotByName(t,n)}_respondWithJson(t){return new Response(JSON.stringify(t),{status:200,headers:{"Cache-Control":"public, max-age=31536000","Content-Type":"application/json"}})}async serveResource(t,e,n){let r;const i=this._snapshotIds.get(n);for(const T of t)if(r=i==null?void 0:i.resourceByUrl($s(T),e),r)break;if(!r)return new Response(null,{status:404});const a=r.response.content._sha1,o=a?await this._resourceLoader(a)||new Blob([]):new Blob([]);let c=r.response.content.mimeType;/^text\/|^application\/(javascript|json)/.test(c)&&!c.includes("charset")&&(c=`${c}; charset=utf-8`);const d=new Headers;c!=="x-unknown"&&d.set("Content-Type",c);for(const{name:T,value:A}of r.response.headers)d.set(T,A);d.delete("Content-Encoding"),d.delete("Access-Control-Allow-Origin"),d.set("Access-Control-Allow-Origin","*"),d.delete("Content-Length"),d.set("Content-Length",String(o.size)),this._snapshotStorage.hasResourceOverride(r.request.url)?d.set("Cache-Control","no-store, no-cache, max-age=0"):d.set("Cache-Control","public, max-age=31536000");const{status:m}=r.response,w=m===101||m===204||m===205||m===304;return new Response(w?null:o,{headers:d,status:r.response.status,statusText:r.response.statusText})}}function $s(s){try{const t=new URL(s);return t.hash="",t.toString()}catch{return s}}function Js(s){const t=new Map,{files:e,stacks:n}=s;for(const r of n){const[i,a]=r;t.set(`call@${i}`,a.map(o=>({file:e[o[0]],line:o[1],column:o[2],function:o[3]})))}return t}const Un={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function Qs(s){return s.replace(/[&<>"']/ug,t=>Un[t])}function zs(s){return s.replace(/[&<]/ug,t=>Un[t])}function Mt(s,t,e){return s.find((n,r)=>{if(r===s.length-1)return!0;const i=s[r+1];return Math.abs(t(n)-e)<Math.abs(t(i)-e)})}function Hn(s){return Array.isArray(s)&&typeof s[0]=="string"}function er(s){return Array.isArray(s)&&Array.isArray(s[0])}class tr{constructor(t,e,n,r,i){this._htmlCache=t,this._resources=e,this._snapshots=n,this._index=i,this._snapshot=n[i],this._callId=n[i].callId,this._screencastFrames=r,this.snapshotName=n[i].snapshotName}snapshot(){return this._snapshots[this._index]}viewport(){return this._snapshots[this._index].viewport}closestScreenshot(){var r;const{wallTime:t,timestamp:e}=this.snapshot(),n=t&&((r=this._screencastFrames[0])!=null&&r.frameSwapWallTime)?Mt(this._screencastFrames,i=>i.frameSwapWallTime,t):Mt(this._screencastFrames,i=>i.timestamp,e);return n==null?void 0:n.sha1}render(){const t=[],e=(i,a,o,c)=>{if(typeof i=="string"){o==="STYLE"||o==="style"?t.push(fr(or(i))):t.push(zs(i));return}if(er(i)){const h=a-i[0][0];if(h>=0&&h<=a){const d=rr(this._snapshots[h]),m=i[0][1];if(m>=0&&m<d.length)return e(d[m],h,o,c)}}else if(Hn(i)){const[h,d,...m]=i;if(h.toUpperCase()==="SCRIPT")return;const w=h.toUpperCase(),T=w==="NOSCRIPT"?"X-NOSCRIPT":h,A=Object.entries(d||{});t.push("<",T);const u="__playwright_current_src__",l=w==="IFRAME"||w==="FRAME",f=w==="A",p=w==="IMG",g=w==="META",C=p&&A.some(_=>_[0]===u),O=w==="SOURCE"&&o==="PICTURE"&&(c==null?void 0:c.some(_=>_[0]===u)),b=g&&A.some(_=>_[0].toLowerCase()==="http-equiv"&&!sr.has(_[1].trim().toLowerCase()));for(const[_,E]of A){let y=_;if(_.toLowerCase().startsWith("on"))continue;l&&_.toLowerCase()==="src"&&(y="__playwright_src__"),l&&(_.toLowerCase()==="srcdoc"||_.toLowerCase()==="sandbox")&&(y="__playwright_"+_.toLowerCase()+"__"),w==="OBJECT"&&_.toLowerCase()==="data"&&(y="__playwright_data__"),w==="EMBED"&&_.toLowerCase()==="src"&&(y="__playwright_src__"),p&&_===u&&(y="src"),["src","srcset"].includes(_.toLowerCase())&&(C||O)&&(y="_"+y),b&&(_.toLowerCase()==="http-equiv"||_.toLowerCase()==="content")&&(y="_"+_);let x=E;!f&&(_.toLowerCase()==="href"||_.toLowerCase()==="src"||_===u)&&(x=lt(E)),t.push(" ",y,'="',Qs(x),'"')}t.push(">");for(const _ of m)e(_,a,T,A);nr.has(T)||t.push("</",T,">");return}else return},n=this._snapshot;return{html:this._htmlCache.getOrCompute(this,()=>{var c;e(n.html,this._index,void 0,void 0);const i=(c=n.doctype)==null?void 0:c.replace(/[^a-zA-Z0-9]/g,""),o=(i?`<!DOCTYPE ${i}>`:"")+["<style>*,*::before,*::after { visibility: hidden }</style>",`<script>${ir(this.viewport(),this._callId,this.snapshotName)}<\/script>`].join("")+t.join("");return{value:o,size:o.length}}),pageId:n.pageId,frameId:n.frameId,index:this._index}}resourceByUrl(t,e){const n=this._snapshot;let r,i;for(const o of this._resources){if(typeof o._monotonicTime=="number"&&o._monotonicTime>=n.timestamp)break;o.response.status!==304&&o.request.url===t&&o.request.method===e&&(o._frameref===n.frameId?r=o:i=o)}let a=r??i;if(a&&e.toUpperCase()==="GET"){let o=n.resourceOverrides.find(c=>c.url===t);if(o!=null&&o.ref){const c=this._index-o.ref;c>=0&&c<this._snapshots.length&&(o=this._snapshots[c].resourceOverrides.find(h=>h.url===t))}o!=null&&o.sha1&&(a={...a,response:{...a.response,content:{...a.response.content,_sha1:o.sha1}}})}return a}}const nr=new Set(["AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","MENUITEM","META","PARAM","SOURCE","TRACK","WBR"]),sr=new Set(["content-type","content-language","default-style","x-ua-compatible"]);function rr(s){if(!s._nodes){const t=[],e=n=>{if(typeof n=="string")t.push(n);else if(Hn(n)){const[,,...r]=n;for(const i of r)e(i);t.push(n)}};e(s.html),s._nodes=t}return s._nodes}function ir(s,...t){function e(r,i,...a){const o=window,c=new URLSearchParams(o.location.search),h=c.has("shouldPopulateCanvasFromScreenshot"),d=c.has("isUnderTest"),m={viewport:i,frames:new WeakMap};o.__playwright_frame_bounding_rects__=m;const w="Recorded click position in absolute coordinates did not match the center of the clicked element. This is either due to the use of provided offset, or due to a difference between the test runner and the trace viewer operating systems.",T=[],A=[],u=[],l=[];let f=o;for(;f!==f.parent&&!f.location.pathname.match(/\/page@[a-z0-9]+$/);)f=f.parent;const p=O=>{for(const _ of O.querySelectorAll("[__playwright_scroll_top_]"))T.push(_);for(const _ of O.querySelectorAll("[__playwright_scroll_left_]"))A.push(_);for(const _ of O.querySelectorAll("[__playwright_value_]")){const E=_;E.type!=="file"&&(E.value=E.getAttribute("__playwright_value_")),_.removeAttribute("__playwright_value_")}for(const _ of O.querySelectorAll("[__playwright_checked_]"))_.checked=_.getAttribute("__playwright_checked_")==="true",_.removeAttribute("__playwright_checked_");for(const _ of O.querySelectorAll("[__playwright_selected_]"))_.selected=_.getAttribute("__playwright_selected_")==="true",_.removeAttribute("__playwright_selected_");for(const _ of O.querySelectorAll("[__playwright_popover_open_]")){try{_.showPopover()}catch{}_.removeAttribute("__playwright_popover_open_")}for(const _ of O.querySelectorAll("[__playwright_dialog_open_]")){try{_.getAttribute("__playwright_dialog_open_")==="modal"?_.showModal():_.show()}catch{}_.removeAttribute("__playwright_dialog_open_")}const b=_=>{const E=_.style;E.outline="2px solid #006ab1",E.backgroundColor="#6fa8dc7f",u.push(_)};for(const _ of O.querySelectorAll('[__playwright_target__=""]'))b(_);for(const _ of a)if(_)for(const E of O.querySelectorAll(`[__playwright_target__="${_}"]`))b(E);for(const _ of O.querySelectorAll("iframe, frame")){const E=_.getAttribute("__playwright_bounding_rect__");_.removeAttribute("__playwright_bounding_rect__");const y=E?JSON.parse(E):void 0;y&&m.frames.set(_,{boundingRect:y,scrollLeft:0,scrollTop:0});const x=_.getAttribute("__playwright_src__");if(!x)_.setAttribute("src",r);else{const S=new URL(o.location.href),I=S.pathname.lastIndexOf("/snapshot/");I!==-1&&(S.pathname=S.pathname.substring(0,I+1)),S.pathname+=x.substring(1),_.setAttribute("src",S.toString())}}{const _=O.querySelector("body[__playwright_custom_elements__]");if(_&&o.customElements){const E=(_.getAttribute("__playwright_custom_elements__")||"").split(",");for(const y of E)o.customElements.define(y,class extends HTMLElement{})}}for(const _ of O.querySelectorAll("template[__playwright_shadow_root_]")){const E=_,y=E.parentElement.attachShadow({mode:"open"});y.appendChild(E.content),E.remove(),p(y)}for(const _ of O.querySelectorAll("a"))_.addEventListener("click",E=>{E.preventDefault()});if("adoptedStyleSheets"in O){const _=[...O.adoptedStyleSheets];for(const E of O.querySelectorAll("template[__playwright_style_sheet_]")){const y=E,x=new CSSStyleSheet;x.replaceSync(y.getAttribute("__playwright_style_sheet_")),_.push(x)}O.adoptedStyleSheets=_}l.push(...O.querySelectorAll("canvas"))},g=()=>{o.removeEventListener("load",g);for(const _ of T)_.scrollTop=+_.getAttribute("__playwright_scroll_top_"),_.removeAttribute("__playwright_scroll_top_"),m.frames.has(_)&&(m.frames.get(_).scrollTop=_.scrollTop);for(const _ of A)_.scrollLeft=+_.getAttribute("__playwright_scroll_left_"),_.removeAttribute("__playwright_scroll_left_"),m.frames.has(_)&&(m.frames.get(_).scrollLeft=_.scrollLeft);o.document.styleSheets[0].disabled=!0;const O=new URL(o.location.href).searchParams;if(o===f&&O.get("pointX")&&O.get("pointY")){const _=+O.get("pointX"),E=+O.get("pointY"),y=o.document.createElement("x-pw-pointer");y.style.position="fixed",y.style.backgroundColor="#f44336",y.style.width="20px",y.style.height="20px",y.style.borderRadius="10px",y.style.margin="-10px 0 0 -10px",y.style.zIndex="2147483646",y.style.display="flex",y.style.alignItems="center",y.style.justifyContent="center";const x=u[0],S=x==null?void 0:x.getBoundingClientRect(),I=x?{x:S.left+S.width/2,y:S.top+S.height/2}:null;if(y.style.left=((I==null?void 0:I.x)??_)+"px",y.style.top=((I==null?void 0:I.y)??E)+"px",!(!I||Math.abs(I.x-_)<=10&&Math.abs(I.y-E)<=10)){const D=o.document.createElement("x-pw-pointer-warning");D.textContent="⚠",D.style.fontSize="19px",D.style.color="white",D.style.marginTop="-3.5px",D.style.userSelect="none",y.appendChild(D),y.setAttribute("title",w)}o.document.documentElement.appendChild(y)}if(l.length>0){let _=function(y,x){function S(){const I=o.document.createElement("canvas");I.width=I.width/Math.floor(I.width/24),I.height=I.height/Math.floor(I.height/24);const R=I.getContext("2d");return R.fillStyle="lightgray",R.fillRect(0,0,I.width,I.height),R.fillStyle="white",R.fillRect(0,0,I.width/2,I.height/2),R.fillRect(I.width/2,I.height/2,I.width,I.height),R.createPattern(I,"repeat")}y.fillStyle=S(),y.fillRect(0,0,x.width,x.height)};const E=new Image;E.onload=()=>{var y;for(const x of l){const S=x.getContext("2d"),I=x.getAttribute("__playwright_bounding_rect__");if(x.removeAttribute("__playwright_bounding_rect__"),!I)continue;let R;try{R=JSON.parse(I)}catch{continue}let D=o;for(;D!==f;){const q=D.frameElement;D=D.parent;const N=(y=D.__playwright_frame_bounding_rects__)==null?void 0:y.frames.get(q);if(!(N!=null&&N.boundingRect))break;const K=N.boundingRect.left-N.scrollLeft,L=N.boundingRect.top-N.scrollTop;R.left+=K,R.top+=L,R.right+=K,R.bottom+=L}const{width:k,height:P}=f.__playwright_frame_bounding_rects__.viewport;R.left=R.left/k,R.top=R.top/P,R.right=R.right/k,R.bottom=R.bottom/P;const U=R.right>1||R.bottom>1;if(R.left>1||R.top>1){x.title="Playwright couldn't capture canvas contents because it's located outside the viewport.";continue}_(S,x),h?(S.drawImage(E,R.left*E.width,R.top*E.height,(R.right-R.left)*E.width,(R.bottom-R.top)*E.height,0,0,x.width,x.height),U?x.title="Playwright couldn't capture full canvas contents because it's located partially outside the viewport.":x.title="Canvas contents are displayed on a best-effort basis based on viewport screenshots taken during test execution."):x.title="Canvas content display is disabled.",d&&console.log("canvas drawn:",JSON.stringify([R.left,R.top,R.right-R.left,R.bottom-R.top].map(q=>Math.floor(q*100))))}},E.onerror=()=>{for(const y of l){const x=y.getContext("2d");_(x,y),y.title="Playwright couldn't show canvas contents because the screenshot failed to load."}},E.src=location.href.replace("/snapshot","/closest-screenshot")}},C=()=>p(o.document);o.addEventListener("load",g),o.addEventListener("DOMContentLoaded",C)}const n=r=>JSON.stringify(r).replace(/</g,"\\u003c");return`
(${e.toString()})(${n(ur)},${n(s)}${t.map(r=>`, ${n(String(r))}`).join("")})`}const Wn=["about:","blob:","data:","file:","ftp:","http:","https:","mailto:","sftp:","ws:","wss:"],Ut="http://playwright.bloburl/#";function lt(s){s.startsWith(Ut)&&(s=s.substring(Ut.length));try{const t=new URL(s);if(t.protocol==="javascript:"||t.protocol==="vbscript:")return"javascript:void(0)";const e=t.protocol==="blob:",n=t.protocol==="file:";if(!e&&!n&&Wn.includes(t.protocol))return s;const r="pw-"+t.protocol.slice(0,t.protocol.length-1);return n||(t.protocol="https:"),t.hostname=t.hostname?`${r}--${t.hostname}`:r,n&&(t.protocol="https:"),t.toString()}catch{return s}}const ar=/url\(['"]?([\w-]+:)\/\//ig;function or(s){return s.replace(ar,(t,e)=>!(e==="blob:")&&!(e==="file:")&&Wn.includes(e)?t:t.replace(e+"//",`https://pw-${e.slice(0,-1)}--`))}const cr=/url\(\s*'([^']*)'\s*\)/ig,lr=/url\(\s*"([^"]*)"\s*\)/ig;function fr(s){const t=(e,n)=>n.includes("</")?e.replace(n,encodeURI(n)):e;return s.replace(cr,t).replace(lr,t)}const ur="data:text/html;base64,"+btoa("<body></body><style>body { color-scheme: light dark; background: light-dark(white, #333) }</style>");class dr{constructor(t){this._maxSize=t,this._map=new Map,this._size=0}getOrCompute(t,e){if(this._map.has(t)){const r=this._map.get(t);return this._map.delete(t),this._map.set(t,r),r.value}const n=e();for(;this._map.size&&this._size+n.size>this._maxSize;){const[r,i]=this._map.entries().next().value;this._size-=i.size,this._map.delete(r)}return this._map.set(t,n),this._size+=n.size,n.value}}class _r{constructor(){this._frameSnapshots=new Map,this._cache=new dr(1e8),this._contextToResources=new Map,this._resourceUrlsWithOverrides=new Set}addResource(t,e){e.request.url=lt(e.request.url),this._ensureResourcesForContext(t).push(e)}addFrameSnapshot(t,e,n){for(const o of e.resourceOverrides)o.url=lt(o.url);let r=this._frameSnapshots.get(e.frameId);r||(r={raw:[],renderers:[]},this._frameSnapshots.set(e.frameId,r),e.isMainFrame&&this._frameSnapshots.set(e.pageId,r)),r.raw.push(e);const i=this._ensureResourcesForContext(t),a=new tr(this._cache,i,r.raw,n,r.raw.length-1);return r.renderers.push(a),a}snapshotByName(t,e){const n=this._frameSnapshots.get(t);return n==null?void 0:n.renderers.find(r=>r.snapshotName===e)}snapshotsForTest(){return[...this._frameSnapshots.keys()]}finalize(){for(const t of this._contextToResources.values())t.sort((e,n)=>(e._monotonicTime||0)-(n._monotonicTime||0));for(const t of this._frameSnapshots.values())for(const e of t.raw)for(const n of e.resourceOverrides)this._resourceUrlsWithOverrides.add(n.url)}hasResourceOverride(t){return this._resourceUrlsWithOverrides.has(t)}_ensureResourcesForContext(t){let e=this._contextToResources.get(t);return e||(e=[],this._contextToResources.set(t,e)),e}}class Bn extends Error{constructor(t){super(t),this.name="TraceVersionError"}}const Ht=8;class hr{constructor(t,e){this._actionMap=new Map,this._pageEntries=new Map,this._jsHandles=new Map,this._consoleObjects=new Map,this._contextEntry=t,this._snapshotStorage=e}appendTrace(t){for(const e of t.split(`
`))this._appendEvent(e)}actions(){return[...this._actionMap.values()]}_pageEntry(t){let e=this._pageEntries.get(t);return e||(e={pageId:t,screencastFrames:[]},this._pageEntries.set(t,e),this._contextEntry.pages.push(e)),e}_appendEvent(t){if(!t)return;const e=this._modernize(JSON.parse(t));for(const n of e)this._innerAppendEvent(n)}_innerAppendEvent(t){const e=this._contextEntry;switch(t.type){case"context-options":{if(t.version>Ht)throw new Bn("The trace was created by a newer version of Playwright and is not supported by this version of the viewer. Please use latest Playwright to open the trace.");this._version=t.version,e.origin=t.origin,e.browserName=t.browserName,e.channel=t.channel,e.title=t.title,e.platform=t.platform,e.playwrightVersion=t.playwrightVersion,e.wallTime=t.wallTime,e.startTime=t.monotonicTime,e.sdkLanguage=t.sdkLanguage,e.options=t.options,e.testIdAttributeName=t.testIdAttributeName,e.contextId=t.contextId??"",e.testTimeout=t.testTimeout;break}case"screencast-frame":{this._pageEntry(t.pageId).screencastFrames.push(t);break}case"before":{this._actionMap.set(t.callId,{...t,type:"action",endTime:0,log:[]});break}case"input":{const n=this._actionMap.get(t.callId);n.inputSnapshot=t.inputSnapshot,n.point=t.point;break}case"log":{const n=this._actionMap.get(t.callId);if(!n)return;n.log.push({time:t.time,message:t.message});break}case"after":{const n=this._actionMap.get(t.callId);n.afterSnapshot=t.afterSnapshot,n.endTime=t.endTime,n.result=t.result,n.error=t.error,n.attachments=t.attachments,n.annotations=t.annotations,t.point&&(n.point=t.point);break}case"action":{this._actionMap.set(t.callId,{...t,log:[]});break}case"event":{e.events.push(t);break}case"stdout":{e.stdio.push(t);break}case"stderr":{e.stdio.push(t);break}case"error":{e.errors.push(t);break}case"console":{e.events.push(t);break}case"resource-snapshot":this._snapshotStorage.addResource(this._contextEntry.contextId,t.snapshot),e.resources.push(t.snapshot);break;case"frame-snapshot":this._snapshotStorage.addFrameSnapshot(this._contextEntry.contextId,t.snapshot,this._pageEntry(t.snapshot.pageId).screencastFrames);break}"pageId"in t&&t.pageId&&this._pageEntry(t.pageId),(t.type==="action"||t.type==="before")&&(e.startTime=Math.min(e.startTime,t.startTime)),(t.type==="action"||t.type==="after")&&(e.endTime=Math.max(e.endTime,t.endTime)),t.type==="event"&&(e.startTime=Math.min(e.startTime,t.time),e.endTime=Math.max(e.endTime,t.time)),t.type==="screencast-frame"&&(e.startTime=Math.min(e.startTime,t.timestamp),e.endTime=Math.max(e.endTime,t.timestamp))}_processedContextCreatedEvent(){return this._version!==void 0}_modernize(t){let e=this._version??t.version??6,n=[t];for(;e<Ht;++e)n=this[`_modernize_${e}_to_${e+1}`].call(this,n);return n}_modernize_0_to_1(t){for(const e of t)e.type==="action"&&typeof e.metadata.error=="string"&&(e.metadata.error={error:{name:"Error",message:e.metadata.error}});return t}_modernize_1_to_2(t){var e;for(const n of t)n.type!=="frame-snapshot"||!n.snapshot.isMainFrame||(n.snapshot.viewport=((e=this._contextEntry.options)==null?void 0:e.viewport)||{width:1280,height:720});return t}_modernize_2_to_3(t){for(const e of t){if(e.type!=="resource-snapshot"||e.snapshot.request)continue;const n=e.snapshot;e.snapshot={_frameref:n.frameId,request:{url:n.url,method:n.method,headers:n.requestHeaders,postData:n.requestSha1?{_sha1:n.requestSha1}:void 0},response:{status:n.status,headers:n.responseHeaders,content:{mimeType:n.contentType,_sha1:n.responseSha1}},_monotonicTime:n.timestamp}}return t}_modernize_3_to_4(t){const e=[];for(const n of t){const r=this._modernize_event_3_to_4(n);r&&e.push(r)}return e}_modernize_event_3_to_4(t){var n,r,i,a;if(t.type!=="action"&&t.type!=="event")return t;const e=t.metadata;return e.internal||e.method.startsWith("tracing")?null:t.type==="event"?e.method==="__create__"&&e.type==="ConsoleMessage"?{type:"object",class:e.type,guid:e.params.guid,initializer:e.params.initializer}:{type:"event",time:e.startTime,class:e.type,method:e.method,params:e.params,pageId:e.pageId}:{type:"action",callId:e.id,startTime:e.startTime,endTime:e.endTime,apiName:e.apiName||e.type+"."+e.method,class:e.type,method:e.method,params:e.params,wallTime:e.wallTime||Date.now(),log:e.log,beforeSnapshot:(n=e.snapshots.find(o=>o.title==="before"))==null?void 0:n.snapshotName,inputSnapshot:(r=e.snapshots.find(o=>o.title==="input"))==null?void 0:r.snapshotName,afterSnapshot:(i=e.snapshots.find(o=>o.title==="after"))==null?void 0:i.snapshotName,error:(a=e.error)==null?void 0:a.error,result:e.result,point:e.point,pageId:e.pageId}}_modernize_4_to_5(t){const e=[];for(const n of t){const r=this._modernize_event_4_to_5(n);r&&e.push(r)}return e}_modernize_event_4_to_5(t){var e,n;if(t.type==="event"&&t.method==="__create__"&&t.class==="JSHandle"&&this._jsHandles.set(t.params.guid,t.params.initializer),t.type==="object"){if(t.class!=="ConsoleMessage")return null;const r=(e=t.initializer.args)==null?void 0:e.map(i=>{if(i.guid){const a=this._jsHandles.get(i.guid);return{preview:(a==null?void 0:a.preview)||"",value:""}}return{preview:i.preview||"",value:i.value||""}});return this._consoleObjects.set(t.guid,{type:t.initializer.type,text:t.initializer.text,location:t.initializer.location,args:r}),null}if(t.type==="event"&&t.method==="console"){const r=this._consoleObjects.get(((n=t.params.message)==null?void 0:n.guid)||"");return r?{type:"console",time:t.time,pageId:t.pageId,messageType:r.type,text:r.text,args:r.args,location:r.location}:null}return t}_modernize_5_to_6(t){const e=[];for(const n of t)if(e.push(n),!(n.type!=="after"||!n.log.length))for(const r of n.log)e.push({type:"log",callId:n.callId,message:r,time:-1});return e}_modernize_6_to_7(t){const e=[];if(!this._processedContextCreatedEvent()&&t[0].type!=="context-options"){const n={type:"context-options",origin:"testRunner",version:6,browserName:"",options:{},platform:"unknown",wallTime:0,monotonicTime:0,sdkLanguage:"javascript",contextId:""};e.push(n)}for(const n of t){if(n.type==="context-options"){e.push({...n,monotonicTime:0,origin:"library",contextId:""});continue}if(n.type==="before"||n.type==="action"){this._contextEntry.wallTime||(this._contextEntry.wallTime=n.wallTime);const r=n,i=n;i.stepId=`${r.apiName}@${r.wallTime}`,e.push(i)}else e.push(n)}return e}_modernize_7_to_8(t){const e=[];for(const n of t)if(n.type==="before"||n.type==="action"){const r=n,i=n;r.apiName&&(i.title=r.apiName,delete i.apiName),i.stepId=r.stepId??r.callId,e.push(i)}else e.push(n);return e}}class pr{constructor(){this.contextEntries=[],this._resourceToContentType=new Map}async load(t,e,n){var h,d,m;this._backend=t;const r=(h=e==null?void 0:e.match(/(.+)\.trace$/))==null?void 0:h[1],i=[];let a=!1;for(const w of await this._backend.entryNames()){const T=w.match(/(.+)\.trace$/);T&&(!r||r===T[1])&&i.push(T[1]||""),w.includes("src@")&&(a=!0)}if(!i.length)throw new Error("Cannot find .trace file");this._snapshotStorage=new _r;const o=i.length*3;let c=0;for(const w of i){const T=mr();T.hasSource=a;const A=new hr(T,this._snapshotStorage),u=await this._backend.readText(w+".trace")||"";A.appendTrace(u),n==null||n(++c,o);const l=await this._backend.readText(w+".network")||"";if(A.appendTrace(l),n==null||n(++c,o),T.actions=A.actions().sort((p,g)=>p.startTime-g.startTime),!t.isLive()){for(const p of T.actions.slice().reverse())if(!p.endTime&&!p.error)for(const g of T.actions)g.parentId===p.callId&&p.endTime<g.endTime&&(p.endTime=g.endTime)}const f=await this._backend.readText(w+".stacks");if(f){const p=Js(JSON.parse(f));for(const g of T.actions)g.stack=g.stack||p.get(g.callId)}n==null||n(++c,o);for(const p of T.resources)(d=p.request.postData)!=null&&d._sha1&&this._resourceToContentType.set(p.request.postData._sha1,Wt(p.request.postData.mimeType)),(m=p.response.content)!=null&&m._sha1&&this._resourceToContentType.set(p.response.content._sha1,Wt(p.response.content.mimeType));this.contextEntries.push(T)}this._snapshotStorage.finalize()}async hasEntry(t){return this._backend.hasEntry(t)}async resourceForSha1(t){const e=await this._backend.readBlob("resources/"+t),n=this._resourceToContentType.get(t);return!e||n===void 0||n==="x-unknown"?e:new Blob([e],{type:n})}storage(){return this._snapshotStorage}}function Wt(s){const t=s.match(/^(.*);\s*charset=.*$/);return t?t[1]:s}function mr(){return{origin:"testRunner",startTime:Number.MAX_SAFE_INTEGER,wallTime:Number.MAX_SAFE_INTEGER,endTime:0,browserName:"",options:{deviceScaleFactor:1,isMobile:!1,viewport:{width:1280,height:800}},pages:[],resources:[],actions:[],events:[],errors:[],stdio:[],hasSource:!1,contextId:""}}function wr(s,t){const e=new Array(t.length).fill(0);return new Array(t.length).fill(0).map((n,r)=>(i,a)=>{e[r]=i/a*t[r]*1e3,s(e.reduce((o,c)=>o+c,0),1e3)})}const gr=15,v=0,ne=1,br=2,X=-2,W=-3,Bt=-4,se=-5,$=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],jn=1440,yr=0,Er=4,xr=9,Tr=5,Sr=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],Rr=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],Ar=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],Or=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],Cr=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],Ir=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],ie=15;function ft(){const s=this;let t,e,n,r,i,a;function o(h,d,m,w,T,A,u,l,f,p,g){let C,O,b,_,E,y,x,S,I,R,D,k,P,U,F;R=0,E=m;do n[h[d+R]]++,R++,E--;while(E!==0);if(n[0]==m)return u[0]=-1,l[0]=0,v;for(S=l[0],y=1;y<=ie&&n[y]===0;y++);for(x=y,S<y&&(S=y),E=ie;E!==0&&n[E]===0;E--);for(b=E,S>E&&(S=E),l[0]=S,U=1<<y;y<E;y++,U<<=1)if((U-=n[y])<0)return W;if((U-=n[E])<0)return W;for(n[E]+=U,a[1]=y=0,R=1,P=2;--E!==0;)a[P]=y+=n[R],P++,R++;E=0,R=0;do(y=h[d+R])!==0&&(g[a[y]++]=E),R++;while(++E<m);for(m=a[b],a[0]=E=0,R=0,_=-1,k=-S,i[0]=0,D=0,F=0;x<=b;x++)for(C=n[x];C--!==0;){for(;x>k+S;){if(_++,k+=S,F=b-k,F=F>S?S:F,(O=1<<(y=x-k))>C+1&&(O-=C+1,P=x,y<F))for(;++y<F&&!((O<<=1)<=n[++P]);)O-=n[P];if(F=1<<y,p[0]+F>jn)return W;i[_]=D=p[0],p[0]+=F,_!==0?(a[_]=E,r[0]=y,r[1]=S,y=E>>>k-S,r[2]=D-i[_-1]-y,f.set(r,(i[_-1]+y)*3)):u[0]=D}for(r[1]=x-k,R>=m?r[0]=192:g[R]<w?(r[0]=g[R]<256?0:96,r[2]=g[R++]):(r[0]=A[g[R]-w]+16+64,r[2]=T[g[R++]-w]),O=1<<x-k,y=E>>>k;y<F;y+=O)f.set(r,(D+y)*3);for(y=1<<x-1;(E&y)!==0;y>>>=1)E^=y;for(E^=y,I=(1<<k)-1;(E&I)!=a[_];)_--,k-=S,I=(1<<k)-1}return U!==0&&b!=1?se:v}function c(h){let d;for(t||(t=[],e=[],n=new Int32Array(ie+1),r=[],i=new Int32Array(ie),a=new Int32Array(ie+1)),e.length<h&&(e=[]),d=0;d<h;d++)e[d]=0;for(d=0;d<ie+1;d++)n[d]=0;for(d=0;d<3;d++)r[d]=0;i.set(n.subarray(0,ie),0),a.set(n.subarray(0,ie+1),0)}s.inflate_trees_bits=function(h,d,m,w,T){let A;return c(19),t[0]=0,A=o(h,0,19,19,null,null,m,d,w,t,e),A==W?T.msg="oversubscribed dynamic bit lengths tree":(A==se||d[0]===0)&&(T.msg="incomplete dynamic bit lengths tree",A=W),A},s.inflate_trees_dynamic=function(h,d,m,w,T,A,u,l,f){let p;return c(288),t[0]=0,p=o(m,0,h,257,Ar,Or,A,w,l,t,e),p!=v||w[0]===0?(p==W?f.msg="oversubscribed literal/length tree":p!=Bt&&(f.msg="incomplete literal/length tree",p=W),p):(c(288),p=o(m,h,d,0,Cr,Ir,u,T,l,t,e),p!=v||T[0]===0&&h>257?(p==W?f.msg="oversubscribed distance tree":p==se?(f.msg="incomplete distance tree",p=W):p!=Bt&&(f.msg="empty distance tree with lengths",p=W),p):v)}}ft.inflate_trees_fixed=function(s,t,e,n){return s[0]=xr,t[0]=Tr,e[0]=Sr,n[0]=Rr,v};const He=0,jt=1,qt=2,Gt=3,Yt=4,Vt=5,Zt=6,ze=7,Kt=8,We=9;function Nr(){const s=this;let t,e=0,n,r=0,i=0,a=0,o=0,c=0,h=0,d=0,m,w=0,T,A=0;function u(l,f,p,g,C,O,b,_){let E,y,x,S,I,R,D,k,P,U,F,q,N,K,L,M;D=_.next_in_index,k=_.avail_in,I=b.bitb,R=b.bitk,P=b.write,U=P<b.read?b.read-P-1:b.end-P,F=$[l],q=$[f];do{for(;R<20;)k--,I|=(_.read_byte(D++)&255)<<R,R+=8;if(E=I&F,y=p,x=g,M=(x+E)*3,(S=y[M])===0){I>>=y[M+1],R-=y[M+1],b.win[P++]=y[M+2],U--;continue}do{if(I>>=y[M+1],R-=y[M+1],(S&16)!==0){for(S&=15,N=y[M+2]+(I&$[S]),I>>=S,R-=S;R<15;)k--,I|=(_.read_byte(D++)&255)<<R,R+=8;E=I&q,y=C,x=O,M=(x+E)*3,S=y[M];do if(I>>=y[M+1],R-=y[M+1],(S&16)!==0){for(S&=15;R<S;)k--,I|=(_.read_byte(D++)&255)<<R,R+=8;if(K=y[M+2]+(I&$[S]),I>>=S,R-=S,U-=N,P>=K)L=P-K,P-L>0&&2>P-L?(b.win[P++]=b.win[L++],b.win[P++]=b.win[L++],N-=2):(b.win.set(b.win.subarray(L,L+2),P),P+=2,L+=2,N-=2);else{L=P-K;do L+=b.end;while(L<0);if(S=b.end-L,N>S){if(N-=S,P-L>0&&S>P-L)do b.win[P++]=b.win[L++];while(--S!==0);else b.win.set(b.win.subarray(L,L+S),P),P+=S,L+=S,S=0;L=0}}if(P-L>0&&N>P-L)do b.win[P++]=b.win[L++];while(--N!==0);else b.win.set(b.win.subarray(L,L+N),P),P+=N,L+=N,N=0;break}else if((S&64)===0)E+=y[M+2],E+=I&$[S],M=(x+E)*3,S=y[M];else return _.msg="invalid distance code",N=_.avail_in-k,N=R>>3<N?R>>3:N,k+=N,D-=N,R-=N<<3,b.bitb=I,b.bitk=R,_.avail_in=k,_.total_in+=D-_.next_in_index,_.next_in_index=D,b.write=P,W;while(!0);break}if((S&64)===0){if(E+=y[M+2],E+=I&$[S],M=(x+E)*3,(S=y[M])===0){I>>=y[M+1],R-=y[M+1],b.win[P++]=y[M+2],U--;break}}else return(S&32)!==0?(N=_.avail_in-k,N=R>>3<N?R>>3:N,k+=N,D-=N,R-=N<<3,b.bitb=I,b.bitk=R,_.avail_in=k,_.total_in+=D-_.next_in_index,_.next_in_index=D,b.write=P,ne):(_.msg="invalid literal/length code",N=_.avail_in-k,N=R>>3<N?R>>3:N,k+=N,D-=N,R-=N<<3,b.bitb=I,b.bitk=R,_.avail_in=k,_.total_in+=D-_.next_in_index,_.next_in_index=D,b.write=P,W)}while(!0)}while(U>=258&&k>=10);return N=_.avail_in-k,N=R>>3<N?R>>3:N,k+=N,D-=N,R-=N<<3,b.bitb=I,b.bitk=R,_.avail_in=k,_.total_in+=D-_.next_in_index,_.next_in_index=D,b.write=P,v}s.init=function(l,f,p,g,C,O){t=He,h=l,d=f,m=p,w=g,T=C,A=O,n=null},s.proc=function(l,f,p){let g,C,O,b=0,_=0,E=0,y,x,S,I;for(E=f.next_in_index,y=f.avail_in,b=l.bitb,_=l.bitk,x=l.write,S=x<l.read?l.read-x-1:l.end-x;;)switch(t){case He:if(S>=258&&y>=10&&(l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,p=u(h,d,m,w,T,A,l,f),E=f.next_in_index,y=f.avail_in,b=l.bitb,_=l.bitk,x=l.write,S=x<l.read?l.read-x-1:l.end-x,p!=v)){t=p==ne?ze:We;break}i=h,n=m,r=w,t=jt;case jt:for(g=i;_<g;){if(y!==0)p=v;else return l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);y--,b|=(f.read_byte(E++)&255)<<_,_+=8}if(C=(r+(b&$[g]))*3,b>>>=n[C+1],_-=n[C+1],O=n[C],O===0){a=n[C+2],t=Zt;break}if((O&16)!==0){o=O&15,e=n[C+2],t=qt;break}if((O&64)===0){i=O,r=C/3+n[C+2];break}if((O&32)!==0){t=ze;break}return t=We,f.msg="invalid literal/length code",p=W,l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);case qt:for(g=o;_<g;){if(y!==0)p=v;else return l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);y--,b|=(f.read_byte(E++)&255)<<_,_+=8}e+=b&$[g],b>>=g,_-=g,i=d,n=T,r=A,t=Gt;case Gt:for(g=i;_<g;){if(y!==0)p=v;else return l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);y--,b|=(f.read_byte(E++)&255)<<_,_+=8}if(C=(r+(b&$[g]))*3,b>>=n[C+1],_-=n[C+1],O=n[C],(O&16)!==0){o=O&15,c=n[C+2],t=Yt;break}if((O&64)===0){i=O,r=C/3+n[C+2];break}return t=We,f.msg="invalid distance code",p=W,l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);case Yt:for(g=o;_<g;){if(y!==0)p=v;else return l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);y--,b|=(f.read_byte(E++)&255)<<_,_+=8}c+=b&$[g],b>>=g,_-=g,t=Vt;case Vt:for(I=x-c;I<0;)I+=l.end;for(;e!==0;){if(S===0&&(x==l.end&&l.read!==0&&(x=0,S=x<l.read?l.read-x-1:l.end-x),S===0&&(l.write=x,p=l.inflate_flush(f,p),x=l.write,S=x<l.read?l.read-x-1:l.end-x,x==l.end&&l.read!==0&&(x=0,S=x<l.read?l.read-x-1:l.end-x),S===0)))return l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);l.win[x++]=l.win[I++],S--,I==l.end&&(I=0),e--}t=He;break;case Zt:if(S===0&&(x==l.end&&l.read!==0&&(x=0,S=x<l.read?l.read-x-1:l.end-x),S===0&&(l.write=x,p=l.inflate_flush(f,p),x=l.write,S=x<l.read?l.read-x-1:l.end-x,x==l.end&&l.read!==0&&(x=0,S=x<l.read?l.read-x-1:l.end-x),S===0)))return l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);p=v,l.win[x++]=a,S--,t=He;break;case ze:if(_>7&&(_-=8,y++,E--),l.write=x,p=l.inflate_flush(f,p),x=l.write,S=x<l.read?l.read-x-1:l.end-x,l.read!=l.write)return l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);t=Kt;case Kt:return p=ne,l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);case We:return p=W,l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p);default:return p=X,l.bitb=b,l.bitk=_,f.avail_in=y,f.total_in+=E-f.next_in_index,f.next_in_index=E,l.write=x,l.inflate_flush(f,p)}},s.free=function(){}}const Xt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],we=0,et=1,$t=2,Jt=3,Qt=4,zt=5,Be=6,je=7,en=8,he=9;function Dr(s,t){const e=this;let n=we,r=0,i=0,a=0,o;const c=[0],h=[0],d=new Nr;let m=0,w=new Int32Array(jn*3);const T=0,A=new ft;e.bitk=0,e.bitb=0,e.win=new Uint8Array(t),e.end=t,e.read=0,e.write=0,e.reset=function(u,l){l&&(l[0]=T),n==Be&&d.free(u),n=we,e.bitk=0,e.bitb=0,e.read=e.write=0},e.reset(s,null),e.inflate_flush=function(u,l){let f,p,g;return p=u.next_out_index,g=e.read,f=(g<=e.write?e.write:e.end)-g,f>u.avail_out&&(f=u.avail_out),f!==0&&l==se&&(l=v),u.avail_out-=f,u.total_out+=f,u.next_out.set(e.win.subarray(g,g+f),p),p+=f,g+=f,g==e.end&&(g=0,e.write==e.end&&(e.write=0),f=e.write-g,f>u.avail_out&&(f=u.avail_out),f!==0&&l==se&&(l=v),u.avail_out-=f,u.total_out+=f,u.next_out.set(e.win.subarray(g,g+f),p),p+=f,g+=f),u.next_out_index=p,e.read=g,l},e.proc=function(u,l){let f,p,g,C,O,b,_,E;for(C=u.next_in_index,O=u.avail_in,p=e.bitb,g=e.bitk,b=e.write,_=b<e.read?e.read-b-1:e.end-b;;){let y,x,S,I,R,D,k,P;switch(n){case we:for(;g<3;){if(O!==0)l=v;else return e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);O--,p|=(u.read_byte(C++)&255)<<g,g+=8}switch(f=p&7,m=f&1,f>>>1){case 0:p>>>=3,g-=3,f=g&7,p>>>=f,g-=f,n=et;break;case 1:y=[],x=[],S=[[]],I=[[]],ft.inflate_trees_fixed(y,x,S,I),d.init(y[0],x[0],S[0],0,I[0],0),p>>>=3,g-=3,n=Be;break;case 2:p>>>=3,g-=3,n=Jt;break;case 3:return p>>>=3,g-=3,n=he,u.msg="invalid block type",l=W,e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l)}break;case et:for(;g<32;){if(O!==0)l=v;else return e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);O--,p|=(u.read_byte(C++)&255)<<g,g+=8}if((~p>>>16&65535)!=(p&65535))return n=he,u.msg="invalid stored block lengths",l=W,e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);r=p&65535,p=g=0,n=r!==0?$t:m!==0?je:we;break;case $t:if(O===0||_===0&&(b==e.end&&e.read!==0&&(b=0,_=b<e.read?e.read-b-1:e.end-b),_===0&&(e.write=b,l=e.inflate_flush(u,l),b=e.write,_=b<e.read?e.read-b-1:e.end-b,b==e.end&&e.read!==0&&(b=0,_=b<e.read?e.read-b-1:e.end-b),_===0)))return e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);if(l=v,f=r,f>O&&(f=O),f>_&&(f=_),e.win.set(u.read_buf(C,f),b),C+=f,O-=f,b+=f,_-=f,(r-=f)!==0)break;n=m!==0?je:we;break;case Jt:for(;g<14;){if(O!==0)l=v;else return e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);O--,p|=(u.read_byte(C++)&255)<<g,g+=8}if(i=f=p&16383,(f&31)>29||(f>>5&31)>29)return n=he,u.msg="too many length or distance symbols",l=W,e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);if(f=258+(f&31)+(f>>5&31),!o||o.length<f)o=[];else for(E=0;E<f;E++)o[E]=0;p>>>=14,g-=14,a=0,n=Qt;case Qt:for(;a<4+(i>>>10);){for(;g<3;){if(O!==0)l=v;else return e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);O--,p|=(u.read_byte(C++)&255)<<g,g+=8}o[Xt[a++]]=p&7,p>>>=3,g-=3}for(;a<19;)o[Xt[a++]]=0;if(c[0]=7,f=A.inflate_trees_bits(o,c,h,w,u),f!=v)return l=f,l==W&&(o=null,n=he),e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);a=0,n=zt;case zt:for(;f=i,!(a>=258+(f&31)+(f>>5&31));){let U,F;for(f=c[0];g<f;){if(O!==0)l=v;else return e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);O--,p|=(u.read_byte(C++)&255)<<g,g+=8}if(f=w[(h[0]+(p&$[f]))*3+1],F=w[(h[0]+(p&$[f]))*3+2],F<16)p>>>=f,g-=f,o[a++]=F;else{for(E=F==18?7:F-14,U=F==18?11:3;g<f+E;){if(O!==0)l=v;else return e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);O--,p|=(u.read_byte(C++)&255)<<g,g+=8}if(p>>>=f,g-=f,U+=p&$[E],p>>>=E,g-=E,E=a,f=i,E+U>258+(f&31)+(f>>5&31)||F==16&&E<1)return o=null,n=he,u.msg="invalid bit length repeat",l=W,e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);F=F==16?o[E-1]:0;do o[E++]=F;while(--U!==0);a=E}}if(h[0]=-1,R=[],D=[],k=[],P=[],R[0]=9,D[0]=6,f=i,f=A.inflate_trees_dynamic(257+(f&31),1+(f>>5&31),o,R,D,k,P,w,u),f!=v)return f==W&&(o=null,n=he),l=f,e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);d.init(R[0],D[0],w,k[0],w,P[0]),n=Be;case Be:if(e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,(l=d.proc(e,u,l))!=ne)return e.inflate_flush(u,l);if(l=v,d.free(u),C=u.next_in_index,O=u.avail_in,p=e.bitb,g=e.bitk,b=e.write,_=b<e.read?e.read-b-1:e.end-b,m===0){n=we;break}n=je;case je:if(e.write=b,l=e.inflate_flush(u,l),b=e.write,_=b<e.read?e.read-b-1:e.end-b,e.read!=e.write)return e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);n=en;case en:return l=ne,e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);case he:return l=W,e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l);default:return l=X,e.bitb=p,e.bitk=g,u.avail_in=O,u.total_in+=C-u.next_in_index,u.next_in_index=C,e.write=b,e.inflate_flush(u,l)}}},e.free=function(u){e.reset(u,null),e.win=null,w=null},e.set_dictionary=function(u,l,f){e.win.set(u.subarray(l,l+f),0),e.read=e.write=f},e.sync_point=function(){return n==et?1:0}}const Pr=32,kr=8,Lr=0,tn=1,nn=2,sn=3,rn=4,an=5,tt=6,Se=7,on=12,ae=13,vr=[0,0,255,255];function Fr(){const s=this;s.mode=0,s.method=0,s.was=[0],s.need=0,s.marker=0,s.wbits=0;function t(e){return!e||!e.istate?X:(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=Se,e.istate.blocks.reset(e,null),v)}s.inflateEnd=function(e){return s.blocks&&s.blocks.free(e),s.blocks=null,v},s.inflateInit=function(e,n){return e.msg=null,s.blocks=null,n<8||n>15?(s.inflateEnd(e),X):(s.wbits=n,e.istate.blocks=new Dr(e,1<<n),t(e),v)},s.inflate=function(e,n){let r,i;if(!e||!e.istate||!e.next_in)return X;const a=e.istate;for(n=n==Er?se:v,r=se;;)switch(a.mode){case Lr:if(e.avail_in===0)return r;if(r=n,e.avail_in--,e.total_in++,((a.method=e.read_byte(e.next_in_index++))&15)!=kr){a.mode=ae,e.msg="unknown compression method",a.marker=5;break}if((a.method>>4)+8>a.wbits){a.mode=ae,e.msg="invalid win size",a.marker=5;break}a.mode=tn;case tn:if(e.avail_in===0)return r;if(r=n,e.avail_in--,e.total_in++,i=e.read_byte(e.next_in_index++)&255,((a.method<<8)+i)%31!==0){a.mode=ae,e.msg="incorrect header check",a.marker=5;break}if((i&Pr)===0){a.mode=Se;break}a.mode=nn;case nn:if(e.avail_in===0)return r;r=n,e.avail_in--,e.total_in++,a.need=(e.read_byte(e.next_in_index++)&255)<<24&4278190080,a.mode=sn;case sn:if(e.avail_in===0)return r;r=n,e.avail_in--,e.total_in++,a.need+=(e.read_byte(e.next_in_index++)&255)<<16&16711680,a.mode=rn;case rn:if(e.avail_in===0)return r;r=n,e.avail_in--,e.total_in++,a.need+=(e.read_byte(e.next_in_index++)&255)<<8&65280,a.mode=an;case an:return e.avail_in===0?r:(r=n,e.avail_in--,e.total_in++,a.need+=e.read_byte(e.next_in_index++)&255,a.mode=tt,br);case tt:return a.mode=ae,e.msg="need dictionary",a.marker=0,X;case Se:if(r=a.blocks.proc(e,r),r==W){a.mode=ae,a.marker=0;break}if(r==v&&(r=n),r!=ne)return r;r=n,a.blocks.reset(e,a.was),a.mode=on;case on:return e.avail_in=0,ne;case ae:return W;default:return X}},s.inflateSetDictionary=function(e,n,r){let i=0,a=r;if(!e||!e.istate||e.istate.mode!=tt)return X;const o=e.istate;return a>=1<<o.wbits&&(a=(1<<o.wbits)-1,i=r-a),o.blocks.set_dictionary(n,i,a),o.mode=Se,v},s.inflateSync=function(e){let n,r,i,a,o;if(!e||!e.istate)return X;const c=e.istate;if(c.mode!=ae&&(c.mode=ae,c.marker=0),(n=e.avail_in)===0)return se;for(r=e.next_in_index,i=c.marker;n!==0&&i<4;)e.read_byte(r)==vr[i]?i++:e.read_byte(r)!==0?i=0:i=4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,c.marker=i,i!=4?W:(a=e.total_in,o=e.total_out,t(e),e.total_in=a,e.total_out=o,c.mode=Se,v)},s.inflateSyncPoint=function(e){return!e||!e.istate||!e.istate.blocks?X:e.istate.blocks.sync_point()}}function qn(){}qn.prototype={inflateInit(s){const t=this;return t.istate=new Fr,s||(s=gr),t.istate.inflateInit(t,s)},inflate(s){const t=this;return t.istate?t.istate.inflate(t,s):X},inflateEnd(){const s=this;if(!s.istate)return X;const t=s.istate.inflateEnd(s);return s.istate=null,t},inflateSync(){const s=this;return s.istate?s.istate.inflateSync(s):X},inflateSetDictionary(s,t){const e=this;return e.istate?e.istate.inflateSetDictionary(e,s,t):X},read_byte(s){return this.next_in[s]},read_buf(s,t){return this.next_in.subarray(s,s+t)}};function Mr(s){const t=this,e=new qn,n=s&&s.chunkSize?Math.floor(s.chunkSize*2):128*1024,r=yr,i=new Uint8Array(n);let a=!1;e.inflateInit(),e.next_out=i,t.append=function(o,c){const h=[];let d,m,w=0,T=0,A=0;if(o.length!==0){e.next_in_index=0,e.next_in=o,e.avail_in=o.length;do{if(e.next_out_index=0,e.avail_out=n,e.avail_in===0&&!a&&(e.next_in_index=0,a=!0),d=e.inflate(r),a&&d===se){if(e.avail_in!==0)throw new Error("inflating: bad input")}else if(d!==v&&d!==ne)throw new Error("inflating: "+e.msg);if((a||d===ne)&&e.avail_in===o.length)throw new Error("inflating: bad input");e.next_out_index&&(e.next_out_index===n?h.push(new Uint8Array(i)):h.push(i.subarray(0,e.next_out_index))),A+=e.next_out_index,c&&e.next_in_index>0&&e.next_in_index!=w&&(c(e.next_in_index),w=e.next_in_index)}while(e.avail_in>0||e.avail_out===0);return h.length>1?(m=new Uint8Array(A),h.forEach(function(u){m.set(u,T),T+=u.length})):m=h[0]?new Uint8Array(h[0]):new Uint8Array,m}},t.flush=function(){e.inflateEnd()}}const pe=4294967295,le=65535,Ur=8,Hr=0,Wr=99,Br=67324752,Gn=134695760,jr=Gn,cn=33639248,qr=101010256,ln=101075792,Gr=117853008,te=22,nt=20,st=56,Yr=12,Vr=20,fn=4,Zr=1,Kr=39169,Xr=10,$r=1,Jr=21589,Qr=28789,zr=25461,ei=6534,un=1,ti=6,dn=8,_n=2048,hn=16,ni=61440,si=16384,ri=73,pn="/",rt=30,ii=10,ai=14,oi=18,j=void 0,de="undefined",Pe="function";class mn{constructor(t){return class extends TransformStream{constructor(e,n){const r=new t(n);super({transform(i,a){a.enqueue(r.append(i))},flush(i){const a=r.flush();a&&i.enqueue(a)}})}}}}const ci=64;let Yn=2;try{typeof navigator!=de&&navigator.hardwareConcurrency&&(Yn=navigator.hardwareConcurrency)}catch{}const li={chunkSize:512*1024,maxWorkers:Yn,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:j,CompressionStreamNative:typeof CompressionStream!=de&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=de&&DecompressionStream},fe=Object.assign({},li);function Vn(){return fe}function fi(s){return Math.max(s.chunkSize,ci)}function Zn(s){const{baseURL:t,chunkSize:e,maxWorkers:n,terminateWorkerTimeout:r,useCompressionStream:i,useWebWorkers:a,Deflate:o,Inflate:c,CompressionStream:h,DecompressionStream:d,workerScripts:m}=s;if(oe("baseURL",t),oe("chunkSize",e),oe("maxWorkers",n),oe("terminateWorkerTimeout",r),oe("useCompressionStream",i),oe("useWebWorkers",a),o&&(fe.CompressionStream=new mn(o)),c&&(fe.DecompressionStream=new mn(c)),oe("CompressionStream",h),oe("DecompressionStream",d),m!==j){const{deflate:w,inflate:T}=m;if((w||T)&&(fe.workerScripts||(fe.workerScripts={})),w){if(!Array.isArray(w))throw new Error("workerScripts.deflate must be an array");fe.workerScripts.deflate=w}if(T){if(!Array.isArray(T))throw new Error("workerScripts.inflate must be an array");fe.workerScripts.inflate=T}}}function oe(s,t){t!==j&&(fe[s]=t)}function ui(){return"application/octet-stream"}const Kn=[];for(let s=0;s<256;s++){let t=s;for(let e=0;e<8;e++)t&1?t=t>>>1^3988292384:t=t>>>1;Kn[s]=t}class Ve{constructor(t){this.crc=t||-1}append(t){let e=this.crc|0;for(let n=0,r=t.length|0;n<r;n++)e=e>>>8^Kn[(e^t[n])&255];this.crc=e}get(){return~this.crc}}class Xn extends TransformStream{constructor(){let t;const e=new Ve;super({transform(n,r){e.append(n),r.enqueue(n)},flush(){const n=new Uint8Array(4);new DataView(n.buffer).setUint32(0,e.get()),t.value=n}}),t=this}}function di(s){if(typeof TextEncoder==de){s=unescape(encodeURIComponent(s));const t=new Uint8Array(s.length);for(let e=0;e<t.length;e++)t[e]=s.charCodeAt(e);return t}else return new TextEncoder().encode(s)}const Z={concat(s,t){if(s.length===0||t.length===0)return s.concat(t);const e=s[s.length-1],n=Z.getPartial(e);return n===32?s.concat(t):Z._shiftRight(t,n,e|0,s.slice(0,s.length-1))},bitLength(s){const t=s.length;if(t===0)return 0;const e=s[t-1];return(t-1)*32+Z.getPartial(e)},clamp(s,t){if(s.length*32<t)return s;s=s.slice(0,Math.ceil(t/32));const e=s.length;return t=t&31,e>0&&t&&(s[e-1]=Z.partial(t,s[e-1]&2147483648>>t-1,1)),s},partial(s,t,e){return s===32?t:(e?t|0:t<<32-s)+s*1099511627776},getPartial(s){return Math.round(s/1099511627776)||32},_shiftRight(s,t,e,n){for(n===void 0&&(n=[]);t>=32;t-=32)n.push(e),e=0;if(t===0)return n.concat(s);for(let a=0;a<s.length;a++)n.push(e|s[a]>>>t),e=s[a]<<32-t;const r=s.length?s[s.length-1]:0,i=Z.getPartial(r);return n.push(Z.partial(t+i&31,t+i>32?e:n.pop(),1)),n}},Ze={bytes:{fromBits(s){const e=Z.bitLength(s)/8,n=new Uint8Array(e);let r;for(let i=0;i<e;i++)(i&3)===0&&(r=s[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(s){const t=[];let e,n=0;for(e=0;e<s.length;e++)n=n<<8|s[e],(e&3)===3&&(t.push(n),n=0);return e&3&&t.push(Z.partial(8*(e&3),n)),t}}},$n={};$n.sha1=class{constructor(s){const t=this;t.blockSize=512,t._init=[1732584193,4023233417,2562383102,271733878,3285377520],t._key=[1518500249,1859775393,2400959708,3395469782],s?(t._h=s._h.slice(0),t._buffer=s._buffer.slice(0),t._length=s._length):t.reset()}reset(){const s=this;return s._h=s._init.slice(0),s._buffer=[],s._length=0,s}update(s){const t=this;typeof s=="string"&&(s=Ze.utf8String.toBits(s));const e=t._buffer=Z.concat(t._buffer,s),n=t._length,r=t._length=n+Z.bitLength(s);if(r>9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const i=new Uint32Array(e);let a=0;for(let o=t.blockSize+n-(t.blockSize+n&t.blockSize-1);o<=r;o+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return e.splice(0,16*a),t}finalize(){const s=this;let t=s._buffer;const e=s._h;t=Z.concat(t,[Z.partial(1,1)]);for(let n=t.length+2;n&15;n++)t.push(0);for(t.push(Math.floor(s._length/4294967296)),t.push(s._length|0);t.length;)s._block(t.splice(0,16));return s.reset(),e}_f(s,t,e,n){if(s<=19)return t&e|~t&n;if(s<=39)return t^e^n;if(s<=59)return t&e|t&n|e&n;if(s<=79)return t^e^n}_S(s,t){return t<<s|t>>>32-s}_block(s){const t=this,e=t._h,n=Array(80);for(let h=0;h<16;h++)n[h]=s[h];let r=e[0],i=e[1],a=e[2],o=e[3],c=e[4];for(let h=0;h<=79;h++){h>=16&&(n[h]=t._S(1,n[h-3]^n[h-8]^n[h-14]^n[h-16]));const d=t._S(5,r)+t._f(h,i,a,o)+c+n[h]+t._key[Math.floor(h/20)]|0;c=o,o=a,a=t._S(30,i),i=r,r=d}e[0]=e[0]+r|0,e[1]=e[1]+i|0,e[2]=e[2]+a|0,e[3]=e[3]+o|0,e[4]=e[4]+c|0}};const Jn={};Jn.aes=class{constructor(s){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const e=t._tables[0][4],n=t._tables[1],r=s.length;let i,a,o,c=1;if(r!==4&&r!==6&&r!==8)throw new Error("invalid aes key size");for(t._key=[a=s.slice(0),o=[]],i=r;i<4*r+28;i++){let h=a[i-1];(i%r===0||r===8&&i%r===4)&&(h=e[h>>>24]<<24^e[h>>16&255]<<16^e[h>>8&255]<<8^e[h&255],i%r===0&&(h=h<<8^h>>>24^c<<24,c=c<<1^(c>>7)*283)),a[i]=a[i-r]^h}for(let h=0;i;h++,i--){const d=a[h&3?i:i-4];i<=4||h<4?o[h]=d:o[h]=n[0][e[d>>>24]]^n[1][e[d>>16&255]]^n[2][e[d>>8&255]]^n[3][e[d&255]]}}encrypt(s){return this._crypt(s,0)}decrypt(s){return this._crypt(s,1)}_precompute(){const s=this._tables[0],t=this._tables[1],e=s[4],n=t[4],r=[],i=[];let a,o,c,h;for(let d=0;d<256;d++)i[(r[d]=d<<1^(d>>7)*283)^d]=d;for(let d=a=0;!e[d];d^=o||1,a=i[a]||1){let m=a^a<<1^a<<2^a<<3^a<<4;m=m>>8^m&255^99,e[d]=m,n[m]=d,h=r[c=r[o=r[d]]];let w=h*16843009^c*65537^o*257^d*16843008,T=r[m]*257^m*16843008;for(let A=0;A<4;A++)s[A][d]=T=T<<24^T>>>8,t[A][m]=w=w<<24^w>>>8}for(let d=0;d<5;d++)s[d]=s[d].slice(0),t[d]=t[d].slice(0)}_crypt(s,t){if(s.length!==4)throw new Error("invalid aes block size");const e=this._key[t],n=e.length/4-2,r=[0,0,0,0],i=this._tables[t],a=i[0],o=i[1],c=i[2],h=i[3],d=i[4];let m=s[0]^e[0],w=s[t?3:1]^e[1],T=s[2]^e[2],A=s[t?1:3]^e[3],u=4,l,f,p;for(let g=0;g<n;g++)l=a[m>>>24]^o[w>>16&255]^c[T>>8&255]^h[A&255]^e[u],f=a[w>>>24]^o[T>>16&255]^c[A>>8&255]^h[m&255]^e[u+1],p=a[T>>>24]^o[A>>16&255]^c[m>>8&255]^h[w&255]^e[u+2],A=a[A>>>24]^o[m>>16&255]^c[w>>8&255]^h[T&255]^e[u+3],u+=4,m=l,w=f,T=p;for(let g=0;g<4;g++)r[t?3&-g:g]=d[m>>>24]<<24^d[w>>16&255]<<16^d[T>>8&255]<<8^d[A&255]^e[u++],l=m,m=w,w=T,T=A,A=l;return r}};const _i={getRandomValues(s){const t=new Uint32Array(s.buffer),e=n=>{let r=987654321;const i=4294967295;return function(){return r=36969*(r&65535)+(r>>16)&i,n=18e3*(n&65535)+(n>>16)&i,(((r<<16)+n&i)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let n=0,r;n<s.length;n+=4){const i=e((r||Math.random())*4294967296);r=i()*987654071,t[n/4]=i()*4294967296|0}return s}},Qn={};Qn.ctrGladman=class{constructor(s,t){this._prf=s,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(s){return this.calculate(this._prf,s,this._iv)}incWord(s){if((s>>24&255)===255){let t=s>>16&255,e=s>>8&255,n=s&255;t===255?(t=0,e===255?(e=0,n===255?n=0:++n):++e):++t,s=0,s+=t<<16,s+=e<<8,s+=n}else s+=1<<24;return s}incCounter(s){(s[0]=this.incWord(s[0]))===0&&(s[1]=this.incWord(s[1]))}calculate(s,t,e){let n;if(!(n=t.length))return[];const r=Z.bitLength(t);for(let i=0;i<n;i+=4){this.incCounter(e);const a=s.encrypt(e);t[i]^=a[0],t[i+1]^=a[1],t[i+2]^=a[2],t[i+3]^=a[3]}return Z.clamp(t,r)}};const me={importKey(s){return new me.hmacSha1(Ze.bytes.toBits(s))},pbkdf2(s,t,e,n){if(e=e||1e4,n<0||e<0)throw new Error("invalid params to pbkdf2");const r=(n>>5)+1<<2;let i,a,o,c,h;const d=new ArrayBuffer(r),m=new DataView(d);let w=0;const T=Z;for(t=Ze.bytes.toBits(t),h=1;w<(r||1);h++){for(i=a=s.encrypt(T.concat(t,[h])),o=1;o<e;o++)for(a=s.encrypt(a),c=0;c<a.length;c++)i[c]^=a[c];for(o=0;w<(r||1)&&o<i.length;o++)m.setInt32(w,i[o]),w+=4}return d.slice(0,n/8)}};me.hmacSha1=class{constructor(s){const t=this,e=t._hash=$n.sha1,n=[[],[]];t._baseHash=[new e,new e];const r=t._baseHash[0].blockSize/32;s.length>r&&(s=new e().update(s).finalize());for(let i=0;i<r;i++)n[0][i]=s[i]^909522486,n[1][i]=s[i]^1549556828;t._baseHash[0].update(n[0]),t._baseHash[1].update(n[1]),t._resultHash=new e(t._baseHash[0])}reset(){const s=this;s._resultHash=new s._hash(s._baseHash[0]),s._updated=!1}update(s){const t=this;t._updated=!0,t._resultHash.update(s)}digest(){const s=this,t=s._resultHash.finalize(),e=new s._hash(s._baseHash[1]).update(t).finalize();return s.reset(),e}encrypt(s){if(this._updated)throw new Error("encrypt on already updated hmac called!");return this.update(s),this.digest(s)}};const hi=typeof crypto!=de&&typeof crypto.getRandomValues==Pe,yt="Invalid password",Et="Invalid signature",xt="zipjs-abort-check-password";function zn(s){return hi?crypto.getRandomValues(s):_i.getRandomValues(s)}const ge=16,pi="raw",es={name:"PBKDF2"},mi={name:"HMAC"},wi="SHA-1",gi=Object.assign({hash:mi},es),ut=Object.assign({iterations:1e3,hash:{name:wi}},es),bi=["deriveBits"],Ce=[8,12,16],Re=[16,24,32],ce=10,yi=[0,0,0,0],$e=typeof crypto!=de,ke=$e&&crypto.subtle,ts=$e&&typeof ke!=de,z=Ze.bytes,Ei=Jn.aes,xi=Qn.ctrGladman,Ti=me.hmacSha1;let wn=$e&&ts&&typeof ke.importKey==Pe,gn=$e&&ts&&typeof ke.deriveBits==Pe;class Si extends TransformStream{constructor({password:t,rawPassword:e,signed:n,encryptionStrength:r,checkPasswordOnly:i}){super({start(){Object.assign(this,{ready:new Promise(a=>this.resolveReady=a),password:rs(t,e),signed:n,strength:r-1,pending:new Uint8Array})},async transform(a,o){const c=this,{password:h,strength:d,resolveReady:m,ready:w}=c;h?(await Ai(c,d,h,J(a,0,Ce[d]+2)),a=J(a,Ce[d]+2),i?o.error(new Error(xt)):m()):await w;const T=new Uint8Array(a.length-ce-(a.length-ce)%ge);o.enqueue(ns(c,a,T,0,ce,!0))},async flush(a){const{signed:o,ctr:c,hmac:h,pending:d,ready:m}=this;if(h&&c){await m;const w=J(d,0,d.length-ce),T=J(d,d.length-ce);let A=new Uint8Array;if(w.length){const u=Ne(z,w);h.update(u);const l=c.update(u);A=Ie(z,l)}if(o){const u=J(Ie(z,h.digest()),0,ce);for(let l=0;l<ce;l++)if(u[l]!=T[l])throw new Error(Et)}a.enqueue(A)}}})}}class Ri extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:n}){let r;super({start(){Object.assign(this,{ready:new Promise(i=>this.resolveReady=i),password:rs(t,e),strength:n-1,pending:new Uint8Array})},async transform(i,a){const o=this,{password:c,strength:h,resolveReady:d,ready:m}=o;let w=new Uint8Array;c?(w=await Oi(o,h,c),d()):await m;const T=new Uint8Array(w.length+i.length-i.length%ge);T.set(w,0),a.enqueue(ns(o,i,T,w.length,0))},async flush(i){const{ctr:a,hmac:o,pending:c,ready:h}=this;if(o&&a){await h;let d=new Uint8Array;if(c.length){const m=a.update(Ne(z,c));o.update(m),d=Ie(z,m)}r.signature=Ie(z,o.digest()).slice(0,ce),i.enqueue(Tt(d,r.signature))}}}),r=this}}function ns(s,t,e,n,r,i){const{ctr:a,hmac:o,pending:c}=s,h=t.length-r;c.length&&(t=Tt(c,t),e=Ni(e,h-h%ge));let d;for(d=0;d<=h-ge;d+=ge){const m=Ne(z,J(t,d,d+ge));i&&o.update(m);const w=a.update(m);i||o.update(w),e.set(Ie(z,w),d+n)}return s.pending=J(t,d),e}async function Ai(s,t,e,n){const r=await ss(s,t,e,J(n,0,Ce[t])),i=J(n,Ce[t]);if(r[0]!=i[0]||r[1]!=i[1])throw new Error(yt)}async function Oi(s,t,e){const n=zn(new Uint8Array(Ce[t])),r=await ss(s,t,e,n);return Tt(n,r)}async function ss(s,t,e,n){s.password=null;const r=await Ci(pi,e,gi,!1,bi),i=await Ii(Object.assign({salt:n},ut),r,8*(Re[t]*2+2)),a=new Uint8Array(i),o=Ne(z,J(a,0,Re[t])),c=Ne(z,J(a,Re[t],Re[t]*2)),h=J(a,Re[t]*2);return Object.assign(s,{keys:{key:o,authentication:c,passwordVerification:h},ctr:new xi(new Ei(o),Array.from(yi)),hmac:new Ti(c)}),h}async function Ci(s,t,e,n,r){if(wn)try{return await ke.importKey(s,t,e,n,r)}catch{return wn=!1,me.importKey(t)}else return me.importKey(t)}async function Ii(s,t,e){if(gn)try{return await ke.deriveBits(s,t,e)}catch{return gn=!1,me.pbkdf2(t,s.salt,ut.iterations,e)}else return me.pbkdf2(t,s.salt,ut.iterations,e)}function rs(s,t){return t===j?di(s):t}function Tt(s,t){let e=s;return s.length+t.length&&(e=new Uint8Array(s.length+t.length),e.set(s,0),e.set(t,s.length)),e}function Ni(s,t){if(t&&t>s.length){const e=s;s=new Uint8Array(t),s.set(e,0)}return s}function J(s,t,e){return s.subarray(t,e)}function Ie(s,t){return s.fromBits(t)}function Ne(s,t){return s.toBits(t)}const Oe=12;class Di extends TransformStream{constructor({password:t,passwordVerification:e,checkPasswordOnly:n}){super({start(){Object.assign(this,{password:t,passwordVerification:e}),is(this,t)},transform(r,i){const a=this;if(a.password){const o=bn(a,r.subarray(0,Oe));if(a.password=null,o.at(-1)!=a.passwordVerification)throw new Error(yt);r=r.subarray(Oe)}n?i.error(new Error(xt)):i.enqueue(bn(a,r))}})}}class Pi extends TransformStream{constructor({password:t,passwordVerification:e}){super({start(){Object.assign(this,{password:t,passwordVerification:e}),is(this,t)},transform(n,r){const i=this;let a,o;if(i.password){i.password=null;const c=zn(new Uint8Array(Oe));c[Oe-1]=i.passwordVerification,a=new Uint8Array(n.length+c.length),a.set(yn(i,c),0),o=Oe}else a=new Uint8Array(n.length),o=0;a.set(yn(i,n),o),r.enqueue(a)}})}}function bn(s,t){const e=new Uint8Array(t.length);for(let n=0;n<t.length;n++)e[n]=as(s)^t[n],St(s,e[n]);return e}function yn(s,t){const e=new Uint8Array(t.length);for(let n=0;n<t.length;n++)e[n]=as(s)^t[n],St(s,t[n]);return e}function is(s,t){const e=[305419896,591751049,878082192];Object.assign(s,{keys:e,crcKey0:new Ve(e[0]),crcKey2:new Ve(e[2])});for(let n=0;n<t.length;n++)St(s,t.charCodeAt(n))}function St(s,t){let[e,n,r]=s.keys;s.crcKey0.append([t]),e=~s.crcKey0.get(),n=En(Math.imul(En(n+os(e)),134775813)+1),s.crcKey2.append([n>>>24]),r=~s.crcKey2.get(),s.keys=[e,n,r]}function as(s){const t=s.keys[2]|2;return os(Math.imul(t,t^1)>>>8)}function os(s){return s&255}function En(s){return s&4294967295}const Rt="Invalid uncompressed size",xn="deflate-raw";class ki extends TransformStream{constructor(t,{chunkSize:e,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:a,useCompressionStream:o,zipCrypto:c,signed:h,level:d}=t,m=this;let w,T,A=super.readable;(!a||c)&&h&&(w=new Xn,A=re(A,w)),i&&(A=ls(A,o,{level:d,chunkSize:e},r,n)),a&&(c?A=re(A,new Pi(t)):(T=new Ri(t),A=re(A,T))),cs(m,A,()=>{let u;a&&!c&&(u=T.signature),(!a||c)&&h&&(u=new DataView(w.value.buffer).getUint32(0)),m.signature=u})}}class Li extends TransformStream{constructor(t,{chunkSize:e,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:a,signed:o,signature:c,compressed:h,useCompressionStream:d}=t;let m,w,T=super.readable;a&&(i?T=re(T,new Di(t)):(w=new Si(t),T=re(T,w))),h&&(T=ls(T,d,{chunkSize:e},r,n)),(!a||i)&&o&&(m=new Xn,T=re(T,m)),cs(this,T,()=>{if((!a||i)&&o){const A=new DataView(m.value.buffer);if(c!=A.getUint32(0,!1))throw new Error(Et)}})}}function cs(s,t,e){t=re(t,new TransformStream({flush:e})),Object.defineProperty(s,"readable",{get(){return t}})}function ls(s,t,e,n,r){try{const i=t&&n?n:r;s=re(s,new i(xn,e))}catch(i){if(t)s=re(s,new r(xn,e));else throw i}return s}function re(s,t){return s.pipeThrough(t)}const vi="message",Fi="start",Mi="pull",Tn="data",Ui="ack",Sn="close",Hi="deflate",fs="inflate";class Wi extends TransformStream{constructor(t,e){super({});const n=this,{codecType:r}=t;let i;r.startsWith(Hi)?i=ki:r.startsWith(fs)&&(i=Li),n.outputSize=0;let a=0;const o=new i(t,e),c=super.readable,h=new TransformStream({transform(m,w){m&&m.length&&(a+=m.length,w.enqueue(m))},flush(){Object.assign(n,{inputSize:a})}}),d=new TransformStream({transform(m,w){if(m&&m.length&&(w.enqueue(m),n.outputSize+=m.length,t.outputSize&&n.outputSize>t.outputSize))throw new Error(Rt)},flush(){const{signature:m}=o;Object.assign(n,{signature:m,inputSize:a})}});Object.defineProperty(n,"readable",{get(){return c.pipeThrough(h).pipeThrough(o).pipeThrough(d)}})}}class Bi extends TransformStream{constructor(t){let e;super({transform:n,flush(r){e&&e.length&&r.enqueue(e)}});function n(r,i){if(e){const a=new Uint8Array(e.length+r.length);a.set(e),a.set(r,e.length),r=a,e=null}r.length>t?(i.enqueue(r.slice(0,t)),n(r.slice(t),i)):e=r}}}let us=typeof Worker!=de;class it{constructor(t,{readable:e,writable:n},{options:r,config:i,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:h},d){const{signal:m}=a;return Object.assign(t,{busy:!0,readable:e.pipeThrough(new Bi(i.chunkSize)).pipeThrough(new ji(a),{signal:m}),writable:n,options:Object.assign({},r),scripts:h,transferStreams:c,terminate(){return new Promise(w=>{const{worker:T,busy:A}=t;T?(A?t.resolveTerminated=w:(T.terminate(),w()),t.interface=null):w()})},onTaskFinished(){const{resolveTerminated:w}=t;w&&(t.resolveTerminated=null,t.terminated=!0,t.worker.terminate(),w()),t.busy=!1,d(t)}}),(o&&us?qi:ds)(t,i)}}class ji extends TransformStream{constructor({onstart:t,onprogress:e,size:n,onend:r}){let i=0;super({async start(){t&&await at(t,n)},async transform(a,o){i+=a.length,e&&await at(e,i,n),o.enqueue(a)},async flush(){r&&await at(r,i)}})}}async function at(s,...t){try{await s(...t)}catch{}}function ds(s,t){return{run:()=>Gi(s,t)}}function qi(s,t){const{baseURL:e,chunkSize:n}=t;if(!s.interface){let r;try{r=Zi(s.scripts[0],e,s)}catch{return us=!1,ds(s,t)}Object.assign(s,{worker:r,interface:{run:()=>Yi(s,{chunkSize:n})}})}return s.interface}async function Gi({options:s,readable:t,writable:e,onTaskFinished:n},r){let i;try{i=new Wi(s,r),await t.pipeThrough(i).pipeTo(e,{preventClose:!0,preventAbort:!0});const{signature:a,inputSize:o,outputSize:c}=i;return{signature:a,inputSize:o,outputSize:c}}catch(a){throw i&&(a.outputSize=i.outputSize),a}finally{n()}}async function Yi(s,t){let e,n;const r=new Promise((w,T)=>{e=w,n=T});Object.assign(s,{reader:null,writer:null,resolveResult:e,rejectResult:n,result:r});const{readable:i,options:a,scripts:o}=s,{writable:c,closed:h}=Vi(s.writable),d=qe({type:Fi,scripts:o.slice(1),options:a,config:t,readable:i,writable:c},s);d||Object.assign(s,{reader:i.getReader(),writer:c.getWriter()});const m=await r;return d||await c.getWriter().close(),await h,m}function Vi(s){let t;const e=new Promise(r=>t=r);return{writable:new WritableStream({async write(r){const i=s.getWriter();await i.ready,await i.write(r),i.releaseLock()},close(){t()},abort(r){return s.getWriter().abort(r)}}),closed:e}}let Rn=!0,An=!0;function Zi(s,t,e){const n={type:"module"};let r,i;typeof s==Pe&&(s=s());try{r=new URL(s,t)}catch{r=s}if(Rn)try{i=new Worker(r)}catch{Rn=!1,i=new Worker(r,n)}else i=new Worker(r,n);return i.addEventListener(vi,a=>Ki(a,e)),i}function qe(s,{worker:t,writer:e,onTaskFinished:n,transferStreams:r}){try{const{value:i,readable:a,writable:o}=s,c=[];if(i&&(i.byteLength<i.buffer.byteLength?s.value=i.buffer.slice(0,i.byteLength):s.value=i.buffer,c.push(s.value)),r&&An?(a&&c.push(a),o&&c.push(o)):s.readable=s.writable=null,c.length)try{return t.postMessage(s,c),!0}catch{An=!1,s.readable=s.writable=null,t.postMessage(s)}else t.postMessage(s)}catch(i){throw e&&e.releaseLock(),n(),i}}async function Ki({data:s},t){const{type:e,value:n,messageId:r,result:i,error:a}=s,{reader:o,writer:c,resolveResult:h,rejectResult:d,onTaskFinished:m}=t;try{if(a){const{message:T,stack:A,code:u,name:l,outputSize:f}=a,p=new Error(T);Object.assign(p,{stack:A,code:u,name:l,outputSize:f}),w(p)}else{if(e==Mi){const{value:T,done:A}=await o.read();qe({type:Tn,value:T,done:A,messageId:r},t)}e==Tn&&(await c.ready,await c.write(new Uint8Array(n)),qe({type:Ui,messageId:r},t)),e==Sn&&w(null,i)}}catch(T){qe({type:Sn,messageId:r},t),w(T)}function w(T,A){T?d(T):h(A),c&&c.releaseLock(),m()}}let ue=[];const ot=[];let On=0;async function Xi(s,t){const{options:e,config:n}=t,{transferStreams:r,useWebWorkers:i,useCompressionStream:a,codecType:o,compressed:c,signed:h,encrypted:d}=e,{workerScripts:m,maxWorkers:w}=n;t.transferStreams=r||r===j;const T=!c&&!h&&!d&&!t.transferStreams;return t.useWebWorkers=!T&&(i||i===j&&n.useWebWorkers),t.scripts=t.useWebWorkers&&m?m[o]:[],e.useCompressionStream=a||a===j&&n.useCompressionStream,(await A()).run();async function A(){const l=ue.find(f=>!f.busy);if(l)return dt(l),new it(l,s,t,u);if(ue.length<w){const f={indexWorker:On};return On++,ue.push(f),new it(f,s,t,u)}else return new Promise(f=>ot.push({resolve:f,stream:s,workerOptions:t}))}function u(l){if(ot.length){const[{resolve:f,stream:p,workerOptions:g}]=ot.splice(0,1);f(new it(l,p,g,u))}else l.worker?(dt(l),$i(l,t)):ue=ue.filter(f=>f!=l)}}function $i(s,t){const{config:e}=t,{terminateWorkerTimeout:n}=e;Number.isFinite(n)&&n>=0&&(s.terminated?s.terminated=!1:s.terminateTimeout=setTimeout(async()=>{ue=ue.filter(r=>r!=s);try{await s.terminate()}catch{}},n))}function dt(s){const{terminateTimeout:t}=s;t&&(clearTimeout(t),s.terminateTimeout=null)}async function Ji(){await Promise.allSettled(ue.map(s=>(dt(s),s.terminate())))}const _s="HTTP error ",Le="HTTP Range not supported",hs="Writer iterator completed too soon",ps="Writer not initialized",Qi="text/plain",zi="Content-Length",ea="Content-Range",ta="Accept-Ranges",na="Range",sa="Content-Type",ra="HEAD",At="GET",ms="bytes",ia=64*1024,Ot="writable";class Je{constructor(){this.size=0}init(){this.initialized=!0}}class _e extends Je{get readable(){const t=this,{chunkSize:e=ia}=t,n=new ReadableStream({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:a,diskNumberStart:o}=n,{chunkOffset:c}=this,h=a===j?e:Math.min(e,a-c),d=await G(t,i+c,h,o);r.enqueue(d),c+e>a||a===j&&!d.length&&h?r.close():this.chunkOffset+=e}});return n}}class Ct extends Je{constructor(){super();const t=this,e=new WritableStream({write(n){if(!t.initialized)throw new Error(ps);return t.writeUint8Array(n)}});Object.defineProperty(t,Ot,{get(){return e}})}writeUint8Array(){}}class aa extends _e{constructor(t){super();let e=t.length;for(;t.charAt(e-1)=="=";)e--;const n=t.indexOf(",")+1;Object.assign(this,{dataURI:t,dataStart:n,size:Math.floor((e-n)*.75)})}readUint8Array(t,e){const{dataStart:n,dataURI:r}=this,i=new Uint8Array(e),a=Math.floor(t/3)*4,o=atob(r.substring(a+n,Math.ceil((t+e)/3)*4+n)),c=t-Math.floor(a/4)*3;let h=0;for(let d=c;d<c+e&&d<o.length;d++)i[d-c]=o.charCodeAt(d),h++;return h<i.length?i.subarray(0,h):i}}class oa extends Ct{constructor(t){super(),Object.assign(this,{data:"data:"+(t||"")+";base64,",pending:[]})}writeUint8Array(t){const e=this;let n=0,r=e.pending;const i=e.pending.length;for(e.pending="",n=0;n<Math.floor((i+t.length)/3)*3-i;n++)r+=String.fromCharCode(t[n]);for(;n<t.length;n++)e.pending+=String.fromCharCode(t[n]);r.length&&(r.length>2?e.data+=btoa(r):e.pending+=r)}getData(){return this.data+btoa(this.pending)}}class It extends _e{constructor(t){super(),Object.assign(this,{blob:t,size:t.size})}async readUint8Array(t,e){const n=this,r=t+e;let a=await(t||r<n.size?n.blob.slice(t,r):n.blob).arrayBuffer();return a.byteLength>e&&(a=a.slice(t,r)),new Uint8Array(a)}}class ws extends Je{constructor(t){super();const e=this,n=new TransformStream,r=[];t&&r.push([sa,t]),Object.defineProperty(e,Ot,{get(){return n.writable}}),e.blob=new Response(n.readable,{headers:r}).blob()}getData(){return this.blob}}class ca extends It{constructor(t){super(new Blob([t],{type:Qi}))}}class la extends ws{constructor(t){super(t),Object.assign(this,{encoding:t,utf8:!t||t.toLowerCase()=="utf-8"})}async getData(){const{encoding:t,utf8:e}=this,n=await super.getData();if(n.text&&e)return n.text();{const r=new FileReader;return new Promise((i,a)=>{Object.assign(r,{onload:({target:o})=>i(o.result),onerror:()=>a(r.error)}),r.readAsText(n,t)})}}}class fa extends _e{constructor(t,e){super(),gs(this,t,e)}async init(){await bs(this,_t,Cn),super.init()}readUint8Array(t,e){return ys(this,t,e,_t,Cn)}}class ua extends _e{constructor(t,e){super(),gs(this,t,e)}async init(){await bs(this,ht,In),super.init()}readUint8Array(t,e){return ys(this,t,e,ht,In)}}function gs(s,t,e){const{preventHeadRequest:n,useRangeHeader:r,forceRangeRequests:i,combineSizeEocd:a}=e;e=Object.assign({},e),delete e.preventHeadRequest,delete e.useRangeHeader,delete e.forceRangeRequests,delete e.combineSizeEocd,delete e.useXHR,Object.assign(s,{url:t,options:e,preventHeadRequest:n,useRangeHeader:r,forceRangeRequests:i,combineSizeEocd:a})}async function bs(s,t,e){const{url:n,preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o}=s;if(pa(n)&&(i||a)&&(typeof r>"u"||r)){const c=await t(At,s,Es(s,o?-te:void 0));if(!a&&c.headers.get(ta)!=ms)throw new Error(Le);{o&&(s.eocdCache=new Uint8Array(await c.arrayBuffer()));let h;const d=c.headers.get(ea);if(d){const m=d.trim().split(/\s*\/\s*/);if(m.length){const w=m[1];w&&w!="*"&&(h=Number(w))}}h===j?await Nn(s,t,e):s.size=h}}else await Nn(s,t,e)}async function ys(s,t,e,n,r){const{useRangeHeader:i,forceRangeRequests:a,eocdCache:o,size:c,options:h}=s;if(i||a){if(o&&t==c-te&&e==te)return o;if(t>=c)return new Uint8Array;{t+e>c&&(e=c-t);const d=await n(At,s,Es(s,t,e));if(d.status!=206)throw new Error(Le);return new Uint8Array(await d.arrayBuffer())}}else{const{data:d}=s;return d||await r(s,h),new Uint8Array(s.data.subarray(t,t+e))}}function Es(s,t=0,e=1){return Object.assign({},Nt(s),{[na]:ms+"="+(t<0?t:t+"-"+(t+e-1))})}function Nt({options:s}){const{headers:t}=s;if(t)return Symbol.iterator in t?Object.fromEntries(t):t}async function Cn(s){await xs(s,_t)}async function In(s){await xs(s,ht)}async function xs(s,t){const e=await t(At,s,Nt(s));s.data=new Uint8Array(await e.arrayBuffer()),s.size||(s.size=s.data.length)}async function Nn(s,t,e){if(s.preventHeadRequest)await e(s,s.options);else{const r=(await t(ra,s,Nt(s))).headers.get(zi);r?s.size=Number(r):await e(s,s.options)}}async function _t(s,{options:t,url:e},n){const r=await fetch(e,Object.assign({},t,{method:s,headers:n}));if(r.status<400)return r;throw r.status==416?new Error(Le):new Error(_s+(r.statusText||r.status))}function ht(s,{url:t},e){return new Promise((n,r)=>{const i=new XMLHttpRequest;if(i.addEventListener("load",()=>{if(i.status<400){const a=[];i.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(o=>{const c=o.trim().split(/\s*:\s*/);c[0]=c[0].trim().replace(/^[a-z]|-[a-z]/g,h=>h.toUpperCase()),a.push(c)}),n({status:i.status,arrayBuffer:()=>i.response,headers:new Map(a)})}else r(i.status==416?new Error(Le):new Error(_s+(i.statusText||i.status)))},!1),i.addEventListener("error",a=>r(a.detail?a.detail.error:new Error("Network error")),!1),i.open(s,t),e)for(const a of Object.entries(e))i.setRequestHeader(a[0],a[1]);i.responseType="arraybuffer",i.send()})}class Ts extends _e{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR?new ua(t,e):new fa(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}class da extends Ts{constructor(t,e={}){e.useRangeHeader=!0,super(t,e)}}class _a extends _e{constructor(t){super(),t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),Object.assign(this,{array:t,size:t.length})}readUint8Array(t,e){return this.array.slice(t,t+e)}}class ha extends Ct{init(t=0){Object.assign(this,{offset:0,array:new Uint8Array(t)}),super.init()}writeUint8Array(t){const e=this;if(e.offset+t.length>e.array.length){const n=e.array;e.array=new Uint8Array(n.length+t.length),e.array.set(n)}e.array.set(t,e.offset),e.offset+=t.length}getData(){return this.array}}class Dt extends _e{constructor(t){super(),this.readers=t}async init(){const t=this,{readers:e}=t;t.lastDiskNumber=0,t.lastDiskOffset=0,await Promise.all(e.map(async(n,r)=>{await n.init(),r!=e.length-1&&(t.lastDiskOffset+=n.size),t.size+=n.size})),super.init()}async readUint8Array(t,e,n=0){const r=this,{readers:i}=this;let a,o=n;o==-1&&(o=i.length-1);let c=t;for(;i[o]&&c>=i[o].size;)c-=i[o].size,o++;const h=i[o];if(h){const d=h.size;if(c+e<=d)a=await G(h,c,e);else{const m=d-c;a=new Uint8Array(e);const w=await G(h,c,m);a.set(w,0);const T=await r.readUint8Array(t+m,e-m,n);a.set(T,m),w.length+T.length<e&&(a=a.subarray(0,w.length+T.length))}}else a=new Uint8Array;return r.lastDiskNumber=Math.max(o,r.lastDiskNumber),a}}class Ke extends Je{constructor(t,e=4294967295){super();const n=this;Object.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});let r,i,a;const o=new WritableStream({async write(d){const{availableSize:m}=n;if(a)d.length>=m?(await c(d.subarray(0,m)),await h(),n.diskOffset+=r.size,n.diskNumber++,a=null,await this.write(d.subarray(m))):await c(d);else{const{value:w,done:T}=await t.next();if(T&&!w)throw new Error(hs);r=w,r.size=0,r.maxSize&&(n.maxSize=r.maxSize),n.availableSize=n.maxSize,await De(r),i=w.writable,a=i.getWriter(),await this.write(d)}},async close(){await a.ready,await h()}});Object.defineProperty(n,Ot,{get(){return o}});async function c(d){const m=d.length;m&&(await a.ready,await a.write(d),r.size+=m,n.size+=m,n.availableSize-=m)}async function h(){await a.close()}}}class Ss{constructor(t){return Array.isArray(t)&&(t=new Dt(t)),t instanceof ReadableStream&&(t={readable:t}),t}}class Rs{constructor(t){return t.writable===j&&typeof t.next==Pe&&(t=new Ke(t)),t instanceof WritableStream&&(t={writable:t}),t.size===j&&(t.size=0),t instanceof Ke||Object.assign(t,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),t}}function pa(s){const{baseURL:t}=Vn(),{protocol:e}=new URL(s,t);return e=="http:"||e=="https:"}async function De(s,t){if(s.init&&!s.initialized)await s.init(t);else return Promise.resolve()}function G(s,t,e,n){return s.readUint8Array(t,e,n)}const ma=Dt,wa=Ke,As="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""),ga=As.length==256;function ba(s){if(ga){let t="";for(let e=0;e<s.length;e++)t+=As[s[e]];return t}else return new TextDecoder().decode(s)}function Ge(s,t){return t&&t.trim().toLowerCase()=="cp437"?ba(s):new TextDecoder(t).decode(s)}const Os="filename",Cs="rawFilename",Is="comment",Ns="rawComment",Ds="uncompressedSize",Ps="compressedSize",ks="offset",pt="diskNumberStart",mt="lastModDate",wt="rawLastModDate",Ls="lastAccessDate",ya="rawLastAccessDate",vs="creationDate",Ea="rawCreationDate",xa="internalFileAttribute",Ta="internalFileAttributes",Sa="externalFileAttribute",Ra="externalFileAttributes",Aa="msDosCompatible",Oa="zip64",Ca="encrypted",Ia="version",Na="versionMadeBy",Da="zipCrypto",Pa="directory",ka="executable",La="compressionMethod",va="signature",Fa="extraField",Ma=[Os,Cs,Ps,Ds,mt,wt,Is,Ns,Ls,vs,ks,pt,pt,xa,Ta,Sa,Ra,Aa,Oa,Ca,Ia,Na,Da,Pa,ka,La,va,Fa,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class Dn{constructor(t){Ma.forEach(e=>this[e]=t[e])}}const Ua="filenameEncoding",Ha="commentEncoding",Wa="decodeText",Ba="extractPrependedData",ja="extractAppendedData",qa="password",Ga="rawPassword",Ya="passThrough",Va="signal",Za="checkPasswordOnly",Ka="checkOverlappingEntryOnly",Xa="checkOverlappingEntry",$a="checkSignature",Ja="useWebWorkers",Qa="useCompressionStream",za="transferStreams",eo="preventClose",Ye="File format is not recognized",Fs="End of central directory not found",Ms="End of Zip64 central directory locator not found",Us="Central directory header not found",Hs="Local file header not found",Ws="Zip64 extra field not found",Bs="File contains encrypted entry",js="Encryption method not supported",gt="Compression method not supported",bt="Split zip file",qs="Overlapping entry found",Pn="utf-8",kn="cp437",to=[[Ds,pe],[Ps,pe],[ks,pe],[pt,le]],no={[le]:{getValue:H,bytes:4},[pe]:{getValue:ye,bytes:8}};class Gs{constructor(t,e={}){Object.assign(this,{reader:new Ss(t),options:e,config:Vn(),readRanges:[]})}async*getEntriesGenerator(t={}){const e=this;let{reader:n}=e;const{config:r}=e;if(await De(n),(n.size===j||!n.readUint8Array)&&(n=new It(await new Response(n.readable).blob()),await De(n)),n.size<te)throw new Error(Ye);n.chunkSize=fi(r);const i=await fo(n,qr,n.size,te,le*16);if(!i){const x=await G(n,0,4),S=B(x);throw H(S)==Gn?new Error(bt):new Error(Fs)}const a=B(i);let o=H(a,12),c=H(a,16);const h=i.offset,d=Y(a,20),m=h+te+d;let w=Y(a,4);const T=n.lastDiskNumber||0;let A=Y(a,6),u=Y(a,8),l=0,f=0;if(c==pe||o==pe||u==le||A==le){const x=await G(n,i.offset-nt,nt),S=B(x);if(H(S,0)==Gr){c=ye(S,8);let I=await G(n,c,st,-1),R=B(I);const D=i.offset-nt-st;if(H(R,0)!=ln&&c!=D){const k=c;c=D,c>k&&(l=c-k),I=await G(n,c,st,-1),R=B(I)}if(H(R,0)!=ln)throw new Error(Ms);w==le&&(w=H(R,16)),A==le&&(A=H(R,20)),u==le&&(u=ye(R,32)),o==pe&&(o=ye(R,40)),c-=o}}if(c>=n.size&&(l=n.size-c-o-te,c=n.size-o-te),T!=w)throw new Error(bt);if(c<0)throw new Error(Ye);let p=0,g=await G(n,c,o,A),C=B(g);if(o){const x=i.offset-o;if(H(C,p)!=cn&&c!=x){const S=c;c=x,c>S&&(l+=c-S),g=await G(n,c,o,A),C=B(g)}}const O=i.offset-c-(n.lastDiskOffset||0);if(o!=O&&O>=0&&(o=O,g=await G(n,c,o,A),C=B(g)),c<0||c>=n.size)throw new Error(Ye);const b=V(e,t,Ua),_=V(e,t,Ha);for(let x=0;x<u;x++){const S=new ro(n,r,e.options);if(H(C,p)!=cn)throw new Error(Us);Ys(S,C,p+6);const I=!!S.bitFlag.languageEncodingFlag,R=p+46,D=R+S.filenameLength,k=D+S.extraFieldLength,P=Y(C,p+4),U=P>>8==0,F=P>>8==3,q=g.subarray(R,D),N=Y(C,p+32),K=k+N,L=g.subarray(k,K),M=I,ve=I,xe=H(C,p+38),ee=U&&(be(C,p+38)&hn)==hn||F&&(xe>>16&ni)==si||q.length&&q.at(-1)==pn.charCodeAt(0),Q=F&&(xe>>16&ri)!=0,Pt=H(C,p+42)+l;Object.assign(S,{versionMadeBy:P,msDosCompatible:U,compressedSize:0,uncompressedSize:0,commentLength:N,directory:ee,offset:Pt,diskNumberStart:Y(C,p+34),internalFileAttributes:Y(C,p+36),externalFileAttributes:xe,rawFilename:q,filenameUTF8:M,commentUTF8:ve,rawExtraField:g.subarray(D,k),executable:Q}),S.internalFileAttribute=S.internalFileAttributes,S.externalFileAttribute=S.externalFileAttributes;const kt=V(e,t,Wa)||Ge,Lt=M?Pn:b||kn,vt=ve?Pn:_||kn;let Fe=kt(q,Lt);Fe===j&&(Fe=Ge(q,Lt));let Qe=kt(L,vt);Qe===j&&(Qe=Ge(L,vt)),Object.assign(S,{rawComment:L,filename:Fe,comment:Qe,directory:ee||Fe.endsWith(pn)}),f=Math.max(Pt,f),Vs(S,S,C,p+6),S.zipCrypto=S.encrypted&&!S.extraFieldAES;const Te=new Dn(S);Te.getData=(Me,Ue)=>S.getData(Me,Te,e.readRanges,Ue),Te.arrayBuffer=async Me=>{const Ue=new TransformStream,[Ks]=await Promise.all([new Response(Ue.readable).arrayBuffer(),S.getData(Ue,Te,e.readRanges,Me)]);return Ks},p=K;const{onprogress:Ft}=t;if(Ft)try{await Ft(x+1,u,new Dn(S))}catch{}yield Te}const E=V(e,t,Ba),y=V(e,t,ja);return E&&(e.prependedData=f>0?await G(n,0,f):new Uint8Array),e.comment=d?await G(n,h+te,d):new Uint8Array,y&&(e.appendedData=m<n.size?await G(n,m,n.size-m):new Uint8Array),!0}async getEntries(t={}){const e=[];for await(const n of this.getEntriesGenerator(t))e.push(n);return e}async close(){}}class so{constructor(t={}){const{readable:e,writable:n}=new TransformStream,r=new Gs(e,t).getEntriesGenerator();this.readable=new ReadableStream({async pull(i){const{done:a,value:o}=await r.next();if(a)return i.close();const c={...o,readable:(function(){const{readable:h,writable:d}=new TransformStream;if(o.getData)return o.getData(d),h})()};delete c.getData,i.enqueue(c)}}),this.writable=n}}class ro{constructor(t,e,n){Object.assign(this,{reader:t,config:e,options:n})}async getData(t,e,n,r={}){const i=this,{reader:a,offset:o,diskNumberStart:c,extraFieldAES:h,extraFieldZip64:d,compressionMethod:m,config:w,bitFlag:T,signature:A,rawLastModDate:u,uncompressedSize:l,compressedSize:f}=i,{dataDescriptor:p}=T,g=e.localDirectory={},C=await G(a,o,rt,c),O=B(C);let b=V(i,r,qa),_=V(i,r,Ga);const E=V(i,r,Ya);if(b=b&&b.length&&b,_=_&&_.length&&_,h&&h.originalCompressionMethod!=Wr)throw new Error(gt);if(m!=Hr&&m!=Ur&&!E)throw new Error(gt);if(H(O,0)!=Br)throw new Error(Hs);Ys(g,O,4);const{extraFieldLength:y,filenameLength:x,lastAccessDate:S,creationDate:I}=g;g.rawExtraField=y?await G(a,o+rt+x,y,c):new Uint8Array,Vs(i,g,O,4,!0),Object.assign(e,{lastAccessDate:S,creationDate:I});const R=i.encrypted&&g.encrypted&&!E,D=R&&!h;if(E||(e.zipCrypto=D),R){if(!D&&h.strength===j)throw new Error(js);if(!b&&!_)throw new Error(Bs)}const k=o+rt+x+y,P=f,U=a.readable;Object.assign(U,{diskNumberStart:c,offset:k,size:P});const F=V(i,r,Va),q=V(i,r,Za);let N=V(i,r,Xa);const K=V(i,r,Ka);K&&(N=!0);const{onstart:L,onprogress:M,onend:ve}=r,xe={options:{codecType:fs,password:b,rawPassword:_,zipCrypto:D,encryptionStrength:h&&h.strength,signed:V(i,r,$a)&&!E,passwordVerification:D&&(p?u>>>8&255:A>>>24&255),outputSize:l,signature:A,compressed:m!=0&&!E,encrypted:i.encrypted&&!E,useWebWorkers:V(i,r,Ja),useCompressionStream:V(i,r,Qa),transferStreams:V(i,r,za),checkPasswordOnly:q},config:w,streamOptions:{signal:F,size:P,onstart:L,onprogress:M,onend:ve}};N&&await lo({reader:a,fileEntry:e,offset:o,diskNumberStart:c,signature:A,compressedSize:f,uncompressedSize:l,dataOffset:k,dataDescriptor:p||g.bitFlag.dataDescriptor,extraFieldZip64:d||g.extraFieldZip64,readRanges:n});let ee;try{if(!K){q&&(t=new WritableStream),t=new Rs(t),await De(t,E?f:l),{writable:ee}=t;const{outputSize:Q}=await Xi({readable:U,writable:ee},xe);if(t.size+=Q,Q!=(E?f:l))throw new Error(Rt)}}catch(Q){if(Q.outputSize!==j&&(t.size+=Q.outputSize),!q||Q.message!=xt)throw Q}finally{!V(i,r,eo)&&ee&&!ee.locked&&await ee.getWriter().close()}return q||K?j:t.getData?t.getData():ee}}function Ys(s,t,e){const n=s.rawBitFlag=Y(t,e+2),r=(n&un)==un,i=H(t,e+6);Object.assign(s,{encrypted:r,version:Y(t,e),bitFlag:{level:(n&ti)>>1,dataDescriptor:(n&dn)==dn,languageEncodingFlag:(n&_n)==_n},rawLastModDate:i,lastModDate:uo(i),filenameLength:Y(t,e+22),extraFieldLength:Y(t,e+24)})}function Vs(s,t,e,n,r){const{rawExtraField:i}=t,a=t.extraField=new Map,o=B(new Uint8Array(i));let c=0;try{for(;c<i.length;){const f=Y(o,c),p=Y(o,c+2);a.set(f,{type:f,data:i.slice(c+4,c+4+p)}),c+=4+p}}catch{}const h=Y(e,n+4);Object.assign(t,{signature:H(e,n+ii),compressedSize:H(e,n+ai),uncompressedSize:H(e,n+oi)});const d=a.get(Zr);d&&(io(d,t),t.extraFieldZip64=d);const m=a.get(Qr);m&&(Ln(m,Os,Cs,t,s),t.extraFieldUnicodePath=m);const w=a.get(zr);w&&(Ln(w,Is,Ns,t,s),t.extraFieldUnicodeComment=w);const T=a.get(Kr);T?(ao(T,t,h),t.extraFieldAES=T):t.compressionMethod=h;const A=a.get(Xr);A&&(oo(A,t),t.extraFieldNTFS=A);const u=a.get(Jr);u&&(co(u,t,r),t.extraFieldExtendedTimestamp=u);const l=a.get(ei);l&&(t.extraFieldUSDZ=l)}function io(s,t){t.zip64=!0;const e=B(s.data),n=to.filter(([r,i])=>t[r]==i);for(let r=0,i=0;r<n.length;r++){const[a,o]=n[r];if(t[a]==o){const c=no[o];t[a]=s[a]=c.getValue(e,i),i+=c.bytes}else if(s[a])throw new Error(Ws)}}function Ln(s,t,e,n,r){const i=B(s.data),a=new Ve;a.append(r[e]);const o=B(new Uint8Array(4));o.setUint32(0,a.get(),!0);const c=H(i,1);Object.assign(s,{version:be(i,0),[t]:Ge(s.data.subarray(5)),valid:!r.bitFlag.languageEncodingFlag&&c==H(o,0)}),s.valid&&(n[t]=s[t],n[t+"UTF8"]=!0)}function ao(s,t,e){const n=B(s.data),r=be(n,4);Object.assign(s,{vendorVersion:be(n,0),vendorId:be(n,2),strength:r,originalCompressionMethod:e,compressionMethod:Y(n,5)}),t.compressionMethod=s.compressionMethod}function oo(s,t){const e=B(s.data);let n=4,r;try{for(;n<s.data.length&&!r;){const i=Y(e,n),a=Y(e,n+2);i==$r&&(r=s.data.slice(n+4,n+4+a)),n+=4+a}}catch{}try{if(r&&r.length==24){const i=B(r),a=i.getBigUint64(0,!0),o=i.getBigUint64(8,!0),c=i.getBigUint64(16,!0);Object.assign(s,{rawLastModDate:a,rawLastAccessDate:o,rawCreationDate:c});const h=ct(a),d=ct(o),m=ct(c),w={lastModDate:h,lastAccessDate:d,creationDate:m};Object.assign(s,w),Object.assign(t,w)}}catch{}}function co(s,t,e){const n=B(s.data),r=be(n,0),i=[],a=[];e?((r&1)==1&&(i.push(mt),a.push(wt)),(r&2)==2&&(i.push(Ls),a.push(ya)),(r&4)==4&&(i.push(vs),a.push(Ea))):s.data.length>=5&&(i.push(mt),a.push(wt));let o=1;i.forEach((c,h)=>{if(s.data.length>=o+4){const d=H(n,o);t[c]=s[c]=new Date(d*1e3);const m=a[h];s[m]=d}o+=4})}async function lo({reader:s,fileEntry:t,offset:e,diskNumberStart:n,signature:r,compressedSize:i,uncompressedSize:a,dataOffset:o,dataDescriptor:c,extraFieldZip64:h,readRanges:d}){let m=0;if(n)for(let A=0;A<n;A++){const u=s.readers[A];m+=u.size}let w=0;if(c&&(h?w=Vr:w=Yr),w){const A=await G(s,o+i,w+fn,n);if(H(B(A),0)==jr){const l=H(B(A),4);let f,p;h?(f=ye(B(A),8),p=ye(B(A),16)):(f=H(B(A),8),p=H(B(A),12)),(t.encrypted&&!t.zipCrypto||l==r)&&f==i&&p==a&&(w+=fn)}}const T={start:m+e,end:m+o+i+w,fileEntry:t};for(const A of d)if(A.fileEntry!=t&&T.start>=A.start&&T.start<A.end){const u=new Error(qs);throw u.overlappingEntry=A.fileEntry,u}d.push(T)}async function fo(s,t,e,n,r){const i=new Uint8Array(4),a=B(i);_o(a,0,t);const o=n+r;return await c(n)||await c(Math.min(o,e));async function c(h){const d=e-h,m=await G(s,d,h);for(let w=m.length-n;w>=0;w--)if(m[w]==i[0]&&m[w+1]==i[1]&&m[w+2]==i[2]&&m[w+3]==i[3])return{offset:d+w,buffer:m.slice(w,w+n).buffer}}}function V(s,t,e){return t[e]===j?s.options[e]:t[e]}function uo(s){const t=(s&4294901760)>>16,e=s&65535;try{return new Date(1980+((t&65024)>>9),((t&480)>>5)-1,t&31,(e&63488)>>11,(e&2016)>>5,(e&31)*2,0)}catch{}}function ct(s){return new Date(Number(s/BigInt(1e4)-BigInt(116444736e5)))}function be(s,t){return s.getUint8(t)}function Y(s,t){return s.getUint16(t,!0)}function H(s,t){return s.getUint32(t,!0)}function ye(s,t){return Number(s.getBigUint64(t,!0))}function _o(s,t,e){s.setUint32(t,e,!0)}function B(s){return new DataView(s.buffer)}Zn({Inflate:Mr});const ho=Object.freeze(Object.defineProperty({__proto__:null,BlobReader:It,BlobWriter:ws,Data64URIReader:aa,Data64URIWriter:oa,ERR_BAD_FORMAT:Ye,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Us,ERR_ENCRYPTED:Bs,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Ms,ERR_EOCDR_NOT_FOUND:Fs,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Ws,ERR_HTTP_RANGE:Le,ERR_INVALID_PASSWORD:yt,ERR_INVALID_SIGNATURE:Et,ERR_INVALID_UNCOMPRESSED_SIZE:Rt,ERR_ITERATOR_COMPLETED_TOO_SOON:hs,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Hs,ERR_OVERLAPPING_ENTRY:qs,ERR_SPLIT_ZIP_FILE:bt,ERR_UNSUPPORTED_COMPRESSION:gt,ERR_UNSUPPORTED_ENCRYPTION:js,ERR_WRITER_NOT_INITIALIZED:ps,GenericReader:Ss,GenericWriter:Rs,HttpRangeReader:da,HttpReader:Ts,Reader:_e,SplitDataReader:Dt,SplitDataWriter:Ke,SplitZipReader:ma,SplitZipWriter:wa,TextReader:ca,TextWriter:la,Uint8ArrayReader:_a,Uint8ArrayWriter:ha,Writer:Ct,ZipReader:Gs,ZipReaderStream:so,configure:Zn,getMimeType:ui,initStream:De,readUint8Array:G,terminateWorkers:Ji},Symbol.toStringTag,{value:"Module"})),Ae=ho;class po{constructor(t,e){Ae.configure({baseURL:self.location.href}),this._zipReader=new Ae.ZipReader(new Ae.HttpReader(this._resolveTraceURI(t),{mode:"cors",preventHeadRequest:!0}),{useWebWorkers:!1}),this._entriesPromise=this._zipReader.getEntries({onprogress:e}).then(n=>{const r=new Map;for(const i of n)r.set(i.filename,i);return r})}_resolveTraceURI(t){return t.startsWith("https://www.dropbox.com/")?"https://dl.dropboxusercontent.com/"+t.substring(24):t}isLive(){return!1}async entryNames(){return[...(await this._entriesPromise).keys()]}async hasEntry(t){return(await this._entriesPromise).has(t)}async readText(t){var i;const n=(await this._entriesPromise).get(t);if(!n)return;const r=new Ae.TextWriter;return await((i=n.getData)==null?void 0:i.call(n,r)),r.getData()}async readBlob(t){const n=(await this._entriesPromise).get(t);if(!n)return;const r=new Ae.BlobWriter;return await n.getData(r),r.getData()}}class mo{constructor(t){this._entriesPromise=this._readFile(t).then(async e=>{if(!e)throw new Error("File not found");const n=await e.json(),r=new Map;for(const i of n.entries)r.set(i.name,i.path);return r})}isLive(){return!0}async entryNames(){return[...(await this._entriesPromise).keys()]}async hasEntry(t){return(await this._entriesPromise).has(t)}async readText(t){const e=await this._readEntry(t);return e==null?void 0:e.text()}async readBlob(t){const e=await this._readEntry(t);return(e==null?void 0:e.status)===200?await(e==null?void 0:e.blob()):void 0}async _readEntry(t){const n=(await this._entriesPromise).get(t);if(n)return this._readFile(n)}async _readFile(t){const e=await fetch(t);if(e.status!==404)return e}}self.addEventListener("install",function(s){self.skipWaiting()});self.addEventListener("activate",function(s){s.waitUntil(self.clients.claim())});const wo=new URL(self.registration.scope).pathname,Ee=new Map,Xe=new Map,vn=self.registration.scope.startsWith("https://");function go(){Ee.clear(),Xe.clear()}async function Fn(s,t,e){try{return{loadedTrace:await Zs(s,t,e)}}catch(n){return{errorResponse:new Response(JSON.stringify({error:n==null?void 0:n.message}),{status:500,headers:{"Content-Type":"application/json"}})}}}function Zs(s,t,e){const n=t.searchParams.get("trace");if(!n)throw new Error("trace parameter is missing");Xe.set(s,n);const r=Ee.get(n);if(r)return r;const i=bo(n,e);return Ee.set(n,i),i.catch(()=>Ee.delete(n)),i}async function bo(s,t){var r;await xo();const e=new pr;try{const[i,a]=wr(t,[.5,.4,.1]),o=So(s)||s.endsWith("traces.dir")?new mo(s):new po(s,i);await e.load(o,void 0,a)}catch(i){if(console.error(i),(r=i==null?void 0:i.message)!=null&&r.includes("Cannot find .trace file")&&await e.hasEntry("index.html"))throw new Error("Could not load trace. Did you upload a Playwright HTML report instead? Make sure to extract the archive first and then double-click the index.html file or put it on a web server.");if(i instanceof Bn)throw new Error(`Could not load trace from ${s}. ${i.message}`);let a=`Could not load trace from ${s}. Make sure a valid Playwright Trace is accessible over this url.`;const o=await navigator.permissions.query({name:"local-network-access"}).catch(()=>{});throw o&&o.state!=="granted"&&(a+=`
If your trace is in a local or private network, please grant permission for Local Network Access.`),new Error(a)}const n=new Xs(e.storage(),i=>e.resourceForSha1(i));return{traceLoader:e,snapshotServer:n}}async function yo(s){const t=s.request;if(t.url.startsWith("chrome-extension://"))return fetch(t);const e=new URL(t.url);let n;if(t.url.startsWith(self.registration.scope)&&(n=e.pathname.substring(wo.length-1)),n==="/restartServiceWorker")return go(),new Response(null,{status:200});if(n==="/ping")return new Response(null,{status:200});const r=!!s.resultingClientId,i=s.clientId?await self.clients.get(s.clientId):void 0;if(r&&!(n!=null&&n.startsWith("/sha1/"))){if(n!=null&&n.startsWith("/snapshot/")){const{errorResponse:a,loadedTrace:o}=await Fn(s.resultingClientId,e,To);if(a)return a;const c=n.substring(10),h=o.snapshotServer.serveSnapshot(c,e.searchParams,e.href);return vn&&h.headers.set("Content-Security-Policy","upgrade-insecure-requests"),h}return fetch(s.request)}if(!n){if(!i)return new Response("Sub-resource without a client",{status:500});const{snapshotServer:a}=await Zs(i.id,new URL(i.url),Mn(i));if(!a)return new Response(null,{status:404});const o=[t.url];return vn&&t.url.startsWith("https://")&&o.push(t.url.replace(/^https/,"http")),a.serveResource(o,t.method,i.url)}if(n==="/contexts"||n.startsWith("/snapshotInfo/")||n.startsWith("/closest-screenshot/")||n.startsWith("/sha1/")){if(!i)return new Response("Sub-resource without a client",{status:500});const{errorResponse:a,loadedTrace:o}=await Fn(i.id,e,Mn(i));if(a)return a;if(n==="/contexts")return new Response(JSON.stringify(o.traceLoader.contextEntries),{status:200,headers:{"Content-Type":"application/json"}});if(n.startsWith("/snapshotInfo/")){const c=n.substring(14);return o.snapshotServer.serveSnapshotInfo(c,e.searchParams)}if(n.startsWith("/closest-screenshot/")){const c=n.substring(20);return o.snapshotServer.serveClosestScreenshot(c,e.searchParams)}if(n.startsWith("/sha1/")){const c=await o.traceLoader.resourceForSha1(n.slice(6));return c?new Response(c,{status:200,headers:Eo(e.searchParams)}):new Response(null,{status:404})}}return fetch(s.request)}function Eo(s){const t=s.get("dn"),e=s.get("dct");if(!t)return;const n=new Headers;return n.set("Content-Disposition",`attachment; filename="attachment"; filename*=UTF-8''${encodeURIComponent(t)}`),e&&n.set("Content-Type",e),n}async function xo(){const s=await self.clients.matchAll(),t=new Set;for(const[e,n]of Xe){if(!s.find(r=>r.id===e)){Xe.delete(e);continue}t.add(n)}for(const e of Ee.keys())t.has(e)||Ee.delete(e)}function Mn(s){return(t,e)=>{s.postMessage({method:"progress",params:{done:t,total:e}})}}function To(s,t){}function So(s){const e=new URL(s,"http://localhost").searchParams.get("path");return!!(e!=null&&e.endsWith(".json"))}self.addEventListener("fetch",function(s){if(s.request.headers.get("x-pw-serviceworker")==="skip")return!1;s.respondWith(yo(s))});
scripts/node_modules/playwright-core/lib/vite/traceViewer/uiMode.BZQ54Kgt.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
.ui-mode-sidebar{background-color:var(--vscode-sideBar-background)}.ui-mode-sidebar>.settings-toolbar{border-top:1px solid var(--vscode-panel-border);cursor:pointer}.ui-mode-sidebar>.settings-view{margin:0 0 8px 23px}.ui-mode-sidebar .toolbar-button:not([disabled]) .codicon-play{color:var(--vscode-debugIcon-restartForeground)}.ui-mode-sidebar .toolbar-button:not([disabled]) .codicon-debug-stop{color:var(--vscode-debugIcon-stopForeground)}.ui-mode .section-toolbar{border-top:1px solid var(--vscode-panel-border)}.ui-mode .section-title{display:flex;flex:auto;flex-direction:row;align-items:center;font-size:11px;text-transform:uppercase;font-weight:700;text-overflow:ellipsis;overflow:hidden;padding:8px;height:30px}.ui-mode-sidebar img{flex:none;margin-left:6px;width:24px;height:24px}.ui-mode .disconnected{display:flex;align-items:center;justify-content:center;flex:auto;flex-direction:column;background-color:var(--vscode-editor-background);position:absolute;top:0;right:0;bottom:0;left:0;z-index:1000;line-height:24px}.disconnected .title{font-size:24px;font-weight:700;margin-bottom:30px}.status-line{flex:auto;white-space:nowrap;line-height:22px;padding-left:10px;display:flex;flex-direction:row;align-items:center;height:30px}.status-line>div{overflow:hidden;text-overflow:ellipsis}.status-line .status-line-failed{color:var(--vscode-testing-iconFailed)}.ui-mode-sidebar input[type=search]{flex:auto;padding:0 5px;line-height:24px;outline:none;margin:0 4px;border:none;color:var(--vscode-input-foreground);background-color:var(--vscode-input-background)}.ui-mode-sidebar select{flex:auto;padding:0 5px;height:24px;line-height:24px;outline:none;border:none;color:var(--vscode-input-foreground);background-color:var(--vscode-input-background)}:root{--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #616161;--vscode-disabledForeground: rgba(97, 97, 97, .5);--vscode-errorForeground: #a1260d;--vscode-descriptionForeground: #717171;--vscode-icon-foreground: #424242;--vscode-focusBorder: #0090f1;--vscode-textSeparator-foreground: rgba(0, 0, 0, .18);--vscode-textLink-foreground: #006ab1;--vscode-textLink-activeForeground: #006ab1;--vscode-textPreformat-foreground: #a31515;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(220, 220, 220, .4);--vscode-widget-shadow: rgba(0, 0, 0, .16);--vscode-input-background: #ffffff;--vscode-input-foreground: #616161;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(184, 184, 184, .31);--vscode-inputOption-activeBackground: rgba(0, 144, 241, .2);--vscode-inputOption-activeForeground: #000000;--vscode-input-placeholderForeground: #767676;--vscode-inputValidation-infoBackground: #d6ecf2;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #f6f5d2;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #f2dede;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #ffffff;--vscode-dropdown-border: #cecece;--vscode-checkbox-background: #ffffff;--vscode-checkbox-border: #cecece;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #007acc;--vscode-button-hoverBackground: #0062a3;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #5f6a79;--vscode-button-secondaryHoverBackground: #4c5561;--vscode-badge-background: #c4c4c4;--vscode-badge-foreground: #333333;--vscode-scrollbar-shadow: #dddddd;--vscode-scrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #e51400;--vscode-editorWarning-foreground: #bf8803;--vscode-editorInfo-foreground: #1a85ff;--vscode-editorHint-foreground: #6c6c6c;--vscode-sash-hoverBorder: #0090f1;--vscode-editor-background: #ffffff;--vscode-editor-foreground: #000000;--vscode-editorStickyScroll-background: #ffffff;--vscode-editorStickyScrollHover-background: #f0f0f0;--vscode-editorWidget-background: #f3f3f3;--vscode-editorWidget-foreground: #616161;--vscode-editorWidget-border: #c8c8c8;--vscode-quickInput-background: #f3f3f3;--vscode-quickInput-foreground: #616161;--vscode-quickInputTitle-background: rgba(0, 0, 0, .06);--vscode-pickerGroup-foreground: #0066bf;--vscode-pickerGroup-border: #cccedb;--vscode-keybindingLabel-background: rgba(221, 221, 221, .4);--vscode-keybindingLabel-foreground: #555555;--vscode-keybindingLabel-border: rgba(204, 204, 204, .4);--vscode-keybindingLabel-bottomBorder: rgba(187, 187, 187, .4);--vscode-editor-selectionBackground: #add6ff;--vscode-editor-inactiveSelectionBackground: #e5ebf1;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .5);--vscode-editor-findMatchBackground: #a8ac94;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(180, 180, 180, .3);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(173, 214, 255, .15);--vscode-editorHoverWidget-background: #f3f3f3;--vscode-editorHoverWidget-foreground: #616161;--vscode-editorHoverWidget-border: #c8c8c8;--vscode-editorHoverWidget-statusBarBackground: #e7e7e7;--vscode-editorLink-activeForeground: #0000ff;--vscode-editorInlayHint-foreground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-background: rgba(196, 196, 196, .3);--vscode-editorInlayHint-typeForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-typeBackground: rgba(196, 196, 196, .3);--vscode-editorInlayHint-parameterForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-parameterBackground: rgba(196, 196, 196, .3);--vscode-editorLightBulb-foreground: #ddb100;--vscode-editorLightBulbAutoFix-foreground: #007acc;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .4);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .3);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(34, 34, 34, .2);--vscode-list-focusOutline: #0090f1;--vscode-list-focusAndSelectionOutline: #90c2f9;--vscode-list-activeSelectionBackground: #0060c0;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #e4e6f1;--vscode-list-hoverBackground: #e8e8e8;--vscode-list-dropBackground: #d6ebff;--vscode-list-highlightForeground: #0066bf;--vscode-list-focusHighlightForeground: #bbe7ff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #b01011;--vscode-list-warningForeground: #855f00;--vscode-listFilterWidget-background: #f3f3f3;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .16);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #a9a9a9;--vscode-tree-tableColumnsBorder: rgba(97, 97, 97, .13);--vscode-tree-tableOddRowsBackground: rgba(97, 97, 97, .04);--vscode-list-deemphasizedForeground: #8e8e90;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #0060c0;--vscode-menu-foreground: #616161;--vscode-menu-background: #ffffff;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #0060c0;--vscode-menu-separatorBackground: #d4d4d4;--vscode-toolbar-hoverBackground: rgba(184, 184, 184, .31);--vscode-toolbar-activeBackground: rgba(166, 166, 166, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(10, 50, 100, .2);--vscode-editor-snippetFinalTabstopHighlightBorder: rgba(10, 50, 100, .5);--vscode-breadcrumb-foreground: rgba(97, 97, 97, .8);--vscode-breadcrumb-background: #ffffff;--vscode-breadcrumb-focusForeground: #4e4e4e;--vscode-breadcrumb-activeSelectionForeground: #4e4e4e;--vscode-breadcrumbPicker-background: #f3f3f3;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #c9c9c9;--vscode-minimap-selectionHighlight: #add6ff;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #bf8803;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(100, 100, 100, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(0, 0, 0, .3);--vscode-problemsErrorIcon-foreground: #e51400;--vscode-problemsWarningIcon-foreground: #bf8803;--vscode-problemsInfoIcon-foreground: #1a85ff;--vscode-charts-foreground: #616161;--vscode-charts-lines: rgba(97, 97, 97, .5);--vscode-charts-red: #e51400;--vscode-charts-blue: #1a85ff;--vscode-charts-yellow: #bf8803;--vscode-charts-orange: #d18616;--vscode-charts-green: #388a34;--vscode-charts-purple: #652d90;--vscode-editor-lineHighlightBorder: #eeeeee;--vscode-editor-rangeHighlightBackground: rgba(253, 255, 0, .2);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #000000;--vscode-editorWhitespace-foreground: rgba(51, 51, 51, .2);--vscode-editorIndentGuide-background: #d3d3d3;--vscode-editorIndentGuide-activeBackground: #939393;--vscode-editorLineNumber-foreground: #237893;--vscode-editorActiveLineNumber-foreground: #0b216f;--vscode-editorLineNumber-activeForeground: #0b216f;--vscode-editorRuler-foreground: #d3d3d3;--vscode-editorCodeLens-foreground: #919191;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #b9b9b9;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #ffffff;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .47);--vscode-editorGhostText-foreground: rgba(0, 0, 0, .47);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #bf8803;--vscode-editorOverviewRuler-infoForeground: #1a85ff;--vscode-editorBracketHighlight-foreground1: #0431fa;--vscode-editorBracketHighlight-foreground2: #319331;--vscode-editorBracketHighlight-foreground3: #7b3814;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #cea33d;--vscode-editorUnicodeHighlight-background: rgba(206, 163, 61, .08);--vscode-symbolIcon-arrayForeground: #616161;--vscode-symbolIcon-booleanForeground: #616161;--vscode-symbolIcon-classForeground: #d67e00;--vscode-symbolIcon-colorForeground: #616161;--vscode-symbolIcon-constantForeground: #616161;--vscode-symbolIcon-constructorForeground: #652d90;--vscode-symbolIcon-enumeratorForeground: #d67e00;--vscode-symbolIcon-enumeratorMemberForeground: #007acc;--vscode-symbolIcon-eventForeground: #d67e00;--vscode-symbolIcon-fieldForeground: #007acc;--vscode-symbolIcon-fileForeground: #616161;--vscode-symbolIcon-folderForeground: #616161;--vscode-symbolIcon-functionForeground: #652d90;--vscode-symbolIcon-interfaceForeground: #007acc;--vscode-symbolIcon-keyForeground: #616161;--vscode-symbolIcon-keywordForeground: #616161;--vscode-symbolIcon-methodForeground: #652d90;--vscode-symbolIcon-moduleForeground: #616161;--vscode-symbolIcon-namespaceForeground: #616161;--vscode-symbolIcon-nullForeground: #616161;--vscode-symbolIcon-numberForeground: #616161;--vscode-symbolIcon-objectForeground: #616161;--vscode-symbolIcon-operatorForeground: #616161;--vscode-symbolIcon-packageForeground: #616161;--vscode-symbolIcon-propertyForeground: #616161;--vscode-symbolIcon-referenceForeground: #616161;--vscode-symbolIcon-snippetForeground: #616161;--vscode-symbolIcon-stringForeground: #616161;--vscode-symbolIcon-structForeground: #616161;--vscode-symbolIcon-textForeground: #616161;--vscode-symbolIcon-typeParameterForeground: #616161;--vscode-symbolIcon-unitForeground: #616161;--vscode-symbolIcon-variableForeground: #007acc;--vscode-editorHoverWidget-highlightForeground: #0066bf;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(173, 214, 255, .3);--vscode-editorGutter-foldingControlForeground: #424242;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .25);--vscode-editor-wordHighlightStrongBackground: rgba(14, 99, 156, .25);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(26, 133, 255, .1);--vscode-peekViewTitleLabel-foreground: #000000;--vscode-peekViewTitleDescription-foreground: #616161;--vscode-peekView-border: #1a85ff;--vscode-peekViewResult-background: #f3f3f3;--vscode-peekViewResult-lineForeground: #646465;--vscode-peekViewResult-fileForeground: #1e1e1e;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #6c6c6c;--vscode-peekViewEditor-background: #f2f8fc;--vscode-peekViewEditorGutter-background: #f2f8fc;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(245, 216, 2, .87);--vscode-editorMarkerNavigationError-background: #e51400;--vscode-editorMarkerNavigationError-headerBackground: rgba(229, 20, 0, .1);--vscode-editorMarkerNavigationWarning-background: #bf8803;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(191, 136, 3, .1);--vscode-editorMarkerNavigationInfo-background: #1a85ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(26, 133, 255, .1);--vscode-editorMarkerNavigation-background: #ffffff;--vscode-editorSuggestWidget-background: #f3f3f3;--vscode-editorSuggestWidget-border: #c8c8c8;--vscode-editorSuggestWidget-foreground: #000000;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #0060c0;--vscode-editorSuggestWidget-highlightForeground: #0066bf;--vscode-editorSuggestWidget-focusHighlightForeground: #bbe7ff;--vscode-editorSuggestWidgetStatus-foreground: rgba(0, 0, 0, .5);--vscode-tab-activeBackground: #ffffff;--vscode-tab-unfocusedActiveBackground: #ffffff;--vscode-tab-inactiveBackground: #ececec;--vscode-tab-unfocusedInactiveBackground: #ececec;--vscode-tab-activeForeground: #333333;--vscode-tab-inactiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedActiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedInactiveForeground: rgba(51, 51, 51, .35);--vscode-tab-border: #f3f3f3;--vscode-tab-lastPinnedBorder: rgba(97, 97, 97, .19);--vscode-tab-activeModifiedBorder: #33aaee;--vscode-tab-inactiveModifiedBorder: rgba(51, 170, 238, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 170, 238, .7);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 170, 238, .25);--vscode-editorPane-background: #ffffff;--vscode-editorGroupHeader-tabsBackground: #f3f3f3;--vscode-editorGroupHeader-noTabsBackground: #ffffff;--vscode-editorGroup-border: #e7e7e7;--vscode-editorGroup-dropBackground: rgba(38, 119, 203, .18);--vscode-editorGroup-dropIntoPromptForeground: #616161;--vscode-editorGroup-dropIntoPromptBackground: #f3f3f3;--vscode-sideBySideEditor-horizontalBorder: #e7e7e7;--vscode-sideBySideEditor-verticalBorder: #e7e7e7;--vscode-panel-background: #ffffff;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #424242;--vscode-panelTitle-inactiveForeground: rgba(66, 66, 66, .75);--vscode-panelTitle-activeBorder: #424242;--vscode-panelInput-border: #dddddd;--vscode-panel-dropBorder: #424242;--vscode-panelSection-dropBackground: rgba(38, 119, 203, .18);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #004386;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #1a85ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #725102;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #2c2c2c;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #f3f3f3;--vscode-sideBarTitle-foreground: #6f6f6f;--vscode-sideBar-dropBackground: rgba(38, 119, 203, .18);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(97, 97, 97, .19);--vscode-titleBar-activeForeground: #333333;--vscode-titleBar-inactiveForeground: rgba(51, 51, 51, .6);--vscode-titleBar-activeBackground: #dddddd;--vscode-titleBar-inactiveBackground: rgba(221, 221, 221, .6);--vscode-menubar-selectionForeground: #333333;--vscode-menubar-selectionBackground: rgba(184, 184, 184, .31);--vscode-notifications-foreground: #616161;--vscode-notifications-background: #f3f3f3;--vscode-notificationLink-foreground: #006ab1;--vscode-notificationCenterHeader-background: #e7e7e7;--vscode-notifications-border: #e7e7e7;--vscode-notificationsErrorIcon-foreground: #e51400;--vscode-notificationsWarningIcon-foreground: #bf8803;--vscode-notificationsInfoIcon-foreground: #1a85ff;--vscode-commandCenter-foreground: #333333;--vscode-commandCenter-activeForeground: #333333;--vscode-commandCenter-activeBackground: rgba(184, 184, 184, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(97, 97, 97, .5);--vscode-editorCommentsWidget-unresolvedBorder: #1a85ff;--vscode-editorCommentsWidget-rangeBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(26, 133, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(26, 133, 255, .4);--vscode-editorGutter-commentRangeForeground: #d5d8e9;--vscode-debugToolBar-background: #f3f3f3;--vscode-debugIcon-startForeground: #388a34;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 102, .45);--vscode-editor-focusedStackFrameHighlightBackground: rgba(206, 231, 206, .45);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .4);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #444444;--vscode-settings-modifiedItemIndicator: #66afe0;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #ffffff;--vscode-settings-dropdownBorder: #cecece;--vscode-settings-dropdownListBorder: #c8c8c8;--vscode-settings-checkboxBackground: #ffffff;--vscode-settings-checkboxBorder: #cecece;--vscode-settings-textInputBackground: #ffffff;--vscode-settings-textInputForeground: #616161;--vscode-settings-textInputBorder: #cecece;--vscode-settings-numberInputBackground: #ffffff;--vscode-settings-numberInputForeground: #616161;--vscode-settings-numberInputBorder: #cecece;--vscode-settings-focusedRowBackground: rgba(232, 232, 232, .6);--vscode-settings-rowHoverBackground: rgba(232, 232, 232, .3);--vscode-settings-focusedRowBorder: rgba(0, 0, 0, .12);--vscode-terminal-foreground: #333333;--vscode-terminal-selectionBackground: #add6ff;--vscode-terminal-inactiveSelectionBackground: #e5ebf1;--vscode-terminalCommandDecoration-defaultBackground: rgba(0, 0, 0, .25);--vscode-terminalCommandDecoration-successBackground: #2090d3;--vscode-terminalCommandDecoration-errorBackground: #e51400;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #a8ac94;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(38, 119, 203, .18);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #e51400;--vscode-testing-peekHeaderBackground: rgba(229, 20, 0, .1);--vscode-testing-message\.error\.decorationForeground: #e51400;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(0, 0, 0, .5);--vscode-welcomePage-tileBackground: #f3f3f3;--vscode-welcomePage-tileHoverBackground: #dbdbdb;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .16);--vscode-welcomePage-progress\.background: #ffffff;--vscode-welcomePage-progress\.foreground: #006ab1;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #f1dfde;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(0, 0, 0, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #2090d3;--vscode-editorGutter-addedBackground: #48985d;--vscode-editorGutter-deletedBackground: #e51400;--vscode-minimapGutter-modifiedBackground: #2090d3;--vscode-minimapGutter-addedBackground: #48985d;--vscode-minimapGutter-deletedBackground: #e51400;--vscode-editorOverviewRuler-modifiedForeground: rgba(32, 144, 211, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 152, 93, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(229, 20, 0, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #be8700;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #e8e8e8;--vscode-notebook-focusedEditorBorder: #0090f1;--vscode-notebookStatusSuccessIcon-foreground: #388a34;--vscode-notebookStatusErrorIcon-foreground: #a1260d;--vscode-notebookStatusRunningIcon-foreground: #616161;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: rgba(200, 221, 241, .31);--vscode-notebook-selectedCellBorder: #e8e8e8;--vscode-notebook-focusedCellBorder: #0090f1;--vscode-notebook-inactiveFocusedCellBorder: #e8e8e8;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(0, 0, 0, .08);--vscode-notebook-cellInsertionIndicator: #0090f1;--vscode-notebookScrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-notebook-symbolHighlightBackground: rgba(253, 255, 0, .2);--vscode-notebook-cellEditorBackground: #f3f3f3;--vscode-notebook-editorBackground: #ffffff;--vscode-keybindingTable-headerBackground: rgba(97, 97, 97, .04);--vscode-keybindingTable-rowsBackground: rgba(97, 97, 97, .04);--vscode-scm-providerBorder: #c8c8c8;--vscode-searchEditor-textInputBorder: #cecece;--vscode-debugTokenExpression-name: #9b46b0;--vscode-debugTokenExpression-value: rgba(108, 108, 108, .8);--vscode-debugTokenExpression-string: #a31515;--vscode-debugTokenExpression-boolean: #0000ff;--vscode-debugTokenExpression-number: #098658;--vscode-debugTokenExpression-error: #e51400;--vscode-debugView-exceptionLabelForeground: #ffffff;--vscode-debugView-exceptionLabelBackground: #a31515;--vscode-debugView-stateLabelForeground: #616161;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #1a85ff;--vscode-debugConsole-warningForeground: #bf8803;--vscode-debugConsole-errorForeground: #a1260d;--vscode-debugConsole-sourceForeground: #616161;--vscode-debugConsoleInputIcon-foreground: #616161;--vscode-debugIcon-pauseForeground: #007acc;--vscode-debugIcon-stopForeground: #a1260d;--vscode-debugIcon-disconnectForeground: #a1260d;--vscode-debugIcon-restartForeground: #388a34;--vscode-debugIcon-stepOverForeground: #007acc;--vscode-debugIcon-stepIntoForeground: #007acc;--vscode-debugIcon-stepOutForeground: #007acc;--vscode-debugIcon-continueForeground: #007acc;--vscode-debugIcon-stepBackForeground: #007acc;--vscode-extensionButton-prominentBackground: #007acc;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #0062a3;--vscode-extensionIcon-starForeground: #df6100;--vscode-extensionIcon-verifiedForeground: #006ab1;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #b51e78;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #00bc00;--vscode-terminal-ansiYellow: #949800;--vscode-terminal-ansiBlue: #0451a5;--vscode-terminal-ansiMagenta: #bc05bc;--vscode-terminal-ansiCyan: #0598bc;--vscode-terminal-ansiWhite: #555555;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #cd3131;--vscode-terminal-ansiBrightGreen: #14ce14;--vscode-terminal-ansiBrightYellow: #b5ba00;--vscode-terminal-ansiBrightBlue: #0451a5;--vscode-terminal-ansiBrightMagenta: #bc05bc;--vscode-terminal-ansiBrightCyan: #0598bc;--vscode-terminal-ansiBrightWhite: #a5a5a5;--vscode-interactive-activeCodeBorder: #1a85ff;--vscode-interactive-inactiveCodeBorder: #e4e6f1;--vscode-gitDecoration-addedResourceForeground: #587c0c;--vscode-gitDecoration-modifiedResourceForeground: #895503;--vscode-gitDecoration-deletedResourceForeground: #ad0707;--vscode-gitDecoration-renamedResourceForeground: #007100;--vscode-gitDecoration-untrackedResourceForeground: #007100;--vscode-gitDecoration-ignoredResourceForeground: #8e8e90;--vscode-gitDecoration-stageModifiedResourceForeground: #895503;--vscode-gitDecoration-stageDeletedResourceForeground: #ad0707;--vscode-gitDecoration-conflictingResourceForeground: #ad0707;--vscode-gitDecoration-submoduleResourceForeground: #1258a7}:root.light-mode{color-scheme:light}:root.dark-mode{color-scheme:dark;--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #cccccc;--vscode-disabledForeground: rgba(204, 204, 204, .5);--vscode-errorForeground: #f48771;--vscode-descriptionForeground: rgba(204, 204, 204, .7);--vscode-icon-foreground: #c5c5c5;--vscode-focusBorder: #007fd4;--vscode-textSeparator-foreground: rgba(255, 255, 255, .18);--vscode-textLink-foreground: #3794ff;--vscode-textLink-activeForeground: #3794ff;--vscode-textPreformat-foreground: #d7ba7d;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(10, 10, 10, .4);--vscode-widget-shadow: rgba(0, 0, 0, .36);--vscode-input-background: #3c3c3c;--vscode-input-foreground: #cccccc;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(90, 93, 94, .5);--vscode-inputOption-activeBackground: rgba(0, 127, 212, .4);--vscode-inputOption-activeForeground: #ffffff;--vscode-input-placeholderForeground: #a6a6a6;--vscode-inputValidation-infoBackground: #063b49;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #352a05;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #5a1d1d;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #3c3c3c;--vscode-dropdown-foreground: #f0f0f0;--vscode-dropdown-border: #3c3c3c;--vscode-checkbox-background: #3c3c3c;--vscode-checkbox-foreground: #f0f0f0;--vscode-checkbox-border: #3c3c3c;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #0e639c;--vscode-button-hoverBackground: #1177bb;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #3a3d41;--vscode-button-secondaryHoverBackground: #45494e;--vscode-badge-background: #4d4d4d;--vscode-badge-foreground: #ffffff;--vscode-scrollbar-shadow: #000000;--vscode-scrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #f14c4c;--vscode-editorWarning-foreground: #cca700;--vscode-editorInfo-foreground: #3794ff;--vscode-editorHint-foreground: rgba(238, 238, 238, .7);--vscode-sash-hoverBorder: #007fd4;--vscode-editor-background: #1e1e1e;--vscode-editor-foreground: #d4d4d4;--vscode-editorStickyScroll-background: #1e1e1e;--vscode-editorStickyScrollHover-background: #2a2d2e;--vscode-editorWidget-background: #252526;--vscode-editorWidget-foreground: #cccccc;--vscode-editorWidget-border: #454545;--vscode-quickInput-background: #252526;--vscode-quickInput-foreground: #cccccc;--vscode-quickInputTitle-background: rgba(255, 255, 255, .1);--vscode-pickerGroup-foreground: #3794ff;--vscode-pickerGroup-border: #3f3f46;--vscode-keybindingLabel-background: rgba(128, 128, 128, .17);--vscode-keybindingLabel-foreground: #cccccc;--vscode-keybindingLabel-border: rgba(51, 51, 51, .6);--vscode-keybindingLabel-bottomBorder: rgba(68, 68, 68, .6);--vscode-editor-selectionBackground: #264f78;--vscode-editor-inactiveSelectionBackground: #3a3d41;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .15);--vscode-editor-findMatchBackground: #515c6a;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(58, 61, 65, .4);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(38, 79, 120, .25);--vscode-editorHoverWidget-background: #252526;--vscode-editorHoverWidget-foreground: #cccccc;--vscode-editorHoverWidget-border: #454545;--vscode-editorHoverWidget-statusBarBackground: #2c2c2d;--vscode-editorLink-activeForeground: #4e94ce;--vscode-editorInlayHint-foreground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-background: rgba(77, 77, 77, .6);--vscode-editorInlayHint-typeForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-typeBackground: rgba(77, 77, 77, .6);--vscode-editorInlayHint-parameterForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-parameterBackground: rgba(77, 77, 77, .6);--vscode-editorLightBulb-foreground: #ffcc00;--vscode-editorLightBulbAutoFix-foreground: #75beff;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .2);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .4);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(204, 204, 204, .2);--vscode-list-focusOutline: #007fd4;--vscode-list-activeSelectionBackground: #04395e;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #37373d;--vscode-list-hoverBackground: #2a2d2e;--vscode-list-dropBackground: #383b3d;--vscode-list-highlightForeground: #2aaaff;--vscode-list-focusHighlightForeground: #2aaaff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #f88070;--vscode-list-warningForeground: #cca700;--vscode-listFilterWidget-background: #252526;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .36);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #585858;--vscode-tree-tableColumnsBorder: rgba(204, 204, 204, .13);--vscode-tree-tableOddRowsBackground: rgba(204, 204, 204, .04);--vscode-list-deemphasizedForeground: #8c8c8c;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #04395e;--vscode-menu-foreground: #cccccc;--vscode-menu-background: #303031;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #04395e;--vscode-menu-separatorBackground: #606060;--vscode-toolbar-hoverBackground: rgba(90, 93, 94, .31);--vscode-toolbar-activeBackground: rgba(99, 102, 103, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(124, 124, 124, .3);--vscode-editor-snippetFinalTabstopHighlightBorder: #525252;--vscode-breadcrumb-foreground: rgba(204, 204, 204, .8);--vscode-breadcrumb-background: #1e1e1e;--vscode-breadcrumb-focusForeground: #e0e0e0;--vscode-breadcrumb-activeSelectionForeground: #e0e0e0;--vscode-breadcrumbPicker-background: #252526;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #676767;--vscode-minimap-selectionHighlight: #264f78;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #cca700;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(121, 121, 121, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(191, 191, 191, .2);--vscode-problemsErrorIcon-foreground: #f14c4c;--vscode-problemsWarningIcon-foreground: #cca700;--vscode-problemsInfoIcon-foreground: #3794ff;--vscode-charts-foreground: #cccccc;--vscode-charts-lines: rgba(204, 204, 204, .5);--vscode-charts-red: #f14c4c;--vscode-charts-blue: #3794ff;--vscode-charts-yellow: #cca700;--vscode-charts-orange: #d18616;--vscode-charts-green: #89d185;--vscode-charts-purple: #b180d7;--vscode-editor-lineHighlightBorder: #282828;--vscode-editor-rangeHighlightBackground: rgba(255, 255, 255, .04);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #aeafad;--vscode-editorWhitespace-foreground: rgba(227, 228, 226, .16);--vscode-editorIndentGuide-background: #404040;--vscode-editorIndentGuide-activeBackground: #707070;--vscode-editorLineNumber-foreground: #858585;--vscode-editorActiveLineNumber-foreground: #c6c6c6;--vscode-editorLineNumber-activeForeground: #c6c6c6;--vscode-editorRuler-foreground: #5a5a5a;--vscode-editorCodeLens-foreground: #999999;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #888888;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #1e1e1e;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .67);--vscode-editorGhostText-foreground: rgba(255, 255, 255, .34);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #cca700;--vscode-editorOverviewRuler-infoForeground: #3794ff;--vscode-editorBracketHighlight-foreground1: #ffd700;--vscode-editorBracketHighlight-foreground2: #da70d6;--vscode-editorBracketHighlight-foreground3: #179fff;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #bd9b03;--vscode-editorUnicodeHighlight-background: rgba(189, 155, 3, .15);--vscode-symbolIcon-arrayForeground: #cccccc;--vscode-symbolIcon-booleanForeground: #cccccc;--vscode-symbolIcon-classForeground: #ee9d28;--vscode-symbolIcon-colorForeground: #cccccc;--vscode-symbolIcon-constantForeground: #cccccc;--vscode-symbolIcon-constructorForeground: #b180d7;--vscode-symbolIcon-enumeratorForeground: #ee9d28;--vscode-symbolIcon-enumeratorMemberForeground: #75beff;--vscode-symbolIcon-eventForeground: #ee9d28;--vscode-symbolIcon-fieldForeground: #75beff;--vscode-symbolIcon-fileForeground: #cccccc;--vscode-symbolIcon-folderForeground: #cccccc;--vscode-symbolIcon-functionForeground: #b180d7;--vscode-symbolIcon-interfaceForeground: #75beff;--vscode-symbolIcon-keyForeground: #cccccc;--vscode-symbolIcon-keywordForeground: #cccccc;--vscode-symbolIcon-methodForeground: #b180d7;--vscode-symbolIcon-moduleForeground: #cccccc;--vscode-symbolIcon-namespaceForeground: #cccccc;--vscode-symbolIcon-nullForeground: #cccccc;--vscode-symbolIcon-numberForeground: #cccccc;--vscode-symbolIcon-objectForeground: #cccccc;--vscode-symbolIcon-operatorForeground: #cccccc;--vscode-symbolIcon-packageForeground: #cccccc;--vscode-symbolIcon-propertyForeground: #cccccc;--vscode-symbolIcon-referenceForeground: #cccccc;--vscode-symbolIcon-snippetForeground: #cccccc;--vscode-symbolIcon-stringForeground: #cccccc;--vscode-symbolIcon-structForeground: #cccccc;--vscode-symbolIcon-textForeground: #cccccc;--vscode-symbolIcon-typeParameterForeground: #cccccc;--vscode-symbolIcon-unitForeground: #cccccc;--vscode-symbolIcon-variableForeground: #75beff;--vscode-editorHoverWidget-highlightForeground: #2aaaff;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(38, 79, 120, .3);--vscode-editorGutter-foldingControlForeground: #c5c5c5;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .72);--vscode-editor-wordHighlightStrongBackground: rgba(0, 73, 114, .72);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(55, 148, 255, .1);--vscode-peekViewTitleLabel-foreground: #ffffff;--vscode-peekViewTitleDescription-foreground: rgba(204, 204, 204, .7);--vscode-peekView-border: #3794ff;--vscode-peekViewResult-background: #252526;--vscode-peekViewResult-lineForeground: #bbbbbb;--vscode-peekViewResult-fileForeground: #ffffff;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #ffffff;--vscode-peekViewEditor-background: #001f33;--vscode-peekViewEditorGutter-background: #001f33;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(255, 143, 0, .6);--vscode-editorMarkerNavigationError-background: #f14c4c;--vscode-editorMarkerNavigationError-headerBackground: rgba(241, 76, 76, .1);--vscode-editorMarkerNavigationWarning-background: #cca700;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(204, 167, 0, .1);--vscode-editorMarkerNavigationInfo-background: #3794ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(55, 148, 255, .1);--vscode-editorMarkerNavigation-background: #1e1e1e;--vscode-editorSuggestWidget-background: #252526;--vscode-editorSuggestWidget-border: #454545;--vscode-editorSuggestWidget-foreground: #d4d4d4;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #04395e;--vscode-editorSuggestWidget-highlightForeground: #2aaaff;--vscode-editorSuggestWidget-focusHighlightForeground: #2aaaff;--vscode-editorSuggestWidgetStatus-foreground: rgba(212, 212, 212, .5);--vscode-tab-activeBackground: #1e1e1e;--vscode-tab-unfocusedActiveBackground: #1e1e1e;--vscode-tab-inactiveBackground: #2d2d2d;--vscode-tab-unfocusedInactiveBackground: #2d2d2d;--vscode-tab-activeForeground: #ffffff;--vscode-tab-inactiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedActiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedInactiveForeground: rgba(255, 255, 255, .25);--vscode-tab-border: #252526;--vscode-tab-lastPinnedBorder: rgba(204, 204, 204, .2);--vscode-tab-activeModifiedBorder: #3399cc;--vscode-tab-inactiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 153, 204, .25);--vscode-editorPane-background: #1e1e1e;--vscode-editorGroupHeader-tabsBackground: #252526;--vscode-editorGroupHeader-noTabsBackground: #1e1e1e;--vscode-editorGroup-border: #444444;--vscode-editorGroup-dropBackground: rgba(83, 89, 93, .5);--vscode-editorGroup-dropIntoPromptForeground: #cccccc;--vscode-editorGroup-dropIntoPromptBackground: #252526;--vscode-sideBySideEditor-horizontalBorder: #444444;--vscode-sideBySideEditor-verticalBorder: #444444;--vscode-panel-background: #1e1e1e;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #e7e7e7;--vscode-panelTitle-inactiveForeground: rgba(231, 231, 231, .6);--vscode-panelTitle-activeBorder: #e7e7e7;--vscode-panel-dropBorder: #e7e7e7;--vscode-panelSection-dropBackground: rgba(83, 89, 93, .5);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #04395e;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #3794ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #7a6400;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #333333;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #252526;--vscode-sideBarTitle-foreground: #bbbbbb;--vscode-sideBar-dropBackground: rgba(83, 89, 93, .5);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(204, 204, 204, .2);--vscode-titleBar-activeForeground: #cccccc;--vscode-titleBar-inactiveForeground: rgba(204, 204, 204, .6);--vscode-titleBar-activeBackground: #3c3c3c;--vscode-titleBar-inactiveBackground: rgba(60, 60, 60, .6);--vscode-menubar-selectionForeground: #cccccc;--vscode-menubar-selectionBackground: rgba(90, 93, 94, .31);--vscode-notifications-foreground: #cccccc;--vscode-notifications-background: #252526;--vscode-notificationLink-foreground: #3794ff;--vscode-notificationCenterHeader-background: #303031;--vscode-notifications-border: #303031;--vscode-notificationsErrorIcon-foreground: #f14c4c;--vscode-notificationsWarningIcon-foreground: #cca700;--vscode-notificationsInfoIcon-foreground: #3794ff;--vscode-commandCenter-foreground: #cccccc;--vscode-commandCenter-activeForeground: #cccccc;--vscode-commandCenter-activeBackground: rgba(90, 93, 94, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(204, 204, 204, .5);--vscode-editorCommentsWidget-unresolvedBorder: #3794ff;--vscode-editorCommentsWidget-rangeBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(55, 148, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(55, 148, 255, .4);--vscode-editorGutter-commentRangeForeground: #37373d;--vscode-debugToolBar-background: #333333;--vscode-debugIcon-startForeground: #89d185;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 0, .2);--vscode-editor-focusedStackFrameHighlightBackground: rgba(122, 189, 122, .3);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .2);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #e7e7e7;--vscode-settings-modifiedItemIndicator: #0c7d9d;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #3c3c3c;--vscode-settings-dropdownForeground: #f0f0f0;--vscode-settings-dropdownBorder: #3c3c3c;--vscode-settings-dropdownListBorder: #454545;--vscode-settings-checkboxBackground: #3c3c3c;--vscode-settings-checkboxForeground: #f0f0f0;--vscode-settings-checkboxBorder: #3c3c3c;--vscode-settings-textInputBackground: #3c3c3c;--vscode-settings-textInputForeground: #cccccc;--vscode-settings-numberInputBackground: #3c3c3c;--vscode-settings-numberInputForeground: #cccccc;--vscode-settings-focusedRowBackground: rgba(42, 45, 46, .6);--vscode-settings-rowHoverBackground: rgba(42, 45, 46, .3);--vscode-settings-focusedRowBorder: rgba(255, 255, 255, .12);--vscode-terminal-foreground: #cccccc;--vscode-terminal-selectionBackground: #264f78;--vscode-terminal-inactiveSelectionBackground: #3a3d41;--vscode-terminalCommandDecoration-defaultBackground: rgba(255, 255, 255, .25);--vscode-terminalCommandDecoration-successBackground: #1b81a8;--vscode-terminalCommandDecoration-errorBackground: #f14c4c;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #515c6a;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(83, 89, 93, .5);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #f14c4c;--vscode-testing-peekHeaderBackground: rgba(241, 76, 76, .1);--vscode-testing-message\.error\.decorationForeground: #f14c4c;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(212, 212, 212, .5);--vscode-welcomePage-tileBackground: #252526;--vscode-welcomePage-tileHoverBackground: #2c2c2d;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .36);--vscode-welcomePage-progress\.background: #3c3c3c;--vscode-welcomePage-progress\.foreground: #3794ff;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #420b0d;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(255, 255, 255, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #1b81a8;--vscode-editorGutter-addedBackground: #487e02;--vscode-editorGutter-deletedBackground: #f14c4c;--vscode-minimapGutter-modifiedBackground: #1b81a8;--vscode-minimapGutter-addedBackground: #487e02;--vscode-minimapGutter-deletedBackground: #f14c4c;--vscode-editorOverviewRuler-modifiedForeground: rgba(27, 129, 168, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 126, 2, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(241, 76, 76, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #ffcc00;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #37373d;--vscode-notebook-focusedEditorBorder: #007fd4;--vscode-notebookStatusSuccessIcon-foreground: #89d185;--vscode-notebookStatusErrorIcon-foreground: #f48771;--vscode-notebookStatusRunningIcon-foreground: #cccccc;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: #37373d;--vscode-notebook-selectedCellBorder: #37373d;--vscode-notebook-focusedCellBorder: #007fd4;--vscode-notebook-inactiveFocusedCellBorder: #37373d;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(255, 255, 255, .15);--vscode-notebook-cellInsertionIndicator: #007fd4;--vscode-notebookScrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-notebook-symbolHighlightBackground: rgba(255, 255, 255, .04);--vscode-notebook-cellEditorBackground: #252526;--vscode-notebook-editorBackground: #1e1e1e;--vscode-keybindingTable-headerBackground: rgba(204, 204, 204, .04);--vscode-keybindingTable-rowsBackground: rgba(204, 204, 204, .04);--vscode-scm-providerBorder: #454545;--vscode-debugTokenExpression-name: #c586c0;--vscode-debugTokenExpression-value: rgba(204, 204, 204, .6);--vscode-debugTokenExpression-string: #ce9178;--vscode-debugTokenExpression-boolean: #4e94ce;--vscode-debugTokenExpression-number: #b5cea8;--vscode-debugTokenExpression-error: #f48771;--vscode-debugView-exceptionLabelForeground: #cccccc;--vscode-debugView-exceptionLabelBackground: #6c2022;--vscode-debugView-stateLabelForeground: #cccccc;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #3794ff;--vscode-debugConsole-warningForeground: #cca700;--vscode-debugConsole-errorForeground: #f48771;--vscode-debugConsole-sourceForeground: #cccccc;--vscode-debugConsoleInputIcon-foreground: #cccccc;--vscode-debugIcon-pauseForeground: #75beff;--vscode-debugIcon-stopForeground: #f48771;--vscode-debugIcon-disconnectForeground: #f48771;--vscode-debugIcon-restartForeground: #89d185;--vscode-debugIcon-stepOverForeground: #75beff;--vscode-debugIcon-stepIntoForeground: #75beff;--vscode-debugIcon-stepOutForeground: #75beff;--vscode-debugIcon-continueForeground: #75beff;--vscode-debugIcon-stepBackForeground: #75beff;--vscode-extensionButton-prominentBackground: #0e639c;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #1177bb;--vscode-extensionIcon-starForeground: #ff8e00;--vscode-extensionIcon-verifiedForeground: #3794ff;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #d758b3;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #0dbc79;--vscode-terminal-ansiYellow: #e5e510;--vscode-terminal-ansiBlue: #2472c8;--vscode-terminal-ansiMagenta: #bc3fbc;--vscode-terminal-ansiCyan: #11a8cd;--vscode-terminal-ansiWhite: #e5e5e5;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #f14c4c;--vscode-terminal-ansiBrightGreen: #23d18b;--vscode-terminal-ansiBrightYellow: #f5f543;--vscode-terminal-ansiBrightBlue: #3b8eea;--vscode-terminal-ansiBrightMagenta: #d670d6;--vscode-terminal-ansiBrightCyan: #29b8db;--vscode-terminal-ansiBrightWhite: #e5e5e5;--vscode-interactive-activeCodeBorder: #3794ff;--vscode-interactive-inactiveCodeBorder: #37373d;--vscode-gitDecoration-addedResourceForeground: #81b88b;--vscode-gitDecoration-modifiedResourceForeground: #e2c08d;--vscode-gitDecoration-deletedResourceForeground: #c74e39;--vscode-gitDecoration-renamedResourceForeground: #73c991;--vscode-gitDecoration-untrackedResourceForeground: #73c991;--vscode-gitDecoration-ignoredResourceForeground: #8c8c8c;--vscode-gitDecoration-stageModifiedResourceForeground: #e2c08d;--vscode-gitDecoration-stageDeletedResourceForeground: #c74e39;--vscode-gitDecoration-conflictingResourceForeground: #e4676b;--vscode-gitDecoration-submoduleResourceForeground: #8db9e2}.xterm-wrapper{padding-left:5px}.xterm-wrapper .xterm-viewport{background-color:var(--vscode-panel-background)!important;color:var(--vscode-foreground)!important}.filters{flex:none;display:flex;flex-direction:column;margin:2px 0}.filter-list{padding:0 10px 10px;-webkit-user-select:none;user-select:none}.filter-title,.filter-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:pointer}.filter-label{color:var(--vscode-disabledForeground)}.filter-summary{line-height:24px;margin-left:24px}.filter-summary .filter-label{margin-left:5px}.filter-entry{line-height:24px}.filter-entry label{display:flex;align-items:center;cursor:pointer}.filter-entry input{flex:none;display:flex;align-items:center;cursor:pointer}.filter-entry label div{overflow:hidden;text-overflow:ellipsis}.ui-mode-tree-item{flex:auto}.ui-mode-tree-item-title{flex:auto;text-overflow:ellipsis;overflow:hidden}.ui-mode-tree-item-time{flex:none;color:var(--vscode-editorCodeLens-foreground);margin:0 4px;-webkit-user-select:none;user-select:none}.tests-tree-view .tree-view-entry.selected .ui-mode-tree-item-time,.tests-tree-view .tree-view-entry.highlighted .ui-mode-tree-item-time{display:none}.tests-tree-view .tree-view-entry:not(.highlighted):not(.selected) .toolbar-button:not(.toggled){display:none}.tag{display:inline-block;padding:0 8px;font-size:12px;font-weight:500;line-height:18px;border:1px solid transparent;border-radius:2em;background-color:#8c959f;color:#fff;margin:0 10px;flex:none;font-weight:600}.tag-color-0{background-color:#ddf4ff;color:#0550ae;border:1px solid #218bff}.tag-color-1{background-color:#fff8c5;color:#7d4e00;border:1px solid #bf8700}.tag-color-2{background-color:#fbefff;color:#6e40c9;border:1px solid #a475f9}.tag-color-3{background-color:#ffeff7;color:#99286e;border:1px solid #e85aad}.tag-color-4{background-color:#fff0eb;color:#9e2f1c;border:1px solid #EA6045}.tag-color-5{background-color:#fff1e5;color:#9b4215;border:1px solid #e16f24}.dark-mode .tag-color-0{background-color:#051d4d;color:#80ccff;border:1px solid #218bff}.dark-mode .tag-color-1{background-color:#3b2300;color:#eac54f;border:1px solid #bf8700}.dark-mode .tag-color-2{background-color:#271052;color:#d2a8ff;border:1px solid #a475f9}.dark-mode .tag-color-3{background-color:#42062a;color:#ff9bce;border:1px solid #e85aad}.dark-mode .tag-color-4{background-color:#460701;color:#ffa28b;border:1px solid #EC6547}.dark-mode .tag-color-5{background-color:#471700;color:#ffa657;border:1px solid #e16f24}
scripts/node_modules/playwright-core/lib/vite/traceViewer/uiMode.Ut8wwJNp.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./assets/xtermModule-CsJ4vdCR.js","./xtermModule.DYP7pi_n.css"])))=>i.map(i=>d[i]);
import"./assets/urlMatch-BYQrIQwR.js";import{u as Ht,r as H,g as qt,_ as Yt,h as Qt,i as Xt,j as o,R as d,E as Jt,s as Rt,k as vt,l as Zt,t as Gt,m as te,n as Y,o as M,T as Bt,c as ee,p as q,a as se,W as ie,S as ne,q as oe,b as re,e as ae,f as le}from"./assets/defaultSettingsView-BNmKHKpQ.js";var ce={};class mt{constructor(t,e={}){this.isListing=!1,this._tests=new Map,this._rootSuite=new tt("","root"),this._options=e,this._reporter=t}reset(){this._rootSuite._entries=[],this._tests.clear()}dispatch(t){const{method:e,params:s}=t;if(e==="onConfigure"){this._onConfigure(s.config);return}if(e==="onProject"){this._onProject(s.project);return}if(e==="onBegin"){this._onBegin();return}if(e==="onTestBegin"){this._onTestBegin(s.testId,s.result);return}if(e==="onTestPaused"){this._onTestPaused(s.testId,s.resultId,s.errors);return}if(e==="onTestEnd"){this._onTestEnd(s.test,s.result);return}if(e==="onStepBegin"){this._onStepBegin(s.testId,s.resultId,s.step);return}if(e==="onAttach"){this._onAttach(s.testId,s.resultId,s.attachments);return}if(e==="onStepEnd"){this._onStepEnd(s.testId,s.resultId,s.step);return}if(e==="onError"){this._onError(s.error,s.workerInfo);return}if(e==="onStdIO"){this._onStdIO(s.type,s.testId,s.resultId,s.data,s.isBase64);return}if(e==="onEnd")return this._onEnd(s.result);if(e==="onExit")return this._onExit()}_onConfigure(t){var e,s;this._rootDir=t.rootDir,this._config=this._parseConfig(t),(s=(e=this._reporter).onConfigure)==null||s.call(e,this._config)}_onProject(t){let e=this._options.mergeProjects?this._rootSuite.suites.find(r=>r.project().name===t.name):void 0;e||(e=new tt(t.name,"project"),this._rootSuite._addSuite(e));const s=this._parseProject(t);e._project=s;let n=-1;this._options.mergeProjects&&(n=this._config.projects.findIndex(r=>r.name===t.name)),n===-1?this._config.projects.push(s):this._config.projects[n]=s;for(const r of t.suites)this._mergeSuiteInto(r,e)}_onBegin(){var t,e;(e=(t=this._reporter).onBegin)==null||e.call(t,this._rootSuite)}_onTestBegin(t,e){var r,a;const s=this._tests.get(t);this._options.clearPreviousResultsWhenTestBegins&&(s.results=[]);const n=s._createTestResult(e.id);n.retry=e.retry,n.workerIndex=e.workerIndex,n.parallelIndex=e.parallelIndex,n.setStartTimeNumber(e.startTime),(a=(r=this._reporter).onTestBegin)==null||a.call(r,s,n)}_onTestPaused(t,e,s){var a,p;const n=this._tests.get(t),r=n.results.find(c=>c._id===e);r.errors.push(...s),r.error=r.errors[0],(p=(a=this._reporter).onTestPaused)==null||p.call(a,n,r)}_onTestEnd(t,e){var r,a;const s=this._tests.get(t.testId);s.timeout=t.timeout,s.expectedStatus=t.expectedStatus;const n=s.results.find(p=>p._id===e.id);n.duration=e.duration,n.status=e.status,n.errors.push(...e.errors??[]),n.error=n.errors[0],e.attachments&&(n.attachments=this._parseAttachments(e.attachments)),e.annotations&&(this._absoluteAnnotationLocationsInplace(e.annotations),n.annotations=e.annotations,s.annotations=e.annotations),(a=(r=this._reporter).onTestEnd)==null||a.call(r,s,n),n._stepMap=new Map}_onStepBegin(t,e,s){var g,l;const n=this._tests.get(t),r=n.results.find(w=>w._id===e),a=s.parentStepId?r._stepMap.get(s.parentStepId):void 0,p=this._absoluteLocation(s.location),c=new ue(s,a,p,r);a?a.steps.push(c):r.steps.push(c),r._stepMap.set(s.id,c),(l=(g=this._reporter).onStepBegin)==null||l.call(g,n,r,c)}_onStepEnd(t,e,s){var p,c;const n=this._tests.get(t),r=n.results.find(g=>g._id===e),a=r._stepMap.get(s.id);a._endPayload=s,a.duration=s.duration,a.error=s.error,(c=(p=this._reporter).onStepEnd)==null||c.call(p,n,r,a)}_onAttach(t,e,s){this._tests.get(t).results.find(a=>a._id===e).attachments.push(...s.map(a=>({name:a.name,contentType:a.contentType,path:a.path,body:a.base64&&globalThis.Buffer?Buffer.from(a.base64,"base64"):void 0})))}_onError(t,e){var n,r;let s;if(e){const a=this._config.projects.find(p=>p.name===e.projectName);a&&(s={workerIndex:e.workerIndex,parallelIndex:e.parallelIndex,config:this._config,project:a})}(r=(n=this._reporter).onError)==null||r.call(n,t,s)}_onStdIO(t,e,s,n,r){var g,l,w,k;const a=r?globalThis.Buffer?Buffer.from(n,"base64"):atob(n):n,p=e?this._tests.get(e):void 0,c=p&&s?p.results.find(h=>h._id===s):void 0;t==="stdout"?(c==null||c.stdout.push(a),(l=(g=this._reporter).onStdOut)==null||l.call(g,a,p,c)):(c==null||c.stderr.push(a),(k=(w=this._reporter).onStdErr)==null||k.call(w,a,p,c))}async _onEnd(t){var e,s;await((s=(e=this._reporter).onEnd)==null?void 0:s.call(e,ge(t)))}_onExit(){var t,e;return(e=(t=this._reporter).onExit)==null?void 0:e.call(t)}_parseConfig(t){const e=me(t);return this._options.configOverrides&&(e.configFile=this._options.configOverrides.configFile,e.reportSlowTests=this._options.configOverrides.reportSlowTests,e.quiet=this._options.configOverrides.quiet,e.reporter=[...this._options.configOverrides.reporter]),e}_parseProject(t){return{metadata:t.metadata,name:t.name,outputDir:this._absolutePath(t.outputDir),repeatEach:t.repeatEach,retries:t.retries,testDir:this._absolutePath(t.testDir),testIgnore:ct(t.testIgnore),testMatch:ct(t.testMatch),timeout:t.timeout,grep:ct(t.grep),grepInvert:ct(t.grepInvert),dependencies:t.dependencies,teardown:t.teardown,snapshotDir:this._absolutePath(t.snapshotDir),ignoreSnapshots:t.ignoreSnapshots??!1,use:t.use}}_parseAttachments(t){return t.map(e=>({...e,body:e.base64&&globalThis.Buffer?Buffer.from(e.base64,"base64"):void 0}))}_mergeSuiteInto(t,e){let s=e.suites.find(n=>n.title===t.title);s||(s=new tt(t.title,e.type==="project"?"file":"describe"),e._addSuite(s)),s.location=this._absoluteLocation(t.location),t.entries.forEach(n=>{"testId"in n?this._mergeTestInto(n,s):this._mergeSuiteInto(n,s)})}_mergeTestInto(t,e){let s=this._options.mergeTestCases?e.tests.find(n=>n.title===t.title&&n.repeatEachIndex===t.repeatEachIndex):void 0;s||(s=new de(t.testId,t.title,this._absoluteLocation(t.location),t.repeatEachIndex),e._addTest(s),this._tests.set(s.id,s)),this._updateTest(t,s)}_updateTest(t,e){return e.id=t.testId,e.location=this._absoluteLocation(t.location),e.retries=t.retries,e.tags=t.tags??[],e.annotations=t.annotations??[],this._absoluteAnnotationLocationsInplace(e.annotations),e}_absoluteAnnotationLocationsInplace(t){for(const e of t)e.location&&(e.location=this._absoluteLocation(e.location))}_absoluteLocation(t){return t&&{...t,file:this._absolutePath(t.file)}}_absolutePath(t){if(t!==void 0)return this._options.resolvePath?this._options.resolvePath(this._rootDir,t):this._rootDir+"/"+t}}class tt{constructor(t,e){this._entries=[],this._requireFile="",this._parallelMode="none",this.title=t,this._type=e}get type(){return this._type}get suites(){return this._entries.filter(t=>t.type!=="test")}get tests(){return this._entries.filter(t=>t.type==="test")}entries(){return this._entries}allTests(){const t=[],e=s=>{for(const n of s.entries())n.type==="test"?t.push(n):e(n)};return e(this),t}titlePath(){const t=this.parent?this.parent.titlePath():[];return(this.title||this._type!=="describe")&&t.push(this.title),t}project(){var t;return this._project??((t=this.parent)==null?void 0:t.project())}_addTest(t){t.parent=this,this._entries.push(t)}_addSuite(t){t.parent=this,this._entries.push(t)}}class de{constructor(t,e,s,n){this.fn=()=>{},this.results=[],this.type="test",this.expectedStatus="passed",this.timeout=0,this.annotations=[],this.retries=0,this.tags=[],this.repeatEachIndex=0,this.id=t,this.title=e,this.location=s,this.repeatEachIndex=n}titlePath(){const t=this.parent?this.parent.titlePath():[];return t.push(this.title),t}outcome(){return pe(this)}ok(){const t=this.outcome();return t==="expected"||t==="flaky"||t==="skipped"}_createTestResult(t){const e=new he(this.results.length,t);return this.results.push(e),e}}class ue{constructor(t,e,s,n){this.duration=-1,this.steps=[],this._startTime=0,this.title=t.title,this.category=t.category,this.location=s,this.parent=e,this._startTime=t.startTime,this._result=n}titlePath(){var e;return[...((e=this.parent)==null?void 0:e.titlePath())||[],this.title]}get startTime(){return new Date(this._startTime)}set startTime(t){this._startTime=+t}get attachments(){var t,e;return((e=(t=this._endPayload)==null?void 0:t.attachments)==null?void 0:e.map(s=>this._result.attachments[s]))??[]}get annotations(){var t;return((t=this._endPayload)==null?void 0:t.annotations)??[]}}class he{constructor(t,e){this.parallelIndex=-1,this.workerIndex=-1,this.duration=-1,this.stdout=[],this.stderr=[],this.attachments=[],this.annotations=[],this.status="skipped",this.steps=[],this.errors=[],this._stepMap=new Map,this._startTime=0,this.retry=t,this._id=e}setStartTimeNumber(t){this._startTime=t}get startTime(){return new Date(this._startTime)}set startTime(t){this._startTime=+t}}const fe={argv:[],failOnFlakyTests:!1,forbidOnly:!1,fullyParallel:!1,globalSetup:null,globalTeardown:null,globalTimeout:0,grep:/.*/,grepInvert:null,maxFailures:0,metadata:{},preserveOutput:"always",projects:[],reporter:[[ce.CI?"dot":"list"]],reportSlowTests:{max:5,threshold:3e5},configFile:"",rootDir:"",quiet:!1,shard:null,tags:[],updateSnapshots:"missing",updateSourceMethod:"patch",version:"",workers:0,webServer:null};function ct(i){return i.map(t=>t.s!==void 0?t.s:new RegExp(t.r.source,t.r.flags))}function pe(i){let t=0,e=0,s=0;for(const n of i.results)n.status==="interrupted"||(n.status==="skipped"&&i.expectedStatus==="skipped"?++t:n.status==="skipped"||(n.status===i.expectedStatus?++e:++s));return e===0&&s===0?"skipped":s===0?"expected":e===0&&t===0?"unexpected":"flaky"}function ge(i){return{status:i.status,startTime:new Date(i.startTime),duration:i.duration}}function me(i){return{...fe,...i}}class _t{constructor(t,e,s,n,r,a){this._treeItemById=new Map,this._treeItemByTestId=new Map;const p=n&&[...n.values()].some(Boolean);this.pathSeparator=r,this.rootItem={kind:"group",subKind:"folder",id:t,title:"",location:{file:"",line:0,column:0},duration:0,parent:void 0,children:[],status:"none",hasLoadErrors:!1},this._treeItemById.set(t,this.rootItem);const c=(g,l,w,k)=>{for(const h of k==="tests"?[]:l.suites){if(!h.title){c(g,h,w,"all");continue}let I=w.children.find(u=>u.kind==="group"&&u.title===h.title);I||(I={kind:"group",subKind:"describe",id:"suite:"+l.titlePath().join("")+""+h.title,title:h.title,location:h.location,duration:0,parent:w,children:[],status:"none",hasLoadErrors:!1},this._addChild(w,I)),c(g,h,I,"all")}for(const h of k==="suites"?[]:l.tests){const I=h.title;let u=w.children.find(E=>E.kind!=="group"&&E.title===I);u||(u={kind:"case",id:"test:"+h.titlePath().join(""),title:I,parent:w,children:[],tests:[],location:h.location,duration:0,status:"none",project:void 0,test:void 0,tags:h.tags},this._addChild(w,u));const b=h.results[0];let x="none";(b==null?void 0:b[et])==="scheduled"?x="scheduled":(b==null?void 0:b[et])==="running"?x="running":(b==null?void 0:b.status)==="skipped"?x="skipped":(b==null?void 0:b.status)==="interrupted"?x="none":b&&h.outcome()!=="expected"?x="failed":b&&h.outcome()==="expected"&&(x="passed"),u.tests.push(h);const j={kind:"test",id:h.id,title:g.name,location:h.location,test:h,parent:u,children:[],status:x,duration:h.results.length?Math.max(0,h.results[0].duration):0,project:g};this._addChild(u,j),this._treeItemByTestId.set(h.id,j),u.duration=u.children.reduce((E,y)=>E+y.duration,0)}};for(const g of(e==null?void 0:e.suites)||[])if(!(p&&!n.get(g.title)))for(const l of g.suites)if(a){if(c(g.project(),l,this.rootItem,"suites"),l.tests.length){const w=this._defaultDescribeItem();c(g.project(),l,w,"tests")}}else{const w=this._fileItem(l.location.file.split(r),!0);c(g.project(),l,w,"all")}for(const g of s){if(!g.location)continue;const l=this._fileItem(g.location.file.split(r),!0);l.hasLoadErrors=!0}}_addChild(t,e){t.children.push(e),e.parent=t,this._treeItemById.set(e.id,e)}filterTree(t,e,s){const n=t.trim().toLowerCase().split(" "),r=[...e.values()].some(Boolean),a=c=>{const g=[...c.tests[0].titlePath(),...c.tests[0].tags].join(" ").toLowerCase();return!n.every(l=>g.includes(l))&&!c.tests.some(l=>s==null?void 0:s.has(l.id))?!1:(c.children=c.children.filter(l=>!r||(s==null?void 0:s.has(l.test.id))||e.get(l.status)),c.tests=c.children.map(l=>l.test),!!c.children.length)},p=c=>{const g=[];for(const l of c.children)l.kind==="case"?a(l)&&g.push(l):(p(l),(l.children.length||l.hasLoadErrors)&&g.push(l));c.children=g};p(this.rootItem)}_fileItem(t,e){if(t.length===0)return this.rootItem;const s=t.join(this.pathSeparator),n=this._treeItemById.get(s);if(n)return n;const r=this._fileItem(t.slice(0,t.length-1),!1),a={kind:"group",subKind:e?"file":"folder",id:s,title:t[t.length-1],location:{file:s,line:0,column:0},duration:0,parent:r,children:[],status:"none",hasLoadErrors:!1};return this._addChild(r,a),a}_defaultDescribeItem(){let t=this._treeItemById.get("<anonymous>");return t||(t={kind:"group",subKind:"describe",id:"<anonymous>",title:"<anonymous>",location:{file:"",line:0,column:0},duration:0,parent:this.rootItem,children:[],status:"none",hasLoadErrors:!1},this._addChild(this.rootItem,t)),t}sortAndPropagateStatus(){Ct(this.rootItem)}flattenForSingleProject(){const t=e=>{e.kind==="case"&&e.children.length===1?(e.project=e.children[0].project,e.test=e.children[0].test,e.children=[],this._treeItemByTestId.set(e.test.id,e)):e.children.forEach(t)};t(this.rootItem)}shortenRoot(){let t=this.rootItem;for(;t.children.length===1&&t.children[0].kind==="group"&&t.children[0].subKind==="folder";)t=t.children[0];t.location=this.rootItem.location,this.rootItem=t}fileNames(){const t=new Set,e=s=>{s.kind==="group"&&s.subKind==="file"?t.add(s.id):s.children.forEach(e)};return e(this.rootItem),[...t]}flatTreeItems(){const t=[],e=s=>{t.push(s),s.children.forEach(e)};return e(this.rootItem),t}treeItemById(t){return this._treeItemById.get(t)}collectTestIds(t){return _e(t)}}function Ct(i){for(const a of i.children)Ct(a);i.kind==="group"&&i.children.sort((a,p)=>a.location.file.localeCompare(p.location.file)||a.location.line-p.location.line);let t=i.children.length>0,e=i.children.length>0,s=!1,n=!1,r=!1;for(const a of i.children)e=e&&a.status==="skipped",t=t&&(a.status==="passed"||a.status==="skipped"),s=s||a.status==="failed",n=n||a.status==="running",r=r||a.status==="scheduled";n?i.status="running":r?i.status="scheduled":s?i.status="failed":e?i.status="skipped":t&&(i.status="passed")}function _e(i){const t=new Set,e=new Set,s=n=>{if(n.kind!=="test"&&n.kind!=="case"){n.children.forEach(s);return}let r=n;for(;r&&r.parent&&!(r.kind==="group"&&r.subKind==="file");)r=r.parent;e.add(r.location.file),n.kind==="case"?n.tests.forEach(a=>t.add(a.id)):t.add(n.id)};return s(i),{testIds:t,locations:e}}const et=Symbol("statusEx");class ve{constructor(t){this.loadErrors=[],this.progress={total:0,passed:0,failed:0,skipped:0},this._lastRunTestCount=0,this._receiver=new mt(this._createReporter(),{mergeProjects:!0,mergeTestCases:!0,resolvePath:jt(t.pathSeparator),clearPreviousResultsWhenTestBegins:!0}),this._options=t}_createReporter(){return{version:()=>"v2",onConfigure:t=>{this.config=t,this._lastRunReceiver=new mt({version:()=>"v2",onBegin:e=>{this._lastRunTestCount=e.allTests().length,this._lastRunReceiver=void 0}},{mergeProjects:!0,mergeTestCases:!1,resolvePath:jt(this._options.pathSeparator)}),this._lastRunReceiver.dispatch({method:"onConfigure",params:{config:t}})},onBegin:t=>{var e;if(this.rootSuite||(this.rootSuite=t),this._testResultsSnapshot){for(const s of this.rootSuite.allTests())s.results=((e=this._testResultsSnapshot)==null?void 0:e.get(s.id))||s.results;this._testResultsSnapshot=void 0}this.progress.total=this._lastRunTestCount,this.progress.passed=0,this.progress.failed=0,this.progress.skipped=0,this._options.onUpdate(!0)},onEnd:()=>{this._options.onUpdate(!0)},onTestBegin:(t,e)=>{e[et]="running",this._options.onUpdate()},onTestEnd:(t,e)=>{t.outcome()==="skipped"?++this.progress.skipped:t.outcome()==="unexpected"?++this.progress.failed:++this.progress.passed,e[et]=e.status,this._options.onUpdate()},onError:t=>this._handleOnError(t),printsToStdio:()=>!1}}processGlobalReport(t){const e=new mt({version:()=>"v2",onConfigure:s=>{this.config=s},onError:s=>this._handleOnError(s)});for(const s of t)e.dispatch(s)}processListReport(t){var s;const e=((s=this.rootSuite)==null?void 0:s.allTests())||[];this._testResultsSnapshot=new Map(e.map(n=>[n.id,n.results])),this._receiver.reset();for(const n of t)this._receiver.dispatch(n)}processTestReportEvent(t){var e,s,n;(s=(e=this._lastRunReceiver)==null?void 0:e.dispatch(t))==null||s.catch(()=>{}),(n=this._receiver.dispatch(t))==null||n.catch(()=>{})}_handleOnError(t){var e,s;this.loadErrors.push(t),(s=(e=this._options).onError)==null||s.call(e,t),this._options.onUpdate()}asModel(){return{rootSuite:this.rootSuite||new tt("","root"),config:this.config,loadErrors:this.loadErrors,progress:this.progress}}}function jt(i){return(t,e)=>{const s=[];for(const n of[...t.split(i),...e.split(i)]){const r=i==="\\"&&s.length===1&&s[0].endsWith(":"),a=!s.length;if(!(!n&&!a&&!r)&&n!=="."){if(n===".."){s.pop();continue}s.push(n)}}return s.join(i)}}const we=({source:i})=>{const[t,e]=Ht(),[s,n]=H.useState(qt()),[r]=H.useState(Yt(()=>import("./assets/xtermModule-CsJ4vdCR.js"),__vite__mapDeps([0,1]),import.meta.url).then(p=>p.default)),a=H.useRef(null);return H.useEffect(()=>(Qt(n),()=>Xt(n)),[]),H.useEffect(()=>{const p=i.write,c=i.clear;return(async()=>{const{Terminal:g,FitAddon:l}=await r,w=e.current;if(!w)return;const k=s==="dark-mode"?xe:be;if(a.current&&a.current.terminal.options.theme===k)return;a.current&&(w.textContent="");const h=new g({convertEol:!0,fontSize:13,scrollback:1e4,fontFamily:"monospace",theme:k}),I=new l;h.loadAddon(I);for(const u of i.pending)h.write(u);i.write=(u=>{i.pending.push(u),h.write(u)}),i.clear=()=>{i.pending=[],h.clear()},h.open(w),I.fit(),a.current={terminal:h,fitAddon:I}})(),()=>{i.clear=c,i.write=p}},[r,a,e,i,s]),H.useEffect(()=>{setTimeout(()=>{a.current&&(a.current.fitAddon.fit(),i.resize(a.current.terminal.cols,a.current.terminal.rows))},250)},[t,i]),o.jsx("div",{"data-testid":"output",className:"xterm-wrapper",style:{flex:"auto"},ref:e})},be={foreground:"#383a42",background:"#fafafa",cursor:"#383a42",black:"#000000",red:"#e45649",green:"#50a14f",yellow:"#c18401",blue:"#4078f2",magenta:"#a626a4",cyan:"#0184bc",white:"#a0a0a0",brightBlack:"#000000",brightRed:"#e06c75",brightGreen:"#98c379",brightYellow:"#d19a66",brightBlue:"#4078f2",brightMagenta:"#a626a4",brightCyan:"#0184bc",brightWhite:"#383a42",selectionBackground:"#d7d7d7",selectionForeground:"#383a42"},xe={foreground:"#f8f8f2",background:"#1e1e1e",cursor:"#f8f8f0",black:"#000000",red:"#ff5555",green:"#50fa7b",yellow:"#f1fa8c",blue:"#bd93f9",magenta:"#ff79c6",cyan:"#8be9fd",white:"#bfbfbf",brightBlack:"#4d4d4d",brightRed:"#ff6e6e",brightGreen:"#69ff94",brightYellow:"#ffffa5",brightBlue:"#d6acff",brightMagenta:"#ff92df",brightCyan:"#a4ffff",brightWhite:"#e6e6e6",selectionBackground:"#44475a",selectionForeground:"#f8f8f2"},Se=({filterText:i,setFilterText:t,statusFilters:e,setStatusFilters:s,projectFilters:n,setProjectFilters:r,onlyChanged:a,setOnlyChanged:p,testModel:c,runTests:g})=>{const[l,w]=d.useState(!1),k=d.useRef(null);d.useEffect(()=>{var u;(u=k.current)==null||u.focus()},[]);const h=[...e.entries()].filter(([u,b])=>b).map(([u])=>u).join(" ")||"all",I=[...n.entries()].filter(([u,b])=>b).map(([u])=>u).join(" ")||"all";return o.jsxs("div",{className:"filters",children:[o.jsx(Jt,{expanded:l,setExpanded:w,title:o.jsx("input",{ref:k,type:"search",placeholder:"Filter (e.g. text, @tag)",spellCheck:!1,value:i,onChange:u=>{t(u.target.value)},onKeyDown:u=>{u.key==="Enter"&&g()}})}),o.jsxs("div",{className:"filter-summary",title:"Status: "+h+`
Projects: `+I+(a?`
Only changed`:""),onClick:()=>w(!l),children:[o.jsx("span",{className:"filter-label",children:"Status:"})," ",h,o.jsx("span",{className:"filter-label",children:"Projects:"})," ",I,a&&o.jsx(o.Fragment,{children:o.jsx("span",{className:"filter-label",children:"Only changed"})})]}),l&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"hbox",style:{marginLeft:14,maxHeight:200,overflowY:"auto"},children:[o.jsx("div",{className:"filter-list",role:"list","data-testid":"status-filters",children:[...e.entries()].map(([u,b])=>o.jsx("div",{className:"filter-entry",role:"listitem",children:o.jsxs("label",{children:[o.jsx("input",{type:"checkbox",checked:b,onChange:()=>{const x=new Map(e);x.set(u,!x.get(u)),s(x)}}),o.jsx("div",{children:u})]})},u))}),o.jsx("div",{className:"filter-list",role:"list","data-testid":"project-filters",children:[...n.entries()].map(([u,b])=>o.jsx("div",{className:"filter-entry",role:"listitem",children:o.jsxs("label",{children:[o.jsx("input",{type:"checkbox",checked:b,onChange:()=>{var E;const x=new Map(n);x.set(u,!x.get(u)),r(x);const j=(E=c==null?void 0:c.config)==null?void 0:E.configFile;j&&Rt.setObject(j+":projects",[...x.entries()].filter(([y,W])=>W).map(([y])=>y))}}),o.jsx("div",{children:u||"untitled"})]})},u))})]}),o.jsx("div",{className:"filter-entry",style:{marginLeft:24},children:o.jsxs("label",{children:[o.jsx("input",{type:"checkbox",checked:a,onChange:()=>p(!a)}),o.jsx("div",{children:"Show only changed files"})]})})]})]})},Te=({tag:i,style:t,onClick:e})=>o.jsx("span",{className:vt("tag",`tag-color-${ke(i)}`),onClick:e,style:{margin:"6px 0 0 6px",...t},title:`Click to filter by tag: ${i}`,children:i});function ke(i){let t=0;for(let e=0;e<i.length;e++)t=i.charCodeAt(e)+((t<<8)-t);return Math.abs(t%6)}const je=Zt,ye=({filterText:i,testModel:t,testServerConnection:e,testTree:s,runTests:n,runningState:r,watchAll:a,watchedTreeIds:p,setWatchedTreeIds:c,isLoading:g,onItemSelected:l,requestedCollapseAllCount:w,requestedExpandAllCount:k,setFilterText:h,onRevealSource:I})=>{const[u,b]=d.useState({expandedItems:new Map}),[x,j]=d.useState(),[E,y]=d.useState(w),[W,st]=d.useState(k);d.useEffect(()=>{if(E!==w){u.expandedItems.clear();for(const T of s.flatTreeItems())u.expandedItems.set(T.id,!1);y(w),j(void 0),b({...u});return}if(W!==k){u.expandedItems.clear();for(const T of s.flatTreeItems())u.expandedItems.set(T.id,!0);st(k),j(void 0),b({...u});return}if(!r||r.itemSelectedByUser)return;let f;const C=T=>{var F;T.children.forEach(C),!f&&T.status==="failed"&&(T.kind==="test"&&r.testIds.has(T.test.id)||T.kind==="case"&&r.testIds.has((F=T.tests[0])==null?void 0:F.id))&&(f=T)};C(s.rootItem),f&&j(f.id)},[r,j,s,E,y,w,W,st,k,u,b]);const N=d.useMemo(()=>{if(x)return s.treeItemById(x)},[x,s]);d.useEffect(()=>{if(!t)return;const f=Ie(N,t);let C;(N==null?void 0:N.kind)==="test"?C=N.test:(N==null?void 0:N.kind)==="case"&&N.tests.length===1&&(C=N.tests[0]),l({treeItem:N,testCase:C,testFile:f})},[t,N,l]),d.useEffect(()=>{if(!g)if(a)e==null||e.watchNoReply({fileNames:s.fileNames()});else{const f=new Set;for(const C of p.value){const T=s.treeItemById(C),F=T==null?void 0:T.location.file;F&&f.add(F)}e==null||e.watchNoReply({fileNames:[...f]})}},[g,s,a,p,e]);const z=f=>{j(f.id),n("bounce-if-busy",s.collectTestIds(f))},V=(f,C)=>{if(f.preventDefault(),f.stopPropagation(),f.metaKey||f.ctrlKey){const T=i.split(" ");T.includes(C)?h(T.filter(F=>F!==C).join(" ").trim()):h((i+" "+C).trim())}else h((i.split(" ").filter(T=>!T.startsWith("@")).join(" ")+" "+C).trim())};return o.jsx(je,{name:"tests",treeState:u,setTreeState:b,rootItem:s.rootItem,dataTestId:"test-tree",render:f=>{const C=f.id.replace(/[^\w\d-_]/g,"-"),T=C+"-label",F=C+"-time";return o.jsxs("div",{className:"hbox ui-mode-tree-item","aria-labelledby":`${T} ${F}`,children:[o.jsxs("div",{id:T,className:"ui-mode-tree-item-title",children:[o.jsx("span",{children:f.title}),f.kind==="case"?f.tags.map(Q=>o.jsx(Te,{tag:Q.slice(1),onClick:dt=>V(dt,Q)},Q)):null]}),!!f.duration&&f.status!=="skipped"&&o.jsx("div",{id:F,className:"ui-mode-tree-item-time",children:te(f.duration)}),o.jsxs(Y,{noMinHeight:!0,noShadow:!0,children:[o.jsx(M,{icon:"play",title:"Run",onClick:()=>z(f),disabled:!!r&&!r.completed}),o.jsx(M,{icon:"go-to-file",title:"Show source",onClick:I,style:f.kind==="group"&&f.subKind==="folder"?{visibility:"hidden"}:{}}),!a&&o.jsx(M,{icon:"eye",title:"Watch",onClick:()=>{p.value.has(f.id)?p.value.delete(f.id):p.value.add(f.id),c({...p})},toggled:p.value.has(f.id)})]})]})},icon:f=>Gt(f.status),title:f=>f.title,selectedItem:N,onAccepted:z,onSelected:f=>{r&&(r.itemSelectedByUser=!0),j(f.id)},isError:f=>f.kind==="group"?f.hasLoadErrors:!1,autoExpandDepth:i?5:1,noItemsMessage:g?"Loading…":"No tests"})};function Ie(i,t){if(!(!i||!t))return{file:i.location.file,line:i.location.line,column:i.location.column,source:{errors:t.loadErrors.filter(e=>{var s;return((s=e.location)==null?void 0:s.file)===i.location.file}).map(e=>({line:e.location.line,message:e.message})),content:void 0}}}function Ee(i){return`.playwright-artifacts-${i}`}const Re=({item:i,rootDir:t,onOpenExternally:e,revealSource:s,pathSeparator:n})=>{var w,k;const[r,a]=d.useState(void 0),[p,c]=d.useState(0),g=d.useRef(null),{outputDir:l}=d.useMemo(()=>({outputDir:i.testCase?Be(i.testCase):void 0}),[i]);return d.useEffect(()=>{var b,x,j;g.current&&clearTimeout(g.current);const h=(b=i.testCase)==null?void 0:b.results[0];if(!h||((x=i.treeItem)==null?void 0:x.status)==="scheduled"){a(void 0);return}const I=h&&h.duration>=0&&h.attachments.find(E=>E.name==="trace");if(I&&I.path){yt(I.path,h.startTime.getTime()).then(E=>a({model:E,isLive:!1}));return}if(!l){a(void 0);return}const u=[l,Ee(h.workerIndex),"traces",`${(j=i.testCase)==null?void 0:j.id}.json`].join(n);return g.current=setTimeout(async()=>{try{const E=await yt(u,Date.now());a({model:E,isLive:!0})}catch{const E=new Bt("",[]);E.errorDescriptors.push(...h.errors.flatMap(y=>y.message?[{message:y.message}]:[])),a({model:E,isLive:!1})}finally{c(p+1)}},500),()=>{g.current&&clearTimeout(g.current)}},[l,i,a,p,c,n]),o.jsx(ee,{model:r==null?void 0:r.model,showSourcesFirst:!0,rootDir:t,fallbackLocation:i.testFile,isLive:r==null?void 0:r.isLive,status:(w=i.treeItem)==null?void 0:w.status,annotations:((k=i.testCase)==null?void 0:k.annotations)??[],onOpenExternally:e,revealSource:s},"workbench")},Be=i=>{var t;for(let e=i.parent;e;e=e.parent)if(e.project())return(t=e.project())==null?void 0:t.outputDir};async function yt(i,t){const e=`file?path=${encodeURIComponent(i)}&timestamp=${t}`,s=new URLSearchParams;s.set("trace",e);const r=await(await fetch(`contexts?${s.toString()}`)).json();return new Bt(e,r)}let It={cols:80};const K={pending:[],clear:()=>{},write:i=>K.pending.push(i),resize:()=>{}},A=new URLSearchParams(window.location.search),Ce=new URL(A.get("server")??"../",window.location.href),wt=new URL(A.get("ws"),Ce);wt.protocol=wt.protocol==="https:"?"wss:":"ws:";const P={args:A.getAll("arg"),grep:A.get("grep")||void 0,grepInvert:A.get("grepInvert")||void 0,projects:A.getAll("project"),workers:A.get("workers")||void 0,headed:A.has("headed"),updateSnapshots:A.get("updateSnapshots")||void 0,reporters:A.has("reporter")?A.getAll("reporter"):void 0,pathSeparator:A.get("pathSeparator")||"/"};P.updateSnapshots&&!["all","changed","none","missing"].includes(P.updateSnapshots)&&(P.updateSnapshots=void 0);const Et=navigator.platform==="MacIntel";function Pe(i){return i.startsWith("/")&&(i=i.substring(1)),i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ne(i,t,e){const s=i.passed+i.failed+i.skipped,n=t?s/t*100|0:0,r=[];return i.passed>0&&r.push(`${i.passed} passed`),i.failed>0&&r.push(o.jsxs("span",{className:"status-line-failed",children:[i.failed," failed"]},"failed")),i.skipped>0&&r.push(`${i.skipped} skipped`),o.jsx("div",{"data-testid":"status-line",className:"status-line",children:o.jsxs("div",{children:[e&&"Running ",s,"/",t," (",n,"%)",r.length>0&&" â€” ",r.map((a,p)=>o.jsxs(d.Fragment,{children:[p>0?", ":"",a]},p))]})})}const Le=({})=>{var Tt;const[i,t]=d.useState(""),[e,s]=d.useState(!1),[n,r]=d.useState(!1),[a,p]=d.useState(new Map([["passed",!1],["failed",!1],["skipped",!1]])),[c,g]=d.useState(new Map),[l,w]=d.useState(),[k,h]=d.useState(),[I,u]=d.useState({}),[b,x]=d.useState(!1),[j,E]=d.useState(),y=j&&!j.completed,[W,st]=q("watch-all",!1),[N,z]=d.useState({value:new Set}),V=d.useRef(Promise.resolve()),f=d.useRef({testIds:new Set,locations:new Set}),[C,T]=d.useState(0),[F,Q]=d.useState(0),[dt,Pt]=d.useState(!1),[bt,xt]=d.useState(!0),[v,Nt]=d.useState(),[it,Lt]=d.useState(),[nt,Dt]=d.useState(!1),[ot,Ft]=d.useState(!1),[Mt,St]=d.useState(!1),Ot=d.useCallback(()=>St(!0),[St]),[ut,At]=q("single-worker",!1),[ht,Ut]=q("updateSnapshots","missing"),[X,Wt]=q("only-changed",!1),[ft,Kt]=q("stop-on-failure",!1),[J]=q("mergeFiles",!1),Vt=d.useRef(null),rt=d.useCallback(()=>{Nt(m=>(m==null||m.close(),new se(new ie(wt))))},[]);d.useEffect(()=>{var m;(m=Vt.current)==null||m.focus(),x(!0),rt()},[rt]),d.useEffect(()=>{if(!v)return;const m=[v.onStdio(_=>{if(_.buffer){const S=atob(_.buffer);K.write(S)}else K.write(_.text);_.type==="stderr"&&r(!0)}),v.onClose(()=>Pt(!0))];return K.resize=(_,S)=>{It={cols:_,rows:S},v.resizeTerminalNoReply({cols:_,rows:S})},()=>{for(const _ of m)_.dispose()}},[v]),d.useEffect(()=>{if(!v)return;let m;const _=new ve({onUpdate:S=>{clearTimeout(m),m=void 0,S?w(_.asModel()):m||(m=setTimeout(()=>{w(_.asModel())},250))},onError:S=>{K.write((S.stack||S.value||"")+`
`),r(!0)},pathSeparator:P.pathSeparator});return Lt(_),w(void 0),x(!0),z({value:new Set}),(async()=>{try{await v.initialize({interceptStdio:!0,watchTestDirs:!0});const{status:S,report:B}=await v.runGlobalSetup({});if(_.processGlobalReport(B),S!=="passed")return;const L=await v.listTests({projects:P.projects,locations:P.args,grep:P.grep,grepInvert:P.grepInvert,onlyChanged:X});_.processListReport(L.report),v.onReport($=>{_.processTestReportEvent($)});const{hasBrowsers:O}=await v.checkBrowsers({});xt(O)}finally{x(!1)}})(),()=>{clearTimeout(m)}},[X,v]),d.useEffect(()=>{if(!l)return;const{config:m,rootSuite:_}=l,S=m.configFile?Rt.getObject(m.configFile+":projects",void 0):void 0,B=new Map(c);for(const L of B.keys())_.suites.find(O=>O.title===L)||B.delete(L);for(const L of _.suites)B.has(L.title)||B.set(L.title,!!(S!=null&&S.includes(L.title)));!S&&B.size&&![...B.values()].includes(!0)&&B.set(B.entries().next().value[0],!0),(c.size!==B.size||[...c].some(([L,O])=>B.get(L)!==O))&&g(B)},[c,l]),d.useEffect(()=>{y&&(l!=null&&l.progress)?h(l.progress):l||h(void 0)},[l,y]);const{testTree:at}=d.useMemo(()=>{if(!l)return{testTree:new _t("",new tt("","root"),[],c,P.pathSeparator,J)};const m=new _t("",l.rootSuite,l.loadErrors,c,P.pathSeparator,J);return m.filterTree(i,a,y?j==null?void 0:j.testIds:void 0),m.sortAndPropagateStatus(),m.shortenRoot(),m.flattenForSingleProject(),{testTree:m}},[i,l,a,c,j,y,J]),Z=d.useCallback((m,_)=>{if(!(!v||!l)&&!(m==="bounce-if-busy"&&y)){for(const S of _.testIds)f.current.testIds.add(S);for(const S of _.locations)f.current.locations.add(S);V.current=V.current.then(async()=>{var O,$,U;const{testIds:S,locations:B}=f.current;if(f.current={testIds:new Set,locations:new Set},!S.size)return;{for(const R of((O=l.rootSuite)==null?void 0:O.allTests())||[])if(S.has(R.id)){R.results=[];const D=R._createTestResult("pending");D[et]="scheduled"}w({...l})}const L="  ["+new Date().toLocaleTimeString()+"]";K.write("\x1B[2m—".repeat(Math.max(0,It.cols-L.length))+L+"\x1B[22m"),h({total:0,passed:0,failed:0,skipped:0}),E({testIds:S}),await v.runTests({locations:[...B].map(Pe),grep:P.grep,grepInvert:P.grepInvert,testIds:[...S],projects:[...c].filter(([R,D])=>D).map(([R])=>R),updateSnapshots:ht,reporters:P.reporters,workers:ut?1:void 0,maxFailures:ft?1:void 0,trace:"on"});for(const R of(($=l.rootSuite)==null?void 0:$.allTests())||[])((U=R.results[0])==null?void 0:U.duration)===-1&&(R.results=[]);w({...l}),E(R=>R?{...R,completed:!0}:void 0)})}},[c,y,l,v,ht,ut,ft]),lt=d.useCallback(()=>Z("bounce-if-busy",at.collectTestIds(at.rootItem)),[Z,at]);d.useEffect(()=>{if(!v||!it)return;const m=v.onTestFilesChanged(async _=>{if(V.current=V.current.then(async()=>{x(!0);try{const U=await v.listTests({projects:P.projects,locations:P.args,grep:P.grep,grepInvert:P.grepInvert,onlyChanged:X});it.processListReport(U.report)}catch(U){console.log(U)}finally{x(!1)}}),await V.current,_.testFiles.length===0)return;const S=it.asModel(),B=new _t("",S.rootSuite,S.loadErrors,c,P.pathSeparator,J),L=[],O=[],$=new Set(_.testFiles);if(W){const U=R=>{const D=R.location.file;if(D&&$.has(D)){const G=B.collectTestIds(R);L.push(...G.locations),O.push(...G.testIds)}R.kind==="group"&&R.subKind==="folder"&&R.children.forEach(U)};U(B.rootItem)}else for(const U of N.value){const R=B.treeItemById(U);if(!R)continue;let D=R;for(;!(D.kind==="group"&&(D.subKind==="file"||D.subKind==="folder"))&&D.parent;)D=D.parent;const G=D==null?void 0:D.location.file;if(G&&$.has(G)){const kt=B.collectTestIds(R);L.push(...kt.locations),O.push(...kt.testIds)}}Z("queue-if-busy",{locations:L,testIds:O})});return()=>m.dispose()},[Z,v,W,N,it,c,J,X]),d.useEffect(()=>{if(!v)return;const m=_=>{_.code==="Backquote"&&_.ctrlKey?(_.preventDefault(),s(!e)):_.code==="F5"&&_.shiftKey?(_.preventDefault(),v==null||v.stopTestsNoReply({})):_.code==="F5"&&(_.preventDefault(),lt())};return addEventListener("keydown",m),()=>{removeEventListener("keydown",m)}},[lt,rt,v,e]);const pt=d.useRef(null),$t=d.useCallback(m=>{var _;m.preventDefault(),m.stopPropagation(),(_=pt.current)==null||_.showModal()},[]),gt=d.useCallback(m=>{var _;m.preventDefault(),m.stopPropagation(),(_=pt.current)==null||_.close()},[]),zt=d.useCallback(m=>{gt(m),s(!0),v==null||v.installBrowsers({}).then(async()=>{s(!1);const{hasBrowsers:_}=await(v==null?void 0:v.checkBrowsers({}));xt(_)})},[gt,v]);return o.jsxs("div",{className:"vbox ui-mode",children:[!bt&&o.jsxs("dialog",{ref:pt,children:[o.jsxs("div",{className:"title",children:[o.jsx("span",{className:"codicon codicon-lightbulb"}),"Install browsers"]}),o.jsxs("div",{className:"body",children:["Playwright did not find installed browsers.",o.jsx("br",{}),"Would you like to run `playwright install`?",o.jsx("br",{}),o.jsx("button",{className:"button",onClick:zt,children:"Install"}),o.jsx("button",{className:"button secondary",onClick:gt,children:"Dismiss"})]})]}),dt&&o.jsxs("div",{className:"disconnected",children:[o.jsx("div",{className:"title",children:"UI Mode disconnected"}),o.jsxs("div",{children:[o.jsx("a",{href:"#",onClick:()=>window.location.href="/",children:"Reload the page"})," to reconnect"]})]}),o.jsx(ne,{sidebarSize:250,minSidebarSize:150,orientation:"horizontal",sidebarIsFirst:!0,settingName:"testListSidebar",main:o.jsxs("div",{className:"vbox",children:[o.jsxs("div",{className:vt("vbox",!e&&"hidden"),children:[o.jsxs(Y,{children:[o.jsx("div",{className:"section-title",style:{flex:"none"},children:"Output"}),o.jsx(M,{icon:"circle-slash",title:"Clear output",onClick:()=>{K.clear(),r(!1)}}),o.jsx("div",{className:"spacer"}),o.jsx(M,{icon:"close",title:"Close",onClick:()=>s(!1)})]}),o.jsx(we,{source:K})]}),o.jsx("div",{className:vt("vbox",e&&"hidden"),children:o.jsx(Re,{pathSeparator:P.pathSeparator,item:I,rootDir:(Tt=l==null?void 0:l.config)==null?void 0:Tt.rootDir,revealSource:Mt,onOpenExternally:m=>v==null?void 0:v.openNoReply({location:{file:m.file,line:m.line,column:m.column}})})})]}),sidebar:o.jsxs("div",{className:"vbox ui-mode-sidebar",children:[o.jsxs(Y,{noShadow:!0,noMinHeight:!0,children:[o.jsx("img",{src:"playwright-logo.svg",alt:"Playwright logo"}),o.jsx("div",{className:"section-title",children:"Playwright"}),o.jsx(M,{icon:"refresh",title:"Reload",onClick:()=>rt(),disabled:y||b}),o.jsx("div",{style:{position:"relative"},children:o.jsx(M,{icon:"terminal",title:"Toggle output â€” "+(Et?"⌃`":"Ctrl + `"),toggled:e,errorBadge:n?"Output contains error":void 0,onClick:()=>{s(!e)}})}),!bt&&o.jsx(M,{icon:"lightbulb-autofix",style:{color:"var(--vscode-list-warningForeground)"},title:"Playwright browsers are missing",onClick:$t})]}),o.jsx(Se,{filterText:i,setFilterText:t,statusFilters:a,setStatusFilters:p,projectFilters:c,setProjectFilters:g,onlyChanged:X,setOnlyChanged:Wt,testModel:l,runTests:lt}),o.jsxs(Y,{className:"section-toolbar",noMinHeight:!0,children:[!y&&!k&&o.jsx("div",{className:"section-title",children:"Tests"}),k&&Ne(k,y?j.testIds.size:k.total,!!y),o.jsx(M,{icon:"play",title:"Run all â€” F5",onClick:lt,disabled:y||b}),o.jsx(M,{icon:"debug-stop",title:"Stop â€” "+(Et?"⇧F5":"Shift + F5"),onClick:()=>v==null?void 0:v.stopTests({}),disabled:!y||b,testId:"stop-button"}),o.jsx(M,{icon:"eye",title:"Watch all",toggled:W,onClick:()=>{z({value:new Set}),st(!W)}}),o.jsx(M,{icon:"collapse-all",title:"Collapse all",onClick:()=>{T(C+1)}}),o.jsx(M,{icon:"expand-all",title:"Expand all",onClick:()=>{Q(F+1)}})]}),o.jsx(ye,{filterText:i,testModel:l,testTree:at,testServerConnection:v,runningState:j,runTests:Z,onItemSelected:u,watchAll:W,watchedTreeIds:N,setWatchedTreeIds:z,isLoading:b,requestedCollapseAllCount:C,requestedExpandAllCount:F,setFilterText:t,onRevealSource:Ot}),o.jsxs(Y,{noShadow:!0,noMinHeight:!0,className:"settings-toolbar",onClick:()=>Ft(!ot),children:[o.jsx("span",{className:`codicon codicon-${ot?"chevron-down":"chevron-right"}`,style:{marginLeft:5},title:ot?"Hide Testing Options":"Show Testing Options"}),o.jsx("div",{className:"section-title",children:"Testing Options"})]}),ot&&o.jsx(oe,{settings:[{type:"check",value:ut,set:At,name:"Single worker"},{type:"check",value:ft,set:Kt,name:"Stop on first failure"},{type:"select",options:[{label:"All",value:"all"},{label:"Changed",value:"changed"},{label:"Missing",value:"missing"},{label:"None",value:"none"}],value:ht,set:Ut,name:"Update snapshots"}]}),o.jsxs(Y,{noShadow:!0,noMinHeight:!0,className:"settings-toolbar",onClick:()=>Dt(!nt),children:[o.jsx("span",{className:`codicon codicon-${nt?"chevron-down":"chevron-right"}`,style:{marginLeft:5},title:nt?"Hide Settings":"Show Settings"}),o.jsx("div",{className:"section-title",children:"Settings"})]}),nt&&o.jsx(re,{location:"ui-mode"})]})})]})};(async()=>{if(ae(),window.location.protocol!=="file:"){if(window.location.href.includes("isUnderTest=true")&&await new Promise(i=>setTimeout(i,1e3)),!navigator.serviceWorker)throw new Error(`Service workers are not supported.
Make sure to serve the website (${window.location}) via HTTPS or localhost.`);navigator.serviceWorker.register("sw.bundle.js"),navigator.serviceWorker.controller||await new Promise(i=>{navigator.serviceWorker.oncontrollerchange=()=>i()}),setInterval(function(){fetch("ping")},1e4)}le.createRoot(document.querySelector("#root")).render(o.jsx(Le,{}))})();
scripts/node_modules/playwright-core/lib/vite/traceViewer/uiMode.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
<!DOCTYPE html>
<html lang="en" translate="no">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" href="./playwright-logo.svg" type="image/svg+xml">
    <title>Playwright Test</title>
    <script type="module" crossorigin src="./uiMode.Ut8wwJNp.js"></script>
    <link rel="modulepreload" crossorigin href="./assets/urlMatch-BYQrIQwR.js">
    <link rel="modulepreload" crossorigin href="./assets/defaultSettingsView-BNmKHKpQ.js">
    <link rel="stylesheet" crossorigin href="./defaultSettingsView.CjdS-WJx.css">
    <link rel="stylesheet" crossorigin href="./uiMode.BZQ54Kgt.css">
  </head>
  <body>
    <div id="root"></div>
  </body>
</html>
scripts/node_modules/playwright-core/lib/vite/traceViewer/xtermModule.DYP7pi_n.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,32 @@
/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}
scripts/node_modules/playwright-core/lib/xdg-open
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,1066 @@
#!/bin/sh
#---------------------------------------------
#   xdg-open
#
#   Utility script to open a URL in the registered default application.
#
#   Refer to the usage() function below for usage.
#
#   Copyright 2009-2010, Fathi Boudra <fabo@freedesktop.org>
#   Copyright 2009-2010, Rex Dieter <rdieter@fedoraproject.org>
#   Copyright 2006, Kevin Krammer <kevin.krammer@gmx.at>
#   Copyright 2006, Jeremy White <jwhite@codeweavers.com>
#
#   LICENSE:
#
#   Permission is hereby granted, free of charge, to any person obtaining a
#   copy of this software and associated documentation files (the "Software"),
#   to deal in the Software without restriction, including without limitation
#   the rights to use, copy, modify, merge, publish, distribute, sublicense,
#   and/or sell copies of the Software, and to permit persons to whom the
#   Software is furnished to do so, subject to the following conditions:
#
#   The above copyright notice and this permission notice shall be included
#   in all copies or substantial portions of the Software.
#
#   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
#   OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
#   FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
#   THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
#   OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
#   ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
#   OTHER DEALINGS IN THE SOFTWARE.
#
#---------------------------------------------
manualpage()
{
cat << _MANUALPAGE
Name
   xdg-open -- opens a file or URL in the user's preferred
   application
Synopsis
   xdg-open { file | URL }
   xdg-open { --help | --manual | --version }
Description
   xdg-open opens a file or URL in the user's preferred
   application. If a URL is provided the URL will be opened in the
   user's preferred web browser. If a file is provided the file
   will be opened in the preferred application for files of that
   type. xdg-open supports file, ftp, http and https URLs.
   xdg-open is for use inside a desktop session only. It is not
   recommended to use xdg-open as root.
Options
   --help
          Show command synopsis.
   --manual
          Show this manual page.
   --version
          Show the xdg-utils version information.
Exit Codes
   An exit code of 0 indicates success while a non-zero exit code
   indicates failure. The following failure codes can be returned:
   1
          Error in command line syntax.
   2
          One of the files passed on the command line did not
          exist.
   3
          A required tool could not be found.
   4
          The action failed.
See Also
   xdg-mime(1), xdg-settings(1), MIME applications associations
   specification
Examples
xdg-open 'http://www.freedesktop.org/'
   Opens the freedesktop.org website in the user's default
   browser.
xdg-open /tmp/foobar.png
   Opens the PNG image file /tmp/foobar.png in the user's default
   image viewing application.
_MANUALPAGE
}
usage()
{
cat << _USAGE
   xdg-open -- opens a file or URL in the user's preferred
   application
Synopsis
   xdg-open { file | URL }
   xdg-open { --help | --manual | --version }
_USAGE
}
#@xdg-utils-common@
#----------------------------------------------------------------------------
#   Common utility functions included in all XDG wrapper scripts
#----------------------------------------------------------------------------
DEBUG()
{
  [ -z "${XDG_UTILS_DEBUG_LEVEL}" ] && return 0;
  [ ${XDG_UTILS_DEBUG_LEVEL} -lt $1 ] && return 0;
  shift
  echo "$@" >&2
}
# This handles backslashes but not quote marks.
first_word()
{
    read first rest
    echo "$first"
}
#-------------------------------------------------------------
# map a binary to a .desktop file
binary_to_desktop_file()
{
    search="${XDG_DATA_HOME:-$HOME/.local/share}:${XDG_DATA_DIRS:-/usr/local/share:/usr/share}"
    binary="`which "$1"`"
    binary="`readlink -f "$binary"`"
    base="`basename "$binary"`"
    IFS=:
    for dir in $search; do
        unset IFS
        [ "$dir" ] || continue
        [ -d "$dir/applications" ] || [ -d "$dir/applnk" ] || continue
        for file in "$dir"/applications/*.desktop "$dir"/applications/*/*.desktop "$dir"/applnk/*.desktop "$dir"/applnk/*/*.desktop; do
            [ -r "$file" ] || continue
            # Check to make sure it's worth the processing.
            grep -q "^Exec.*$base" "$file" || continue
            # Make sure it's a visible desktop file (e.g. not "preferred-web-browser.desktop").
            grep -Eq "^(NoDisplay|Hidden)=true" "$file" && continue
            command="`grep -E "^Exec(\[[^]=]*])?=" "$file" | cut -d= -f 2- | first_word`"
            command="`which "$command"`"
            if [ x"`readlink -f "$command"`" = x"$binary" ]; then
                # Fix any double slashes that got added path composition
                echo "$file" | sed -e 's,//*,/,g'
                return
            fi
        done
    done
}
#-------------------------------------------------------------
# map a .desktop file to a binary
desktop_file_to_binary()
{
    search="${XDG_DATA_HOME:-$HOME/.local/share}:${XDG_DATA_DIRS:-/usr/local/share:/usr/share}"
    desktop="`basename "$1"`"
    IFS=:
    for dir in $search; do
        unset IFS
        [ "$dir" ] && [ -d "$dir/applications" ] || [ -d "$dir/applnk" ] || continue
        # Check if desktop file contains -
        if [ "${desktop#*-}" != "$desktop" ]; then
            vendor=${desktop%-*}
            app=${desktop#*-}
            if [ -r $dir/applications/$vendor/$app ]; then
                file_path=$dir/applications/$vendor/$app
            elif [ -r $dir/applnk/$vendor/$app ]; then
                file_path=$dir/applnk/$vendor/$app
            fi
        fi
        if test -z "$file_path" ; then
            for indir in "$dir"/applications/ "$dir"/applications/*/ "$dir"/applnk/ "$dir"/applnk/*/; do
                file="$indir/$desktop"
                if [ -r "$file" ]; then
                    file_path=$file
                    break
                fi
            done
        fi
        if [ -r "$file_path" ]; then
            # Remove any arguments (%F, %f, %U, %u, etc.).
            command="`grep -E "^Exec(\[[^]=]*])?=" "$file_path" | cut -d= -f 2- | first_word`"
            command="`which "$command"`"
            readlink -f "$command"
            return
        fi
    done
}
#-------------------------------------------------------------
# Exit script on successfully completing the desired operation
exit_success()
{
    if [ $# -gt 0 ]; then
        echo "$@"
        echo
    fi
    exit 0
}
#-----------------------------------------
# Exit script on malformed arguments, not enough arguments
# or missing required option.
# prints usage information
exit_failure_syntax()
{
    if [ $# -gt 0 ]; then
        echo "xdg-open: $@" >&2
        echo "Try 'xdg-open --help' for more information." >&2
    else
        usage
        echo "Use 'man xdg-open' or 'xdg-open --manual' for additional info."
    fi
    exit 1
}
#-------------------------------------------------------------
# Exit script on missing file specified on command line
exit_failure_file_missing()
{
    if [ $# -gt 0 ]; then
        echo "xdg-open: $@" >&2
    fi
    exit 2
}
#-------------------------------------------------------------
# Exit script on failure to locate necessary tool applications
exit_failure_operation_impossible()
{
    if [ $# -gt 0 ]; then
        echo "xdg-open: $@" >&2
    fi
    exit 3
}
#-------------------------------------------------------------
# Exit script on failure returned by a tool application
exit_failure_operation_failed()
{
    if [ $# -gt 0 ]; then
        echo "xdg-open: $@" >&2
    fi
    exit 4
}
#------------------------------------------------------------
# Exit script on insufficient permission to read a specified file
exit_failure_file_permission_read()
{
    if [ $# -gt 0 ]; then
        echo "xdg-open: $@" >&2
    fi
    exit 5
}
#------------------------------------------------------------
# Exit script on insufficient permission to write a specified file
exit_failure_file_permission_write()
{
    if [ $# -gt 0 ]; then
        echo "xdg-open: $@" >&2
    fi
    exit 6
}
check_input_file()
{
    if [ ! -e "$1" ]; then
        exit_failure_file_missing "file '$1' does not exist"
    fi
    if [ ! -r "$1" ]; then
        exit_failure_file_permission_read "no permission to read file '$1'"
    fi
}
check_vendor_prefix()
{
    file_label="$2"
    [ -n "$file_label" ] || file_label="filename"
    file=`basename "$1"`
    case "$file" in
       [[:alpha:]]*-*)
         return
         ;;
    esac
    echo "xdg-open: $file_label '$file' does not have a proper vendor prefix" >&2
    echo 'A vendor prefix consists of alpha characters ([a-zA-Z]) and is terminated' >&2
    echo 'with a dash ("-"). An example '"$file_label"' is '"'example-$file'" >&2
    echo "Use --novendor to override or 'xdg-open --manual' for additional info." >&2
    exit 1
}
check_output_file()
{
    # if the file exists, check if it is writeable
    # if it does not exists, check if we are allowed to write on the directory
    if [ -e "$1" ]; then
        if [ ! -w "$1" ]; then
            exit_failure_file_permission_write "no permission to write to file '$1'"
        fi
    else
        DIR=`dirname "$1"`
        if [ ! -w "$DIR" ] || [ ! -x "$DIR" ]; then
            exit_failure_file_permission_write "no permission to create file '$1'"
        fi
    fi
}
#----------------------------------------
# Checks for shared commands, e.g. --help
check_common_commands()
{
    while [ $# -gt 0 ] ; do
        parm="$1"
        shift
        case "$parm" in
            --help)
            usage
            echo "Use 'man xdg-open' or 'xdg-open --manual' for additional info."
            exit_success
            ;;
            --manual)
            manualpage
            exit_success
            ;;
            --version)
            echo "xdg-open 1.1.3"
            exit_success
            ;;
        esac
    done
}
check_common_commands "$@"
[ -z "${XDG_UTILS_DEBUG_LEVEL}" ] && unset XDG_UTILS_DEBUG_LEVEL;
if [ ${XDG_UTILS_DEBUG_LEVEL-0} -lt 1 ]; then
    # Be silent
    xdg_redirect_output=" > /dev/null 2> /dev/null"
else
    # All output to stderr
    xdg_redirect_output=" >&2"
fi
#--------------------------------------
# Checks for known desktop environments
# set variable DE to the desktop environments name, lowercase
detectDE()
{
    # see https://bugs.freedesktop.org/show_bug.cgi?id=34164
    unset GREP_OPTIONS
    if [ -n "${XDG_CURRENT_DESKTOP}" ]; then
      case "${XDG_CURRENT_DESKTOP}" in
         # only recently added to menu-spec, pre-spec X- still in use
         Cinnamon|X-Cinnamon)
           DE=cinnamon;
           ;;
         ENLIGHTENMENT)
           DE=enlightenment;
           ;;
         # GNOME, GNOME-Classic:GNOME, or GNOME-Flashback:GNOME
         GNOME*)
           DE=gnome;
           ;;
         KDE)
           DE=kde;
           ;;
         # Deepin Desktop Environments
         DEEPIN|Deepin|deepin)
           DE=dde;
           ;;
         LXDE)
           DE=lxde;
           ;;
         LXQt)
           DE=lxqt;
           ;;
         MATE)
           DE=mate;
           ;;
         XFCE)
           DE=xfce
           ;;
         X-Generic)
           DE=generic
           ;;
      esac
    fi
    if [ x"$DE" = x"" ]; then
      # classic fallbacks
      if [ x"$KDE_FULL_SESSION" != x"" ]; then DE=kde;
      elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then DE=gnome;
      elif [ x"$MATE_DESKTOP_SESSION_ID" != x"" ]; then DE=mate;
      elif `dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.GetNameOwner string:org.gnome.SessionManager > /dev/null 2>&1` ; then DE=gnome;
      elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep ' = \"xfce4\"$' >/dev/null 2>&1; then DE=xfce;
      elif xprop -root 2> /dev/null | grep -i '^xfce_desktop_window' >/dev/null 2>&1; then DE=xfce
      elif echo $DESKTOP | grep -q '^Enlightenment'; then DE=enlightenment;
      elif [ x"$LXQT_SESSION_CONFIG" != x"" ]; then DE=lxqt;
      fi
    fi
    if [ x"$DE" = x"" ]; then
      # fallback to checking $DESKTOP_SESSION
      case "$DESKTOP_SESSION" in
         gnome)
           DE=gnome;
           ;;
         LXDE|Lubuntu)
           DE=lxde;
           ;;
         MATE)
           DE=mate;
           ;;
         xfce|xfce4|'Xfce Session')
           DE=xfce;
           ;;
      esac
    fi
    if [ x"$DE" = x"" ]; then
      # fallback to uname output for other platforms
      case "$(uname 2>/dev/null)" in
        CYGWIN*)
          DE=cygwin;
          ;;
        Darwin)
          DE=darwin;
          ;;
      esac
    fi
    if [ x"$DE" = x"gnome" ]; then
      # gnome-default-applications-properties is only available in GNOME 2.x
      # but not in GNOME 3.x
      which gnome-default-applications-properties > /dev/null 2>&1  || DE="gnome3"
    fi
    if [ -f "$XDG_RUNTIME_DIR/flatpak-info" ]; then
      DE="flatpak"
    fi
}
#----------------------------------------------------------------------------
# kfmclient exec/openURL can give bogus exit value in KDE <= 3.5.4
# It also always returns 1 in KDE 3.4 and earlier
# Simply return 0 in such case
kfmclient_fix_exit_code()
{
    version=`LC_ALL=C.UTF-8 kde-config --version 2>/dev/null | grep '^KDE'`
    major=`echo $version | sed 's/KDE.*: \([0-9]\).*/\1/'`
    minor=`echo $version | sed 's/KDE.*: [0-9]*\.\([0-9]\).*/\1/'`
    release=`echo $version | sed 's/KDE.*: [0-9]*\.[0-9]*\.\([0-9]\).*/\1/'`
    test "$major" -gt 3 && return $1
    test "$minor" -gt 5 && return $1
    test "$release" -gt 4 && return $1
    return 0
}
#----------------------------------------------------------------------------
# Returns true if there is a graphical display attached.
has_display()
{
    if [ -n "$DISPLAY" ] || [ -n "$WAYLAND_DISPLAY" ]; then
        return 0
    else
        return 1
    fi
}
# This handles backslashes but not quote marks.
last_word()
{
    read first rest
    echo "$rest"
}
# Get the value of a key in a desktop file's Desktop Entry group.
# Example: Use get_key foo.desktop Exec
# to get the values of the Exec= key for the Desktop Entry group.
get_key()
{
    local file="${1}"
    local key="${2}"
    local desktop_entry=""
    IFS_="${IFS}"
    IFS=""
    while read line
    do
        case "$line" in
            "[Desktop Entry]")
                desktop_entry="y"
            ;;
            # Reset match flag for other groups
            "["*)
                desktop_entry=""
            ;;
            "${key}="*)
                # Only match Desktop Entry group
                if [ -n "${desktop_entry}" ]
                then
                    echo "${line}" | cut -d= -f 2-
                fi
        esac
    done < "${file}"
    IFS="${IFS_}"
}
# Returns true if argument is a file:// URL or path
is_file_url_or_path()
{
    if echo "$1" | grep -q '^file://' \
            || ! echo "$1" | egrep -q '^[[:alpha:]+\.\-]+:'; then
        return 0
    else
        return 1
    fi
}
# If argument is a file URL, convert it to a (percent-decoded) path.
# If not, leave it as it is.
file_url_to_path()
{
    local file="$1"
    if echo "$file" | grep -q '^file:///'; then
        file=${file#file://}
        file=${file%%#*}
        file=$(echo "$file" | sed -r 's/\?.*$//')
        local printf=printf
        if [ -x /usr/bin/printf ]; then
            printf=/usr/bin/printf
        fi
        file=$($printf "$(echo "$file" | sed -e 's@%\([a-f0-9A-F]\{2\}\)@\\x\1@g')")
    fi
    echo "$file"
}
open_cygwin()
{
    cygstart "$1"
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_darwin()
{
    open "$1"
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_kde()
{
    if [ -n "${KDE_SESSION_VERSION}" ]; then
      case "${KDE_SESSION_VERSION}" in
        4)
          kde-open "$1"
        ;;
        5)
          kde-open${KDE_SESSION_VERSION} "$1"
        ;;
      esac
    else
        kfmclient exec "$1"
        kfmclient_fix_exit_code $?
    fi
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_dde()
{
    if dde-open -version >/dev/null 2>&1; then
        dde-open "$1"
    else
        open_generic "$1"
    fi
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_gnome3()
{
    if gio help open 2>/dev/null 1>&2; then
        gio open "$1"
    elif gvfs-open --help 2>/dev/null 1>&2; then
        gvfs-open "$1"
    else
        open_generic "$1"
    fi
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_gnome()
{
    if gio help open 2>/dev/null 1>&2; then
        gio open "$1"
    elif gvfs-open --help 2>/dev/null 1>&2; then
        gvfs-open "$1"
    elif gnome-open --help 2>/dev/null 1>&2; then
        gnome-open "$1"
    else
        open_generic "$1"
    fi
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_mate()
{
    if gio help open 2>/dev/null 1>&2; then
        gio open "$1"
    elif gvfs-open --help 2>/dev/null 1>&2; then
        gvfs-open "$1"
    elif mate-open --help 2>/dev/null 1>&2; then
        mate-open "$1"
    else
        open_generic "$1"
    fi
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_xfce()
{
    if exo-open --help 2>/dev/null 1>&2; then
        exo-open "$1"
    elif gio help open 2>/dev/null 1>&2; then
        gio open "$1"
    elif gvfs-open --help 2>/dev/null 1>&2; then
        gvfs-open "$1"
    else
        open_generic "$1"
    fi
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_enlightenment()
{
    if enlightenment_open --help 2>/dev/null 1>&2; then
        enlightenment_open "$1"
    else
        open_generic "$1"
    fi
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_flatpak()
{
    gdbus call --session \
        --dest org.freedesktop.portal.Desktop \
        --object-path /org/freedesktop/portal/desktop \
        --method org.freedesktop.portal.OpenURI.OpenURI \
        "" "$1" {}
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
#-----------------------------------------
# Recursively search .desktop file
search_desktop_file()
{
    local default="$1"
    local dir="$2"
    local target="$3"
    local file=""
    # look for both vendor-app.desktop, vendor/app.desktop
    if [ -r "$dir/$default" ]; then
      file="$dir/$default"
    elif [ -r "$dir/`echo $default | sed -e 's|-|/|'`" ]; then
      file="$dir/`echo $default | sed -e 's|-|/|'`"
    fi
    if [ -r "$file" ] ; then
        command="$(get_key "${file}" "Exec" | first_word)"
        command_exec=`which $command 2>/dev/null`
        icon="$(get_key "${file}" "Icon")"
        # FIXME: Actually LC_MESSAGES should be used as described in
        # http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s04.html
        localised_name="$(get_key "${file}" "Name")"
        set -- $(get_key "${file}" "Exec" | last_word)
        # We need to replace any occurrence of "%f", "%F" and
        # the like by the target file. We examine each
        # argument and append the modified argument to the
        # end then shift.
        local args=$#
        local replaced=0
        while [ $args -gt 0 ]; do
            case $1 in
                %[c])
                    replaced=1
                    arg="${localised_name}"
                    shift
                    set -- "$@" "$arg"
                    ;;
                %[fFuU])
                    replaced=1
                    arg="$target"
                    shift
                    set -- "$@" "$arg"
                    ;;
                %[i])
                    replaced=1
                    shift
                    set -- "$@" "--icon" "$icon"
                    ;;
                *)
                    arg="$1"
                    shift
                    set -- "$@" "$arg"
                    ;;
            esac
            args=$(( $args - 1 ))
        done
        [ $replaced -eq 1 ] || set -- "$@" "$target"
        "$command_exec" "$@"
        if [ $? -eq 0 ]; then
            exit_success
        fi
    fi
    for d in $dir/*/; do
        [ -d "$d" ] && search_desktop_file "$default" "$d" "$target"
    done
}
open_generic_xdg_mime()
{
    filetype="$2"
    default=`xdg-mime query default "$filetype"`
    if [ -n "$default" ] ; then
        xdg_user_dir="$XDG_DATA_HOME"
        [ -n "$xdg_user_dir" ] || xdg_user_dir="$HOME/.local/share"
        xdg_system_dirs="$XDG_DATA_DIRS"
        [ -n "$xdg_system_dirs" ] || xdg_system_dirs=/usr/local/share/:/usr/share/
DEBUG 3 "$xdg_user_dir:$xdg_system_dirs"
        for x in `echo "$xdg_user_dir:$xdg_system_dirs" | sed 's/:/ /g'`; do
            search_desktop_file "$default" "$x/applications/" "$1"
        done
    fi
}
open_generic_xdg_file_mime()
{
    filetype=`xdg-mime query filetype "$1" | sed "s/;.*//"`
    open_generic_xdg_mime "$1" "$filetype"
}
open_generic_xdg_x_scheme_handler()
{
    scheme="`echo $1 | sed -n 's/\(^[[:alnum:]+\.-]*\):.*$/\1/p'`"
    if [ -n $scheme ]; then
        filetype="x-scheme-handler/$scheme"
        open_generic_xdg_mime "$1" "$filetype"
    fi
}
has_single_argument()
{
  test $# = 1
}
open_envvar()
{
    local oldifs="$IFS"
    local browser browser_with_arg
    IFS=":"
    for browser in $BROWSER; do
        IFS="$oldifs"
        if [ -z "$browser" ]; then
            continue
        fi
        if echo "$browser" | grep -q %s; then
            # Avoid argument injection.
            # See https://bugs.freedesktop.org/show_bug.cgi?id=103807
            # URIs don't have IFS characters spaces anyway.
            has_single_argument $1 && $(printf "$browser" "$1")
        else
            $browser "$1"
        fi
        if [ $? -eq 0 ]; then
            exit_success
        fi
    done
}
open_generic()
{
    if is_file_url_or_path "$1"; then
        local file="$(file_url_to_path "$1")"
        check_input_file "$file"
        if has_display; then
            filetype=`xdg-mime query filetype "$file" | sed "s/;.*//"`
            open_generic_xdg_mime "$file" "$filetype"
        fi
        if which run-mailcap 2>/dev/null 1>&2; then
            run-mailcap --action=view "$file"
            if [ $? -eq 0 ]; then
                exit_success
            fi
        fi
        if has_display && mimeopen -v 2>/dev/null 1>&2; then
            mimeopen -L -n "$file"
            if [ $? -eq 0 ]; then
                exit_success
            fi
        fi
    fi
    if has_display; then
        open_generic_xdg_x_scheme_handler "$1"
    fi
    if [ -n "$BROWSER" ]; then
        open_envvar "$1"
    fi
    # if BROWSER variable is not set, check some well known browsers instead
    if [ x"$BROWSER" = x"" ]; then
        BROWSER=www-browser:links2:elinks:links:lynx:w3m
        if has_display; then
            BROWSER=x-www-browser:firefox:iceweasel:seamonkey:mozilla:epiphany:konqueror:chromium:chromium-browser:google-chrome:microsoft-edge:$BROWSER
        fi
    fi
    open_envvar "$1"
    exit_failure_operation_impossible "no method available for opening '$1'"
}
open_lxde()
{
    # pcmanfm only knows how to handle file:// urls and filepaths, it seems.
    if pcmanfm --help >/dev/null 2>&1 && is_file_url_or_path "$1"; then
        local file="$(file_url_to_path "$1")"
        # handle relative paths
        if ! echo "$file" | grep -q ^/; then
            file="$(pwd)/$file"
        fi
        pcmanfm "$file"
    else
        open_generic "$1"
    fi
    if [ $? -eq 0 ]; then
        exit_success
    else
        exit_failure_operation_failed
    fi
}
open_lxqt()
{
    open_generic "$1"
}
[ x"$1" != x"" ] || exit_failure_syntax
url=
while [ $# -gt 0 ] ; do
    parm="$1"
    shift
    case "$parm" in
      -*)
        exit_failure_syntax "unexpected option '$parm'"
        ;;
      *)
        if [ -n "$url" ] ; then
            exit_failure_syntax "unexpected argument '$parm'"
        fi
        url="$parm"
        ;;
    esac
done
if [ -z "${url}" ] ; then
    exit_failure_syntax "file or URL argument missing"
fi
detectDE
if [ x"$DE" = x"" ]; then
    DE=generic
fi
DEBUG 2 "Selected DE $DE"
# sanitize BROWSER (avoid caling ourselves in particular)
case "${BROWSER}" in
    *:"xdg-open"|"xdg-open":*)
        BROWSER=$(echo $BROWSER | sed -e 's|:xdg-open||g' -e 's|xdg-open:||g')
        ;;
    "xdg-open")
        BROWSER=
        ;;
esac
case "$DE" in
    kde)
    open_kde "$url"
    ;;
    dde)
    open_dde "$url"
    ;;
    gnome3|cinnamon)
    open_gnome3 "$url"
    ;;
    gnome)
    open_gnome "$url"
    ;;
    mate)
    open_mate "$url"
    ;;
    xfce)
    open_xfce "$url"
    ;;
    lxde)
    open_lxde "$url"
    ;;
    lxqt)
    open_lxqt "$url"
    ;;
    enlightenment)
    open_enlightenment "$url"
    ;;
    cygwin)
    open_cygwin "$url"
    ;;
    darwin)
    open_darwin "$url"
    ;;
    flatpak)
    open_flatpak "$url"
    ;;
    generic)
    open_generic "$url"
    ;;
    *)
    exit_failure_operation_impossible "no method available for opening '$url'"
    ;;
esac
scripts/node_modules/playwright-core/package.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,34 @@
{
  "name": "playwright-core",
  "version": "1.61.1",
  "description": "A high-level API to automate web browsers",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/microsoft/playwright.git"
  },
  "homepage": "https://playwright.dev",
  "engines": {
    "node": ">=18"
  },
  "author": {
    "name": "Microsoft Corporation"
  },
  "license": "Apache-2.0",
  "exports": {
    ".": {
      "types": "./index.d.ts",
      "import": "./index.mjs",
      "require": "./index.js",
      "default": "./index.js"
    },
    "./package.json": "./package.json",
    "./lib/bootstrap": "./lib/bootstrap.js",
    "./lib/coreBundle": "./lib/coreBundle.js",
    "./lib/utilsBundle": "./lib/utilsBundle.js",
    "./lib/tools/cli-client/program": "./lib/tools/cli-client/program.js"
  },
  "bin": {
    "playwright-core": "cli.js"
  },
  "types": "types/types.d.ts"
}
scripts/node_modules/playwright-core/types/protocol.d.ts
¶Ô±ÈÐÂÎļþ
ÎļþÌ«´ó
scripts/node_modules/playwright-core/types/structs.d.ts
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,45 @@
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import { JSHandle, ElementHandle, Frame, Page, BrowserContext } from './types';
/**
 * Can be converted to JSON
 */
export type Serializable = any;
/**
 * Can be converted to JSON, but may also contain JSHandles.
 */
export type EvaluationArgument = {};
export type NoHandles<Arg> = Arg extends JSHandle ? never : (Arg extends object ? { [Key in keyof Arg]: NoHandles<Arg[Key]> } : Arg);
export type Unboxed<Arg> =
  Arg extends ElementHandle<infer T> ? T :
  Arg extends JSHandle<infer T> ? T :
  Arg extends NoHandles<Arg> ? Arg :
  Arg extends [infer A0] ? [Unboxed<A0>] :
  Arg extends [infer A0, infer A1] ? [Unboxed<A0>, Unboxed<A1>] :
  Arg extends [infer A0, infer A1, infer A2] ? [Unboxed<A0>, Unboxed<A1>, Unboxed<A2>] :
  Arg extends [infer A0, infer A1, infer A2, infer A3] ? [Unboxed<A0>, Unboxed<A1>, Unboxed<A2>, Unboxed<A3>] :
  Arg extends Array<infer T> ? Array<Unboxed<T>> :
  Arg extends object ? { [Key in keyof Arg]: Unboxed<Arg[Key]> } :
  Arg;
export type PageFunction0<R> = string | (() => R | Promise<R>);
export type PageFunction<Arg, R> = string | ((arg: Unboxed<Arg>) => R | Promise<R>);
export type PageFunctionOn<On, Arg2, R> = string | ((on: On, arg2: Unboxed<Arg2>) => R | Promise<R>);
export type SmartHandle<T> = [T] extends [Node] ? ElementHandle<T> : JSHandle<T>;
export type ElementHandleForTag<K extends keyof HTMLElementTagNameMap> = ElementHandle<HTMLElementTagNameMap[K]>;
export type BindingSource = { context: BrowserContext, page: Page, frame: Frame };
scripts/node_modules/playwright-core/types/types.d.ts
¶Ô±ÈÐÂÎļþ
ÎļþÌ«´ó
scripts/node_modules/playwright/LICENSE
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,202 @@
                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
   1. Definitions.
      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.
      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.
      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.
      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.
      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.
      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.
      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).
      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.
      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."
      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.
   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.
   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.
   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:
      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and
      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and
      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and
      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.
      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.
   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.
   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.
   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.
   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.
   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.
   END OF TERMS AND CONDITIONS
   APPENDIX: How to apply the Apache License to your work.
      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "[]"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.
   Portions Copyright (c) Microsoft Corporation.
   Portions Copyright 2017 Google Inc.
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
       http://www.apache.org/licenses/LICENSE-2.0
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
scripts/node_modules/playwright/NOTICE
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
Playwright
Copyright (c) Microsoft Corporation
This software contains code derived from the Puppeteer project (https://github.com/puppeteer/puppeteer),
available under the Apache 2.0 license (https://github.com/puppeteer/puppeteer/blob/master/LICENSE).
scripts/node_modules/playwright/README.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,318 @@
# ðŸŽ­ Playwright
[![npm version](https://img.shields.io/npm/v/playwright.svg)](https://www.npmjs.com/package/playwright) <!-- GEN:chromium-version-badge -->[![Chromium version](https://img.shields.io/badge/chromium-149.0.7827.55-blue.svg?logo=google-chrome)](https://www.chromium.org/Home)<!-- GEN:stop --> <!-- GEN:firefox-version-badge -->[![Firefox version](https://img.shields.io/badge/firefox-151.0-blue.svg?logo=firefoxbrowser)](https://www.mozilla.org/en-US/firefox/new/)<!-- GEN:stop --> <!-- GEN:webkit-version-badge -->[![WebKit version](https://img.shields.io/badge/webkit-26.5-blue.svg?logo=safari)](https://webkit.org/)<!-- GEN:stop --> [![Join Discord](https://img.shields.io/badge/join-discord-informational)](https://aka.ms/playwright/discord)
## [Documentation](https://playwright.dev) | [API reference](https://playwright.dev/docs/api/class-playwright)
Playwright is a framework for web automation and testing. It drives Chromium, Firefox, and WebKit with a single API â€” in your tests, in your scripts, and as a tool for AI agents.
## Get Started
Choose the path that fits your workflow:
| | Best for | Install |
|---|---|---|
| **[Playwright Test](#playwright-test)** | End-to-end testing | `npm init playwright@latest` |
| **[Playwright CLI](#playwright-cli)** | Coding agents (Claude Code, Copilot) | `npm i -g @playwright/cli@latest` |
| **[Playwright MCP](#playwright-mcp)** | AI agents and LLM-driven automation | `npx @playwright/mcp@latest` |
| **[Playwright Library](#playwright-library)** | Browser automation scripts | `npm i playwright` |
| **[VS Code Extension](#vs-code-extension)** | Test authoring and debugging in VS Code | [Install from Marketplace](https://marketplace.visualstudio.com/items?itemName=ms-playwright.playwright) |
---
## Playwright Test
Playwright Test is a full-featured test runner built for end-to-end testing. It runs tests across Chromium, Firefox, and WebKit with full browser isolation, auto-waiting, and web-first assertions.
### Install
```bash
npm init playwright@latest
```
Or add manually:
```bash
npm i -D @playwright/test
npx playwright install
```
### Write a test
```TypeScript
import { test, expect } from '@playwright/test';
test('has title', async ({ page }) => {
  await page.goto('https://playwright.dev/');
  await expect(page).toHaveTitle(/Playwright/);
});
test('get started link', async ({ page }) => {
  await page.goto('https://playwright.dev/');
  await page.getByRole('link', { name: 'Get started' }).click();
  await expect(page.getByRole('heading', { name: 'Installation' })).toBeVisible();
});
```
### Run tests
```bash
npx playwright test
```
Tests run in parallel across all configured browsers, in headless mode by default. Each test gets a fresh browser context â€” full isolation with near-zero overhead.
### Key capabilities
**Auto-wait and web-first assertions.** No artificial timeouts. Playwright waits for elements to be actionable, and assertions automatically retry until conditions are met.
**Locators.** Find elements with resilient locators that mirror how users see the page:
```TypeScript
page.getByRole('button', { name: 'Submit' })
page.getByLabel('Email')
page.getByPlaceholder('Search...')
page.getByTestId('login-form')
```
**Test isolation.** Each test runs in its own browser context â€” equivalent to a fresh browser profile. Save authentication state once and reuse it across tests:
```TypeScript
// Save state after login
await page.context().storageState({ path: 'auth.json' });
// Reuse in other tests
test.use({ storageState: 'auth.json' });
```
**Tracing.** Capture execution traces, screenshots, and videos on failure. Inspect every action, DOM snapshot, network request, and console message in the [Trace Viewer](https://playwright.dev/docs/trace-viewer):
```TypeScript
// playwright.config.ts
export default defineConfig({
  use: {
    trace: 'on-first-retry',
  },
});
```
```bash
npx playwright show-trace trace.zip
```
<!-- TODO: screenshot of trace viewer -->
**Parallelism.** Tests run in parallel by default across all configured browsers.
[Full testing documentation](https://playwright.dev/docs/intro)
---
## Playwright CLI
[Playwright CLI](https://github.com/microsoft/playwright-cli) is a command-line interface for browser automation designed for coding agents. It's more token-efficient than MCP â€” commands avoid loading large tool schemas and accessibility trees into the model context.
### Install
```bash
npm install -g @playwright/cli@latest
```
Optionally install skills for richer agent integration:
```bash
playwright-cli install --skills
```
### Usage
Point your coding agent at a task:
```
Test the "add todo" flow on https://demo.playwright.dev/todomvc using playwright-cli.
Take screenshots for all successful and failing scenarios.
```
Or run commands directly:
```bash
playwright-cli open https://demo.playwright.dev/todomvc/ --headed
playwright-cli type "Buy groceries"
playwright-cli press Enter
playwright-cli screenshot
```
### Session monitoring
Use `playwright-cli show` to open a visual dashboard with live screencast previews of all running browser sessions. Click any session to zoom in and take remote control.
```bash
playwright-cli show
```
<!-- TODO: screenshot of playwright-cli show dashboard -->
[Full CLI documentation](https://playwright.dev/agent-cli/introduction) | [GitHub](https://github.com/microsoft/playwright-cli)
---
## Playwright MCP
The [Playwright MCP server](https://github.com/microsoft/playwright-mcp) gives AI agents full browser control through the [Model Context Protocol](https://modelcontextprotocol.io). Agents interact with pages using structured accessibility snapshots â€” no vision models or screenshots required.
### Setup
Add to your MCP client (VS Code, Cursor, Claude Desktop, Windsurf, etc.):
```json
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp@latest"]
    }
  }
}
```
**One-click install for VS Code:**
[<img src="https://img.shields.io/badge/VS_Code-VS_Code?style=flat-square&label=Install%20MCP%20Server&color=0098FF" alt="Install in VS Code" />](https://insiders.vscode.dev/redirect?url=vscode%3Amcp%2Finstall%3F%257B%2522name%2522%253A%2522playwright%2522%252C%2522command%2522%253A%2522npx%2522%252C%2522args%2522%253A%255B%2522%2540playwright%252Fmcp%2540latest%2522%255D%257D)
**For Claude Code:**
```bash
claude mcp add playwright npx @playwright/mcp@latest
```
### How it works
Ask your AI assistant to interact with any web page:
```
Navigate to https://demo.playwright.dev/todomvc and add a few todo items.
```
The agent sees the page as a structured accessibility tree:
```
- heading "todos" [level=1]
- textbox "What needs to be done?" [ref=e5]
- listitem:
  - checkbox "Toggle Todo" [ref=e10]
  - text: "Buy groceries"
```
It uses element refs like `e5` and `e10` to click, type, and interact â€” deterministically and without visual ambiguity. Tools cover navigation, form filling, screenshots, network mocking, storage management, and more.
[Full MCP documentation](https://playwright.dev/mcp/introduction) | [GitHub](https://github.com/microsoft/playwright-mcp)
---
## Playwright Library
Use `playwright` as a library for browser automation scripts â€” web scraping, PDF generation, screenshot capture, and any workflow that needs programmatic browser control without a test runner.
### Install
```bash
npm i playwright
```
### Examples
**Take a screenshot:**
```TypeScript
import { chromium } from 'playwright';
const browser = await chromium.launch();
const page = await browser.newPage();
await page.goto('https://playwright.dev/');
await page.screenshot({ path: 'screenshot.png' });
await browser.close();
```
**Generate a PDF:**
```TypeScript
import { chromium } from 'playwright';
const browser = await chromium.launch();
const page = await browser.newPage();
await page.goto('https://playwright.dev/');
await page.pdf({ path: 'page.pdf', format: 'A4' });
await browser.close();
```
**Emulate a mobile device:**
```TypeScript
import { chromium, devices } from 'playwright';
const browser = await chromium.launch();
const context = await browser.newContext(devices['iPhone 15']);
const page = await context.newPage();
await page.goto('https://playwright.dev/');
await page.screenshot({ path: 'mobile.png' });
await browser.close();
```
**Intercept network requests:**
```TypeScript
import { chromium } from 'playwright';
const browser = await chromium.launch();
const page = await browser.newPage();
await page.route('**/*.{png,jpg,jpeg}', route => route.abort());
await page.goto('https://playwright.dev/');
await browser.close();
```
[Library documentation](https://playwright.dev/docs/library) | [API reference](https://playwright.dev/docs/api/class-playwright)
---
## VS Code Extension
The [Playwright VS Code extension](https://marketplace.visualstudio.com/items?itemName=ms-playwright.playwright) brings test running, debugging, and code generation directly into your editor.
<!-- TODO: hero screenshot of VS Code with Playwright sidebar -->
**Run and debug tests** from the editor with a single click. Set breakpoints, inspect variables, and step through test execution with a live browser view.
**Generate tests with CodeGen.** Click "Record new" to open a browser â€” navigate and interact with your app while Playwright writes the test code for you.
**Pick locators.** Hover over any element in the browser to see the best available locator, then click to copy it to your clipboard.
**Trace Viewer integration.** Enable "Show Trace Viewer" in the sidebar to get a full execution trace after each test run â€” DOM snapshots, network requests, console logs, and screenshots at every step.
[Install the extension](https://marketplace.visualstudio.com/items?itemName=ms-playwright.playwright) | [VS Code guide](https://playwright.dev/docs/getting-started-vscode)
---
## Cross-Browser Support
|          | Linux | macOS | Windows |
|   :---   | :---: | :---: | :---:   |
| Chromium<sup>1</sup> <!-- GEN:chromium-version -->149.0.7827.55<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| WebKit <!-- GEN:webkit-version -->26.5<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| Firefox <!-- GEN:firefox-version -->151.0<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
Headless and headed execution on all platforms. <sup>1</sup> Uses [Chrome for Testing](https://developer.chrome.com/blog/chrome-for-testing) by default.
## Other Languages
Playwright is also available for [Python](https://playwright.dev/python/docs/intro), [.NET](https://playwright.dev/dotnet/docs/intro), and [Java](https://playwright.dev/java/docs/intro).
## Resources
* [Documentation](https://playwright.dev)
* [API reference](https://playwright.dev/docs/api/class-playwright)
* [MCP server](https://github.com/microsoft/playwright-mcp)
* [CLI for coding agents](https://github.com/microsoft/playwright-cli)
* [VS Code extension](https://github.com/microsoft/playwright-vscode)
* [Contribution guide](CONTRIBUTING.md)
* [Changelog](https://github.com/microsoft/playwright/releases)
* [Discord](https://aka.ms/playwright/discord)
scripts/node_modules/playwright/ThirdPartyNotices.txt
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
microsoft/playwright
THIRD-PARTY SOFTWARE NOTICES AND INFORMATION
This package bundles third-party software inside individual files under
`lib/`. Each bundled output has a sidecar `<bundle>.js.LICENSE` file next
to it listing every npm package whose source was inlined into that
bundle, together with the full license text for each.
For example:
- lib/common/index.js.LICENSE
- lib/matchers/expect.js.LICENSE
This project incorporates components from the projects listed below. The original copyright notices and the licenses under which Microsoft received such components are set forth below. Microsoft reserves all rights not expressly granted herein, whether by implication, estoppel or otherwise.
scripts/node_modules/playwright/cli.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
#!/usr/bin/env node
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
const { program } = require('./lib/program');
program.parse(process.argv);
scripts/node_modules/playwright/index.d.ts
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
export * from 'playwright-core';
scripts/node_modules/playwright/index.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
module.exports = require('playwright-core');
scripts/node_modules/playwright/index.mjs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
export * from 'playwright-core';
import playwright from 'playwright-core';
export default playwright;
scripts/node_modules/playwright/jsx-runtime.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
function jsx(type, props, key) {
  return {
    __pw_type: 'jsx',
    type,
    props,
    key,
  };
}
function jsxs(type, props, key) {
  return {
    __pw_type: 'jsx',
    type,
    props,
    key,
  };
}
// this is used in <></> notation
const Fragment = { __pw_jsx_fragment: true };
module.exports = {
  Fragment,
  jsx,
  jsxs,
};
scripts/node_modules/playwright/jsx-runtime.mjs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import jsxRuntime from './jsx-runtime.js';
export const jsx = jsxRuntime.jsx;
export const jsxs = jsxRuntime.jsxs;
export const Fragment = jsxRuntime.Fragment;
scripts/node_modules/playwright/lib/agents/agentParser.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,89 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var agentParser_exports = {};
__export(agentParser_exports, {
  parseAgentSpec: () => parseAgentSpec
});
module.exports = __toCommonJS(agentParser_exports);
var import_fs = __toESM(require("fs"));
const yaml = require("playwright-core/lib/utilsBundle").yaml;
async function parseAgentSpec(filePath) {
  const source = await import_fs.default.promises.readFile(filePath, "utf-8");
  const { header, content } = extractYamlAndContent(source);
  const { instructions, examples } = extractInstructionsAndExamples(content);
  return {
    ...header,
    instructions,
    examples
  };
}
function extractYamlAndContent(markdown) {
  const lines = markdown.split("\n");
  if (lines[0] !== "---")
    throw new Error("Markdown file must start with YAML front matter (---)");
  let yamlEndIndex = -1;
  for (let i = 1; i < lines.length; i++) {
    if (lines[i] === "---") {
      yamlEndIndex = i;
      break;
    }
  }
  if (yamlEndIndex === -1)
    throw new Error("YAML front matter must be closed with ---");
  const yamlLines = lines.slice(1, yamlEndIndex);
  const yamlRaw = yamlLines.join("\n");
  const contentLines = lines.slice(yamlEndIndex + 1);
  const content = contentLines.join("\n");
  let header;
  try {
    header = yaml.parse(yamlRaw);
  } catch (error) {
    throw new Error(`Failed to parse YAML header: ${error.message}`);
  }
  if (!header.name)
    throw new Error('YAML header must contain a "name" field');
  if (!header.description)
    throw new Error('YAML header must contain a "description" field');
  return { header, content };
}
function extractInstructionsAndExamples(content) {
  const examples = [];
  const instructions = content.split("<example>")[0].trim();
  const exampleRegex = /<example>([\s\S]*?)<\/example>/g;
  let match;
  while ((match = exampleRegex.exec(content)) !== null) {
    const example = match[1].trim();
    examples.push(example.replace(/[\n]/g, " ").replace(/ +/g, " "));
  }
  return { instructions, examples };
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  parseAgentSpec
});
scripts/node_modules/playwright/lib/agents/copilot-setup-steps.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,34 @@
name: "Copilot Setup Steps"
on:
  workflow_dispatch:
  push:
    paths:
      - .github/workflows/copilot-setup-steps.yml
  pull_request:
    paths:
      - .github/workflows/copilot-setup-steps.yml
jobs:
  copilot-setup-steps:
    runs-on: ubuntu-latest
    permissions:
      contents: read
    steps:
    - uses: actions/checkout@v4
    - uses: actions/setup-node@v4
      with:
        node-version: lts/*
    - name: Install dependencies
      run: npm ci
    - name: Install Playwright Browsers
      run: npx playwright install --with-deps
    # Customize this step as needed
    - name: Build application
      run: npx run build
scripts/node_modules/playwright/lib/agents/generateAgents.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,395 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var generateAgents_exports = {};
__export(generateAgents_exports, {
  ClaudeGenerator: () => ClaudeGenerator,
  CodexGenerator: () => CodexGenerator,
  CopilotGenerator: () => CopilotGenerator,
  OpencodeGenerator: () => OpencodeGenerator,
  VSCodeGenerator: () => VSCodeGenerator
});
module.exports = __toCommonJS(generateAgents_exports);
var import_fs = __toESM(require("fs"));
var import_path = __toESM(require("path"));
var import_seed = require("../mcp/test/seed");
var import_agentParser = require("./agentParser");
const colors = require("playwright-core/lib/utilsBundle").colors;
const yaml = require("playwright-core/lib/utilsBundle").yaml;
const { tomlArray, tomlBasicString, tomlMultilineBasicString } = require("playwright-core/lib/coreBundle").iso;
const { mkdirIfNeeded } = require("playwright-core/lib/coreBundle").utils;
async function loadAgentSpecs() {
  const files = await import_fs.default.promises.readdir(__dirname);
  return Promise.all(files.filter((file) => file.endsWith(".agent.md")).map((file) => (0, import_agentParser.parseAgentSpec)(import_path.default.join(__dirname, file))));
}
class ClaudeGenerator {
  static async init(fullConfig, projectName, prompts) {
    await initRepo(fullConfig, projectName, {
      promptsFolder: prompts ? ".claude/prompts" : void 0
    });
    const agents = await loadAgentSpecs();
    await import_fs.default.promises.mkdir(".claude/agents", { recursive: true });
    for (const agent of agents)
      await writeFile(`.claude/agents/${agent.name}.md`, ClaudeGenerator.agentSpec(agent), "\u{1F916}", "agent definition");
    const mcpServer = process.platform === "win32" ? { command: "cmd", args: ["/c", "npx", "playwright", "run-test-mcp-server"] } : { command: "npx", args: ["playwright", "run-test-mcp-server"] };
    await writeFile(".mcp.json", JSON.stringify({
      mcpServers: {
        "playwright-test": mcpServer
      }
    }, null, 2), "\u{1F527}", "mcp configuration");
    initRepoDone();
  }
  static agentSpec(agent) {
    const claudeToolMap = /* @__PURE__ */ new Map([
      ["search", ["Glob", "Grep", "Read", "LS"]],
      ["edit", ["Edit", "MultiEdit", "Write"]]
    ]);
    function asClaudeTool(tool) {
      const [first, second] = tool.split("/");
      if (!second)
        return (claudeToolMap.get(first) || [first]).join(", ");
      return `mcp__${first}__${second}`;
    }
    const examples = agent.examples.length ? ` Examples: ${agent.examples.map((example) => `<example>${example}</example>`).join("")}` : "";
    const lines = [];
    const header = {
      name: agent.name,
      description: agent.description + examples,
      tools: agent.tools.map((tool) => asClaudeTool(tool)).join(", "),
      model: agent.model,
      color: agent.color
    };
    lines.push(`---`);
    lines.push(yaml.stringify(header, { lineWidth: 1e5 }) + `---`);
    lines.push("");
    lines.push(agent.instructions);
    return lines.join("\n");
  }
}
class CodexGenerator {
  static async init(fullConfig, projectName, prompts) {
    await initRepo(fullConfig, projectName, {
      promptsFolder: prompts ? ".codex/prompts" : void 0
    });
    const agents = await loadAgentSpecs();
    await import_fs.default.promises.mkdir(".codex/agents", { recursive: true });
    for (const agent of agents)
      await writeFile(`.codex/agents/${CodexGenerator.codexName(agent)}.toml`, CodexGenerator.agentSpec(agent), "\u{1F916}", "agent definition");
    initRepoDone();
  }
  // Codex's subagent registry rejects hyphenated identifiers at spawn time with
  // `error=unknown agent_type '<name>'`. Codex's own documentation only shows
  // snake_case names (`pr_explorer`, `reviewer`, `docs_researcher`, ...), see
  // https://developers.openai.com/codex/subagents. Translate the shared agent
  // name into snake_case so the filename and the `name` field stay in sync.
  static codexName(agent) {
    return agent.name.replace(/-/g, "_");
  }
  static agentSpec(agent) {
    const mcpName = "playwright-test";
    const enabledTools = [];
    for (const tool of agent.tools) {
      const [first, second] = tool.split("/");
      if (second && first === mcpName)
        enabledTools.push(second);
    }
    const sandboxMode = agent.tools.includes("edit") ? "workspace-write" : "read-only";
    const mcpServer = process.platform === "win32" ? { command: "cmd", args: ["/c", "npx", "playwright", "run-test-mcp-server"] } : { command: "npx", args: ["playwright", "run-test-mcp-server"] };
    const examples = agent.examples.length ? ` Examples: ${agent.examples.map((example) => `<example>${example}</example>`).join("")}` : "";
    const lines = [];
    lines.push(`name = ${tomlBasicString(CodexGenerator.codexName(agent))}`);
    lines.push(`description = ${tomlBasicString(agent.description + examples)}`);
    lines.push(`sandbox_mode = ${tomlBasicString(sandboxMode)}`);
    lines.push(`developer_instructions = ${tomlMultilineBasicString(agent.instructions)}`);
    lines.push("");
    lines.push(`[mcp_servers.${mcpName}]`);
    lines.push(`command = ${tomlBasicString(mcpServer.command)}`);
    lines.push(`args = ${tomlArray(mcpServer.args)}`);
    if (enabledTools.length)
      lines.push(`enabled_tools = ${tomlArray(enabledTools)}`);
    lines.push("");
    return lines.join("\n");
  }
}
class OpencodeGenerator {
  static async init(fullConfig, projectName, prompts) {
    await initRepo(fullConfig, projectName, {
      defaultAgentName: "Build",
      promptsFolder: prompts ? ".opencode/prompts" : void 0
    });
    const agents = await loadAgentSpecs();
    for (const agent of agents) {
      const prompt = [agent.instructions];
      prompt.push("");
      prompt.push(...agent.examples.map((example) => `<example>${example}</example>`));
      await writeFile(`.opencode/prompts/${agent.name}.md`, prompt.join("\n"), "\u{1F916}", "agent definition");
    }
    await writeFile("opencode.json", OpencodeGenerator.configuration(agents), "\u{1F527}", "opencode configuration");
    initRepoDone();
  }
  static configuration(agents) {
    const opencodeToolMap = /* @__PURE__ */ new Map([
      ["search", ["ls", "glob", "grep", "read"]],
      ["edit", ["edit", "write"]]
    ]);
    const asOpencodeTool = (tools, tool) => {
      const [first, second] = tool.split("/");
      if (!second) {
        for (const tool2 of opencodeToolMap.get(first) || [first])
          tools[tool2] = true;
      } else {
        tools[`${first}*${second}`] = true;
      }
    };
    const result = {};
    result["$schema"] = "https://opencode.ai/config.json";
    result["mcp"] = {};
    result["tools"] = {
      "playwright*": false
    };
    result["agent"] = {};
    for (const agent of agents) {
      const tools = {};
      result["agent"][agent.name] = {
        description: agent.description,
        mode: "subagent",
        prompt: `{file:.opencode/prompts/${agent.name}.md}`,
        tools
      };
      for (const tool of agent.tools)
        asOpencodeTool(tools, tool);
    }
    result["mcp"]["playwright-test"] = {
      type: "local",
      command: ["npx", "playwright", "run-test-mcp-server"],
      enabled: true
    };
    return JSON.stringify(result, null, 2);
  }
}
class CopilotGenerator {
  static async init(fullConfig, projectName, prompts) {
    await initRepo(fullConfig, projectName, {
      defaultAgentName: "agent",
      promptsFolder: prompts ? ".github/prompts" : void 0,
      promptSuffix: "prompt"
    });
    const agents = await loadAgentSpecs();
    await import_fs.default.promises.mkdir(".github/agents", { recursive: true });
    for (const agent of agents)
      await writeFile(`.github/agents/${agent.name}.agent.md`, CopilotGenerator.agentSpec(agent), "\u{1F916}", "agent definition");
    await deleteFile(`.github/chatmodes/ \u{1F3AD} planner.chatmode.md`, "legacy planner chatmode");
    await deleteFile(`.github/chatmodes/\u{1F3AD} generator.chatmode.md`, "legacy generator chatmode");
    await deleteFile(`.github/chatmodes/\u{1F3AD} healer.chatmode.md`, "legacy healer chatmode");
    await deleteFile(`.github/agents/ \u{1F3AD} planner.agent.md`, "legacy planner agent");
    await deleteFile(`.github/agents/\u{1F3AD} generator.agent.md`, "legacy generator agent");
    await deleteFile(`.github/agents/\u{1F3AD} healer.agent.md`, "legacy healer agent");
    await VSCodeGenerator.appendToMCPJson();
    const mcpConfig = { mcpServers: CopilotGenerator.mcpServers };
    if (!import_fs.default.existsSync(".github/copilot-setup-steps.yml")) {
      const yaml2 = import_fs.default.readFileSync(import_path.default.join(__dirname, "copilot-setup-steps.yml"), "utf-8");
      await writeFile(".github/workflows/copilot-setup-steps.yml", yaml2, "\u{1F527}", "GitHub Copilot setup steps");
    }
    console.log("");
    console.log("");
    console.log(" \u{1F527} TODO: GitHub > Settings > Copilot > Coding agent > MCP configuration");
    console.log("------------------------------------------------------------------");
    console.log(JSON.stringify(mcpConfig, null, 2));
    console.log("------------------------------------------------------------------");
    initRepoDone();
  }
  static agentSpec(agent) {
    const examples = agent.examples.length ? ` Examples: ${agent.examples.map((example) => `<example>${example}</example>`).join("")}` : "";
    const lines = [];
    const header = {
      "name": agent.name,
      "description": agent.description + examples,
      "tools": agent.tools,
      "model": "Claude Sonnet 4.6",
      "mcp-servers": CopilotGenerator.mcpServers
    };
    lines.push(`---`);
    lines.push(yaml.stringify(header, { lineWidth: 1e5 }) + `---`);
    lines.push("");
    lines.push(agent.instructions);
    lines.push("");
    return lines.join("\n");
  }
  static {
    this.mcpServers = {
      "playwright-test": {
        "type": "stdio",
        "command": "npx",
        "args": [
          "playwright",
          "run-test-mcp-server"
        ],
        "tools": ["*"]
      }
    };
  }
}
class VSCodeGenerator {
  static async init(fullConfig, projectName) {
    await initRepo(fullConfig, projectName, {
      promptsFolder: void 0
    });
    const agents = await loadAgentSpecs();
    const nameMap = /* @__PURE__ */ new Map([
      ["playwright-test-planner", " \u{1F3AD} planner"],
      ["playwright-test-generator", "\u{1F3AD} generator"],
      ["playwright-test-healer", "\u{1F3AD} healer"]
    ]);
    await import_fs.default.promises.mkdir(".github/chatmodes", { recursive: true });
    for (const agent of agents)
      await writeFile(`.github/chatmodes/${nameMap.get(agent.name)}.chatmode.md`, VSCodeGenerator.agentSpec(agent), "\u{1F916}", "chatmode definition");
    await VSCodeGenerator.appendToMCPJson();
    initRepoDone();
  }
  static async appendToMCPJson() {
    await import_fs.default.promises.mkdir(".vscode", { recursive: true });
    const mcpJsonPath = ".vscode/mcp.json";
    let mcpJson = {
      servers: {},
      inputs: []
    };
    try {
      mcpJson = JSON.parse(import_fs.default.readFileSync(mcpJsonPath, "utf8"));
    } catch {
    }
    if (!mcpJson.servers)
      mcpJson.servers = {};
    mcpJson.servers["playwright-test"] = {
      type: "stdio",
      command: "npx",
      args: ["playwright", "run-test-mcp-server"]
    };
    await writeFile(mcpJsonPath, JSON.stringify(mcpJson, null, 2), "\u{1F527}", "mcp configuration");
  }
  static agentSpec(agent) {
    const vscodeToolMap = /* @__PURE__ */ new Map([
      ["search", ["search/listDirectory", "search/fileSearch", "search/textSearch"]],
      ["read", ["search/readFile"]],
      ["edit", ["edit/editFiles"]],
      ["write", ["edit/createFile", "edit/createDirectory"]]
    ]);
    const vscodeToolsOrder = ["edit/createFile", "edit/createDirectory", "edit/editFiles", "search/fileSearch", "search/textSearch", "search/listDirectory", "search/readFile"];
    const vscodeMcpName = "playwright-test";
    function asVscodeTool(tool) {
      const [first, second] = tool.split("/");
      if (second)
        return `${vscodeMcpName}/${second}`;
      return vscodeToolMap.get(first) || first;
    }
    const tools = agent.tools.map(asVscodeTool).flat().sort((a, b) => {
      const indexA = vscodeToolsOrder.indexOf(a);
      const indexB = vscodeToolsOrder.indexOf(b);
      if (indexA === -1 && indexB === -1)
        return a.localeCompare(b);
      if (indexA === -1)
        return 1;
      if (indexB === -1)
        return -1;
      return indexA - indexB;
    }).map((tool) => `'${tool}'`).join(", ");
    const lines = [];
    lines.push(`---`);
    lines.push(`description: ${agent.description}.`);
    lines.push(`tools: [${tools}]`);
    lines.push(`---`);
    lines.push("");
    lines.push(agent.instructions);
    for (const example of agent.examples)
      lines.push(`<example>${example}</example>`);
    lines.push("");
    return lines.join("\n");
  }
}
async function writeFile(filePath, content, icon, description) {
  console.log(` ${icon} ${import_path.default.relative(process.cwd(), filePath)} ${colors.dim("- " + description)}`);
  await mkdirIfNeeded(filePath);
  await import_fs.default.promises.writeFile(filePath, content, "utf-8");
}
async function deleteFile(filePath, description) {
  try {
    if (!import_fs.default.existsSync(filePath))
      return;
  } catch {
    return;
  }
  console.log(` \u2702\uFE0F  ${import_path.default.relative(process.cwd(), filePath)} ${colors.dim("- " + description)}`);
  await import_fs.default.promises.unlink(filePath);
}
async function initRepo(fullConfig, projectName, options) {
  const project = (0, import_seed.seedProject)(fullConfig, projectName);
  console.log(` \u{1F3AD} Using project "${project.project.name}" as a primary project`);
  if (!import_fs.default.existsSync("specs")) {
    await import_fs.default.promises.mkdir("specs");
    await writeFile(import_path.default.join("specs", "README.md"), `# Specs
This is a directory for test plans.
`, "\u{1F4DD}", "directory for test plans");
  }
  let seedFile = await (0, import_seed.findSeedFile)(project);
  if (!seedFile) {
    seedFile = (0, import_seed.defaultSeedFile)(project);
    await writeFile(seedFile, import_seed.seedFileContent, "\u{1F331}", "default environment seed file");
  }
  if (options.promptsFolder) {
    await import_fs.default.promises.mkdir(options.promptsFolder, { recursive: true });
    for (const promptFile of await import_fs.default.promises.readdir(__dirname)) {
      if (!promptFile.endsWith(".prompt.md"))
        continue;
      const shortName = promptFile.replace(".prompt.md", "");
      const fileName = options.promptSuffix ? `${shortName}.${options.promptSuffix}.md` : `${shortName}.md`;
      const content = await loadPrompt(promptFile, {
        defaultAgentName: "default",
        ...options,
        seedFile: import_path.default.relative(process.cwd(), seedFile)
      });
      await writeFile(import_path.default.join(options.promptsFolder, fileName), content, "\u{1F4DD}", "prompt template");
    }
  }
}
function initRepoDone() {
  console.log(" \u2705 Done.");
}
async function loadPrompt(file, params) {
  const content = await import_fs.default.promises.readFile(import_path.default.join(__dirname, file), "utf-8");
  return Object.entries(params).reduce((acc, [key, value]) => {
    return acc.replace(new RegExp(`\\\${${key}}`, "g"), value);
  }, content);
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  ClaudeGenerator,
  CodexGenerator,
  CopilotGenerator,
  OpencodeGenerator,
  VSCodeGenerator
});
scripts/node_modules/playwright/lib/agents/playwright-test-coverage.prompt.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,31 @@
---
agent: ${defaultAgentName}
description: Produce test coverage
---
Parameters:
- Task: the task to perform
- Seed file (optional): the seed file to use, defaults to `${seedFile}`
- Test plan file (optional): the test plan file to write, under `specs/` folder.
1. Call #playwright-test-planner subagent with prompt:
<plan>
  <task-text><!-- the task --></task-text>
  <seed-file><!-- path to seed file --></seed-file>
  <plan-file><!-- path to test plan file to generate --></plan-file>
</plan>
2. For each test case from the test plan file (1.1, 1.2, ...), one after another, not in parallel, call #playwright-test-generator subagent with prompt:
<generate>
  <test-suite><!-- Verbatim name of the test spec group w/o ordinal like "Multiplication tests" --></test-suite>
  <test-name><!-- Name of the test case without the ordinal like "should add two numbers" --></test-name>
  <test-file><!-- Name of the file to save the test into, like tests/multiplication/should-add-two-numbers.spec.ts --></test-file>
  <seed-file><!-- Seed file path from test plan --></seed-file>
  <body><!-- Test case content including steps and expectations --></body>
</generate>
3. Call #playwright-test-healer subagent with prompt:
<heal>Run all tests and fix the failing ones one after another.</heal>
scripts/node_modules/playwright/lib/agents/playwright-test-generate.prompt.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
---
agent: playwright-test-generator
description: Generate test plan
---
Generate tests for the test plan's bullet 1.1 Add item to card.
Test plan: `specs/coverage.plan.md`
scripts/node_modules/playwright/lib/agents/playwright-test-generator.agent.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,88 @@
---
name: playwright-test-generator
description: Use this agent when you need to create automated browser tests using Playwright
model: sonnet
color: blue
tools:
  - search
  - playwright-test/browser_click
  - playwright-test/browser_drag
  - playwright-test/browser_evaluate
  - playwright-test/browser_file_upload
  - playwright-test/browser_handle_dialog
  - playwright-test/browser_hover
  - playwright-test/browser_navigate
  - playwright-test/browser_press_key
  - playwright-test/browser_select_option
  - playwright-test/browser_snapshot
  - playwright-test/browser_type
  - playwright-test/browser_verify_element_visible
  - playwright-test/browser_verify_list_visible
  - playwright-test/browser_verify_text_visible
  - playwright-test/browser_verify_value
  - playwright-test/browser_wait_for
  - playwright-test/generator_read_log
  - playwright-test/generator_setup_page
  - playwright-test/generator_write_test
---
You are a Playwright Test Generator, an expert in browser automation and end-to-end testing.
Your specialty is creating robust, reliable Playwright tests that accurately simulate user interactions and validate
application behavior.
# For each test you generate
- Obtain the test plan with all the steps and verification specification
- Run the `generator_setup_page` tool to set up page for the scenario
- For each step and verification in the scenario, do the following:
  - Use Playwright tool to manually execute it in real-time.
  - Use the step description as the intent for each Playwright tool call.
- Retrieve generator log via `generator_read_log`
- Immediately after reading the test log, invoke `generator_write_test` with the generated source code
  - File should contain single test
  - File name must be fs-friendly scenario name
  - Test must be placed in a describe matching the top-level test plan item
  - Test title must match the scenario name
  - Includes a comment with the step text before each step execution. Do not duplicate comments if step requires
    multiple actions.
  - Always use best practices from the log when generating tests.
   <example-generation>
   For following plan:
   ```markdown file=specs/plan.md
   ### 1. Adding New Todos
   **Seed:** `tests/seed.spec.ts`
   #### 1.1 Add Valid Todo
   **Steps:**
   1. Click in the "What needs to be done?" input field
   #### 1.2 Add Multiple Todos
   ...
   ```
   Following file is generated:
   ```ts file=add-valid-todo.spec.ts
   // spec: specs/plan.md
   // seed: tests/seed.spec.ts
   test.describe('Adding New Todos', () => {
     test('Add Valid Todo', async { page } => {
       // 1. Click in the "What needs to be done?" input field
       await page.click(...);
       ...
     });
   });
   ```
   </example-generation>
<example>
  Context: User wants to generate a test for the test plan item.
  <test-suite><!-- Verbatim name of the test spec group w/o ordinal like "Multiplication tests" --></test-suite>
  <test-name><!-- Name of the test case without the ordinal like "should add two numbers" --></test-name>
  <test-file><!-- Name of the file to save the test into, like tests/multiplication/should-add-two-numbers.spec.ts --></test-file>
  <seed-file><!-- Seed file path from test plan --></seed-file>
  <body><!-- Test case content including steps and expectations --></body>
</example>
scripts/node_modules/playwright/lib/agents/playwright-test-heal.prompt.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
---
agent: playwright-test-healer
description: Fix tests
---
Run all my tests and fix the failing ones.
scripts/node_modules/playwright/lib/agents/playwright-test-healer.agent.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,56 @@
---
name: playwright-test-healer
description: Use this agent when you need to debug and fix failing Playwright tests
model: sonnet
color: red
tools:
  - search
  - edit
  - playwright-test/browser_console_messages
  - playwright-test/browser_evaluate
  - playwright-test/browser_generate_locator
  - playwright-test/browser_network_request
  - playwright-test/browser_network_requests
  - playwright-test/browser_snapshot
  - playwright-test/test_debug
  - playwright-test/test_list
  - playwright-test/test_run
---
You are the Playwright Test Healer, an expert test automation engineer specializing in debugging and
resolving Playwright test failures. Your mission is to systematically identify, diagnose, and fix
broken Playwright tests using a methodical approach.
Your workflow:
1. **Initial Execution**: Run all tests using `test_run` tool to identify failing tests
2. **Debug failed tests**: For each failing test run `test_debug`.
3. **Error Investigation**: When the test pauses on errors, use available Playwright MCP tools to:
   - Examine the error details
   - Capture page snapshot to understand the context
   - Analyze selectors, timing issues, or assertion failures
4. **Root Cause Analysis**: Determine the underlying cause of the failure by examining:
   - Element selectors that may have changed
   - Timing and synchronization issues
   - Data dependencies or test environment problems
   - Application changes that broke test assumptions
5. **Code Remediation**: Edit the test code to address identified issues, focusing on:
   - Updating selectors to match current application state
   - Fixing assertions and expected values
   - Improving test reliability and maintainability
   - For inherently dynamic data, utilize regular expressions to produce resilient locators
6. **Verification**: Restart the test after each fix to validate the changes
7. **Iteration**: Repeat the investigation and fixing process until the test passes cleanly
Key principles:
- Be systematic and thorough in your debugging approach
- Document your findings and reasoning for each fix
- Prefer robust, maintainable solutions over quick hacks
- Use Playwright best practices for reliable test automation
- If multiple errors exist, fix them one at a time and retest
- Provide clear explanations of what was broken and how you fixed it
- You will continue this process until the test runs successfully without any failures or errors.
- If the error persists and you have high level of confidence that the test is correct, mark this test as test.fixme()
  so that it is skipped during the execution. Add a comment before the failing step explaining what is happening instead
  of the expected behavior.
- Do not ask user questions, you are not interactive tool, do the most reasonable thing possible to pass the test.
- Never wait for networkidle or use other discouraged or deprecated apis
scripts/node_modules/playwright/lib/agents/playwright-test-plan.prompt.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
---
agent: playwright-test-planner
description: Create test plan
---
Create test plan for "add to cart" functionality of my app.
- Seed file: `${seedFile}`
- Test plan: `specs/coverage.plan.md`
scripts/node_modules/playwright/lib/agents/playwright-test-planner.agent.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,74 @@
---
name: playwright-test-planner
description: Use this agent when you need to create comprehensive test plan for a web application or website
model: sonnet
color: green
tools:
  - search
  - playwright-test/browser_click
  - playwright-test/browser_close
  - playwright-test/browser_console_messages
  - playwright-test/browser_drag
  - playwright-test/browser_evaluate
  - playwright-test/browser_file_upload
  - playwright-test/browser_handle_dialog
  - playwright-test/browser_hover
  - playwright-test/browser_navigate
  - playwright-test/browser_navigate_back
  - playwright-test/browser_network_request
  - playwright-test/browser_network_requests
  - playwright-test/browser_press_key
  - playwright-test/browser_run_code_unsafe
  - playwright-test/browser_select_option
  - playwright-test/browser_snapshot
  - playwright-test/browser_take_screenshot
  - playwright-test/browser_type
  - playwright-test/browser_wait_for
  - playwright-test/planner_setup_page
  - playwright-test/planner_save_plan
---
You are an expert web test planner with extensive experience in quality assurance, user experience testing, and test
scenario design. Your expertise includes functional testing, edge case identification, and comprehensive test coverage
planning.
You will:
1. **Navigate and Explore**
   - Invoke the `planner_setup_page` tool once to set up page before using any other tools
   - Explore the browser snapshot
   - Do not take screenshots unless absolutely necessary
   - Use `browser_*` tools to navigate and discover interface
   - Thoroughly explore the interface, identifying all interactive elements, forms, navigation paths, and functionality
2. **Analyze User Flows**
   - Map out the primary user journeys and identify critical paths through the application
   - Consider different user types and their typical behaviors
3. **Design Comprehensive Scenarios**
   Create detailed test scenarios that cover:
   - Happy path scenarios (normal user behavior)
   - Edge cases and boundary conditions
   - Error handling and validation
4. **Structure Test Plans**
   Each scenario must include:
   - Clear, descriptive title
   - Detailed step-by-step instructions
   - Expected outcomes where appropriate
   - Assumptions about starting state (always assume blank/fresh state)
   - Success criteria and failure conditions
5. **Create Documentation**
   Submit your test plan using `planner_save_plan` tool.
**Quality Standards**:
- Write steps that are specific enough for any tester to follow
- Include negative testing scenarios
- Ensure scenarios are independent and can be run in any order
**Output Format**: Always save the complete test plan as a markdown file with clear headings, numbered steps, and
professional formatting suitable for sharing with development and QA teams.
scripts/node_modules/playwright/lib/cli/reportActions.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,78 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var reportActions_exports = {};
__export(reportActions_exports, {
  mergeReports: () => mergeReports,
  showReport: () => showReport
});
module.exports = __toCommonJS(reportActions_exports);
var import_fs = __toESM(require("fs"));
var import_path = __toESM(require("path"));
var import_common = require("../common");
var import_runner = require("../runner");
const { gracefullyProcessExitDoNotHang } = require("playwright-core/lib/coreBundle").utils;
async function showReport(report, host, port) {
  await import_runner.html.showHTMLReport(report, host, port);
}
async function mergeReports(reportDir, opts) {
  const configFile = opts.config;
  const config = configFile ? await import_common.configLoader.loadConfigFromFile(configFile) : await import_common.configLoader.loadEmptyConfigForMergeReports();
  const dir = import_path.default.resolve(process.cwd(), reportDir || "");
  const dirStat = await import_fs.default.promises.stat(dir).catch((e) => null);
  if (!dirStat)
    throw new Error("Directory does not exist: " + dir);
  if (!dirStat.isDirectory())
    throw new Error(`"${dir}" is not a directory`);
  let reporterDescriptions = resolveReporterOption(opts.reporter);
  if (!reporterDescriptions && configFile)
    reporterDescriptions = config.config.reporter;
  if (!reporterDescriptions)
    reporterDescriptions = [[import_common.config.defaultReporter]];
  const rootDirOverride = configFile ? config.config.rootDir : void 0;
  await import_runner.merge.createMergedReport(config, dir, reporterDescriptions, rootDirOverride);
  gracefullyProcessExitDoNotHang(0);
}
function resolveReporterOption(reporter) {
  if (!reporter || !reporter.length)
    return void 0;
  return reporter.split(",").map((r) => [resolveReporter(r)]);
}
function resolveReporter(id) {
  if (import_common.builtInReporters.includes(id))
    return id;
  const localPath = import_path.default.resolve(process.cwd(), id);
  if (import_fs.default.existsSync(localPath))
    return localPath;
  return require.resolve(id, { paths: [process.cwd()] });
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  mergeReports,
  showReport
});
scripts/node_modules/playwright/lib/cli/testActions.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,213 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var testActions_exports = {};
__export(testActions_exports, {
  clearCache: () => clearCache,
  runTestServerAction: () => runTestServerAction,
  runTests: () => runTests
});
module.exports = __toCommonJS(testActions_exports);
var import_fs = __toESM(require("fs"));
var import_path = __toESM(require("path"));
var import_common = require("../common");
var import_runner = require("../runner");
const { gracefullyProcessExitDoNotHang } = require("playwright-core/lib/coreBundle").utils;
const { startProfiling, stopProfiling } = require("playwright-core/lib/coreBundle").utils;
async function runTests(args, opts) {
  await startProfiling();
  const cliOverrides = overridesFromOptions(opts);
  cliOverrides.argv = process.argv;
  const config = await import_common.configLoader.loadConfigFromFile(opts.config, cliOverrides, opts.deps === false);
  const options = {
    locations: args.length ? args : void 0,
    grep: opts.grep,
    grepInvert: opts.grepInvert,
    onlyChanged: opts.onlyChanged === true ? "HEAD" : opts.onlyChanged,
    listMode: !!opts.list,
    projectFilter: opts.project || void 0,
    passWithNoTests: !!opts.passWithNoTests,
    lastFailed: !!opts.lastFailed,
    lastFailedFile: opts.lastFailedFile,
    testList: opts.testList ? import_path.default.resolve(process.cwd(), opts.testList) : void 0,
    testListInvert: opts.testListInvert ? import_path.default.resolve(process.cwd(), opts.testListInvert) : void 0,
    shardWeights: resolveShardWeightsOption()
  };
  import_runner.projectUtils.filterProjects(config.projects, options.projectFilter);
  if (opts.ui || opts.uiHost || opts.uiPort) {
    if (opts.onlyChanged)
      throw new Error(`--only-changed is not supported in UI mode. If you'd like that to change, see https://github.com/microsoft/playwright/issues/15075 for more details.`);
    const status2 = await import_runner.testServer.runUIMode(opts.config, cliOverrides, {
      host: opts.uiHost,
      port: opts.uiPort ? +opts.uiPort : void 0,
      args,
      grep: opts.grep,
      grepInvert: opts.grepInvert,
      project: opts.project || void 0,
      reporter: Array.isArray(opts.reporter) ? opts.reporter : opts.reporter ? [opts.reporter] : void 0
    });
    await stopProfiling("runner");
    const exitCode2 = status2 === "interrupted" ? 130 : status2 === "passed" ? 0 : 1;
    gracefullyProcessExitDoNotHang(exitCode2);
    return;
  }
  if (process.env.PWTEST_WATCH) {
    if (opts.onlyChanged)
      throw new Error(`--only-changed is not supported in watch mode. If you'd like that to change, file an issue and let us know about your usecase for it.`);
    const status2 = await import_runner.watchMode.runWatchModeLoop(
      import_common.configLoader.resolveConfigLocation(opts.config),
      {
        projects: opts.project,
        files: args,
        grep: opts.grep
      }
    );
    await stopProfiling("runner");
    const exitCode2 = status2 === "interrupted" ? 130 : status2 === "passed" ? 0 : 1;
    gracefullyProcessExitDoNotHang(exitCode2);
    return;
  }
  const status = await import_runner.testRunner.runAllTestsWithConfig(config, options);
  await stopProfiling("runner");
  const exitCode = status === "interrupted" ? 130 : status === "passed" ? 0 : 1;
  gracefullyProcessExitDoNotHang(exitCode);
}
async function runTestServerAction(opts) {
  const host = opts.host;
  const port = opts.port ? +opts.port : void 0;
  const status = await import_runner.testServer.runTestServer(opts.config, {}, { host, port });
  const exitCode = status === "interrupted" ? 130 : status === "passed" ? 0 : 1;
  gracefullyProcessExitDoNotHang(exitCode);
}
async function clearCache(opts) {
  const runner = new import_runner.testRunner.TestRunner(import_common.configLoader.resolveConfigLocation(opts.config), {});
  const { status } = await runner.clearCache(import_runner.runnerReporters.createErrorCollectingReporter(import_runner.base.terminalScreen));
  const exitCode = status === "interrupted" ? 130 : status === "passed" ? 0 : 1;
  gracefullyProcessExitDoNotHang(exitCode);
}
function overridesFromOptions(options) {
  if (options.ui) {
    options.debug = void 0;
    options.trace = void 0;
  }
  const overrides = {
    debug: options.debug,
    failOnFlakyTests: options.failOnFlakyTests ? true : void 0,
    forbidOnly: options.forbidOnly ? true : void 0,
    fullyParallel: options.fullyParallel ? true : void 0,
    globalTimeout: options.globalTimeout ? parseInt(options.globalTimeout, 10) : void 0,
    maxFailures: options.x ? 1 : options.maxFailures ? parseInt(options.maxFailures, 10) : void 0,
    outputDir: options.output ? import_path.default.resolve(process.cwd(), options.output) : void 0,
    pause: !!process.env.PWPAUSE,
    quiet: options.quiet ? options.quiet : void 0,
    repeatEach: options.repeatEach ? parseInt(options.repeatEach, 10) : void 0,
    retries: options.retries ? parseInt(options.retries, 10) : void 0,
    reporter: resolveReporterOption(options.reporter),
    shard: resolveShardOption(options.shard),
    timeout: options.timeout ? parseInt(options.timeout, 10) : void 0,
    tsconfig: options.tsconfig ? import_path.default.resolve(process.cwd(), options.tsconfig) : void 0,
    ignoreSnapshots: options.ignoreSnapshots ? !!options.ignoreSnapshots : void 0,
    updateSnapshots: options.updateSnapshots,
    updateSourceMethod: options.updateSourceMethod,
    use: {
      trace: options.trace
    },
    workers: options.workers
  };
  if (options.browser) {
    const browserOpt = options.browser.toLowerCase();
    if (!["all", "chromium", "firefox", "webkit"].includes(browserOpt))
      throw new Error(`Unsupported browser "${options.browser}", must be one of "all", "chromium", "firefox" or "webkit"`);
    const browserNames = browserOpt === "all" ? ["chromium", "firefox", "webkit"] : [browserOpt];
    overrides.projects = browserNames.map((browserName) => {
      return {
        name: browserName,
        use: { browserName }
      };
    });
  }
  if (options.headed)
    overrides.use.headless = false;
  if (options.debug === "inspector") {
    overrides.use.headless = false;
    process.env.PWDEBUG = "1";
  }
  if (overrides.tsconfig && !import_fs.default.existsSync(overrides.tsconfig))
    throw new Error(`--tsconfig "${options.tsconfig}" does not exist`);
  return overrides;
}
function resolveReporterOption(reporter) {
  if (!reporter || !reporter.length)
    return void 0;
  return reporter.split(",").map((r) => [resolveReporter(r)]);
}
function resolveShardOption(shard) {
  if (!shard)
    return void 0;
  const shardPair = shard.split("/");
  if (shardPair.length !== 2) {
    throw new Error(
      `--shard "${shard}", expected format is "current/all", 1-based, for example "3/5".`
    );
  }
  const current = parseInt(shardPair[0], 10);
  const total = parseInt(shardPair[1], 10);
  if (isNaN(total) || total < 1)
    throw new Error(`--shard "${shard}" total must be a positive number`);
  if (isNaN(current) || current < 1 || current > total) {
    throw new Error(
      `--shard "${shard}" current must be a positive number, not greater than shard total`
    );
  }
  return { current, total };
}
function resolveShardWeightsOption() {
  const shardWeights = process.env.PWTEST_SHARD_WEIGHTS;
  if (!shardWeights)
    return void 0;
  return shardWeights.split(":").map((w) => {
    const weight = parseInt(w, 10);
    if (isNaN(weight) || weight < 0)
      throw new Error(`PWTEST_SHARD_WEIGHTS="${shardWeights}" weights must be non-negative numbers`);
    return weight;
  });
}
function resolveReporter(id) {
  if (import_common.builtInReporters.includes(id))
    return id;
  const localPath = import_path.default.resolve(process.cwd(), id);
  if (import_fs.default.existsSync(localPath))
    return localPath;
  return require.resolve(id, { paths: [process.cwd()] });
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  clearCache,
  runTestServerAction,
  runTests
});
scripts/node_modules/playwright/lib/common/index.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,2932 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// packages/playwright/src/common/index.ts
var index_exports = {};
__export(index_exports, {
  FullConfigInternal: () => FullConfigInternal,
  ProcessRunner: () => ProcessRunner,
  builtInReporters: () => builtInReporters,
  cc: () => compilationCache_exports,
  config: () => config_exports,
  configLoader: () => configLoader_exports,
  defineConfig: () => defineConfig,
  fixtures: () => fixtures_exports,
  ipc: () => ipc_exports,
  mergeTests: () => mergeTests,
  poolBuilder: () => poolBuilder_exports,
  processRunner: () => process_exports,
  startProcessRunner: () => startProcessRunner,
  suiteUtils: () => suiteUtils_exports,
  test: () => test_exports,
  testLoader: () => testLoader_exports,
  testType: () => testType_exports,
  transform: () => transform_exports
});
module.exports = __toCommonJS(index_exports);
// packages/playwright/src/transform/compilationCache.ts
var compilationCache_exports = {};
__export(compilationCache_exports, {
  addToCompilationCache: () => addToCompilationCache,
  affectedTestFiles: () => affectedTestFiles,
  belongsToNodeModules: () => belongsToNodeModules,
  cacheDir: () => cacheDir,
  collectAffectedTestFiles: () => collectAffectedTestFiles,
  currentFileDepsCollector: () => currentFileDepsCollector,
  dependenciesForTestFile: () => dependenciesForTestFile,
  fileDependenciesForTest: () => fileDependenciesForTest,
  getFromCompilationCache: () => getFromCompilationCache,
  getUserData: () => getUserData,
  installSourceMapSupport: () => installSourceMapSupport,
  internalDependenciesForTestFile: () => internalDependenciesForTestFile,
  serializeCompilationCache: () => serializeCompilationCache,
  setExternalDependencies: () => setExternalDependencies,
  startCollectingFileDeps: () => startCollectingFileDeps,
  stopCollectingFileDeps: () => stopCollectingFileDeps
});
var import_fs = __toESM(require("fs"));
var import_os = __toESM(require("os"));
var import_path = __toESM(require("path"));
var import_globals = require("../globals");
var import_package = require("../package");
var sourceMapSupport = require("playwright-core/lib/utilsBundle").sourceMapSupport;
var { calculateSha1 } = require("playwright-core/lib/coreBundle").utils;
var { isUnderTest } = require("playwright-core/lib/coreBundle").utils;
var cacheDir = process.env.PWTEST_CACHE_DIR || (() => {
  if (process.platform === "win32")
    return import_path.default.join(import_os.default.tmpdir(), `playwright-transform-cache`);
  return import_path.default.join(import_os.default.tmpdir(), `playwright-transform-cache-` + process.geteuid?.());
})();
var sourceMaps = /* @__PURE__ */ new Map();
var memoryCache = /* @__PURE__ */ new Map();
var fileDependencies = /* @__PURE__ */ new Map();
var externalDependencies = /* @__PURE__ */ new Map();
var devSourceInfix = import_path.default.sep + "playwright" + import_path.default.sep + "packages" + import_path.default.sep;
function installSourceMapSupport() {
  Error.stackTraceLimit = 200;
  sourceMapSupport.install({
    environment: "node",
    handleUncaughtExceptions: false,
    retrieveSourceMap(source) {
      if (!process.env.PWDEBUGIMPL && isUnderTest() && source.includes(devSourceInfix))
        return { map: identitySourceMap(source), url: source };
      if (!sourceMaps.has(source))
        return null;
      const sourceMapPath = sourceMaps.get(source);
      try {
        return {
          map: JSON.parse(import_fs.default.readFileSync(sourceMapPath, "utf-8")),
          url: source
        };
      } catch {
        return null;
      }
    }
  });
}
function identitySourceMap(source) {
  const lineCount = import_fs.default.readFileSync(source, "utf8").split("\n").length;
  return {
    version: 3,
    sources: [source],
    mappings: lineCount ? "AAAA" + ";AACA".repeat(lineCount - 1) : ""
  };
}
function _innerAddToCompilationCacheAndSerialize(filename, entry) {
  sourceMaps.set(entry.moduleUrl || filename, entry.sourceMapPath);
  memoryCache.set(filename, entry);
  return {
    sourceMaps: [[entry.moduleUrl || filename, entry.sourceMapPath]],
    memoryCache: [[filename, entry]],
    fileDependencies: [],
    externalDependencies: []
  };
}
function getFromCompilationCache(filename, contentHash, moduleUrl) {
  const cache = memoryCache.get(filename);
  if (cache?.codePath) {
    try {
      return { cachedCode: import_fs.default.readFileSync(cache.codePath, "utf-8") };
    } catch {
    }
  }
  const filePathHash = calculateFilePathHash(filename);
  const hashPrefix = filePathHash + "_" + contentHash.substring(0, 7);
  const cacheFolderName = filePathHash.substring(0, 2);
  const cachePath = calculateCachePath(filename, cacheFolderName, hashPrefix);
  const codePath = cachePath + ".js";
  const sourceMapPath = cachePath + ".map";
  const dataPath = cachePath + ".data";
  try {
    const cachedCode = import_fs.default.readFileSync(codePath, "utf8");
    const serializedCache = _innerAddToCompilationCacheAndSerialize(filename, { codePath, sourceMapPath, dataPath, moduleUrl });
    return { cachedCode, serializedCache };
  } catch {
  }
  return {
    addToCache: (code, map, data) => {
      if ((0, import_globals.isWorkerProcess)())
        return {};
      clearOldCacheEntries(cacheFolderName, filePathHash);
      import_fs.default.mkdirSync(import_path.default.dirname(cachePath), { recursive: true });
      if (map)
        import_fs.default.writeFileSync(sourceMapPath, JSON.stringify(map), "utf8");
      if (data.size)
        import_fs.default.writeFileSync(dataPath, JSON.stringify(Object.fromEntries(data.entries()), void 0, 2), "utf8");
      import_fs.default.writeFileSync(codePath, code, "utf8");
      const serializedCache = _innerAddToCompilationCacheAndSerialize(filename, { codePath, sourceMapPath, dataPath, moduleUrl });
      return { serializedCache };
    }
  };
}
function serializeCompilationCache() {
  return {
    sourceMaps: [...sourceMaps.entries()],
    memoryCache: [...memoryCache.entries()],
    fileDependencies: [...fileDependencies.entries()].map(([filename, deps]) => [filename, [...deps]]),
    externalDependencies: [...externalDependencies.entries()].map(([filename, deps]) => [filename, [...deps]])
  };
}
function addToCompilationCache(payload) {
  for (const entry of payload.sourceMaps)
    sourceMaps.set(entry[0], entry[1]);
  for (const entry of payload.memoryCache)
    memoryCache.set(entry[0], entry[1]);
  for (const entry of payload.fileDependencies) {
    const existing = fileDependencies.get(entry[0]) || [];
    fileDependencies.set(entry[0], /* @__PURE__ */ new Set([...entry[1], ...existing]));
  }
  for (const entry of payload.externalDependencies) {
    const existing = externalDependencies.get(entry[0]) || [];
    externalDependencies.set(entry[0], /* @__PURE__ */ new Set([...entry[1], ...existing]));
  }
}
function calculateFilePathHash(filePath) {
  return calculateSha1(filePath).substring(0, 10);
}
function calculateCachePath(filePath, cacheFolderName, hashPrefix) {
  const fileName2 = hashPrefix + "_" + import_path.default.basename(filePath, import_path.default.extname(filePath)).replace(/\W/g, "");
  return import_path.default.join(cacheDir, cacheFolderName, fileName2);
}
function clearOldCacheEntries(cacheFolderName, filePathHash) {
  const cachePath = import_path.default.join(cacheDir, cacheFolderName);
  try {
    const cachedRelevantFiles = import_fs.default.readdirSync(cachePath).filter((file2) => file2.startsWith(filePathHash));
    for (const file2 of cachedRelevantFiles)
      import_fs.default.rmSync(import_path.default.join(cachePath, file2), { force: true });
  } catch {
  }
}
var depsCollector2;
function startCollectingFileDeps() {
  depsCollector2 = /* @__PURE__ */ new Set();
}
function stopCollectingFileDeps(filename) {
  if (!depsCollector2)
    return;
  depsCollector2.delete(filename);
  for (const dep of depsCollector2) {
    if (belongsToNodeModules(dep))
      depsCollector2.delete(dep);
  }
  fileDependencies.set(filename, depsCollector2);
  depsCollector2 = void 0;
}
function currentFileDepsCollector() {
  return depsCollector2;
}
function setExternalDependencies(filename, deps) {
  const depsSet = new Set(deps.filter((dep) => !belongsToNodeModules(dep) && dep !== filename));
  externalDependencies.set(filename, depsSet);
}
function fileDependenciesForTest() {
  return Object.fromEntries([...fileDependencies.entries()].map((entry) => [import_path.default.basename(entry[0]), [...entry[1]].map((f) => import_path.default.basename(f)).sort()]));
}
function collectAffectedTestFiles(changedFile, testFileCollector) {
  const isTestFile = (file2) => fileDependencies.has(file2);
  if (isTestFile(changedFile))
    testFileCollector.add(changedFile);
  for (const [testFile, deps] of fileDependencies) {
    if (deps.has(changedFile))
      testFileCollector.add(testFile);
  }
  for (const [importingFile, depsOfImportingFile] of externalDependencies) {
    if (depsOfImportingFile.has(changedFile)) {
      if (isTestFile(importingFile))
        testFileCollector.add(importingFile);
      for (const [testFile, depsOfTestFile] of fileDependencies) {
        if (depsOfTestFile.has(importingFile))
          testFileCollector.add(testFile);
      }
    }
  }
}
function affectedTestFiles(changes) {
  const result2 = /* @__PURE__ */ new Set();
  for (const change of changes)
    collectAffectedTestFiles(change, result2);
  return [...result2];
}
function internalDependenciesForTestFile(filename) {
  return fileDependencies.get(filename);
}
function dependenciesForTestFile(filename) {
  const result2 = /* @__PURE__ */ new Set();
  for (const testDependency of fileDependencies.get(filename) || []) {
    result2.add(testDependency);
    for (const externalDependency of externalDependencies.get(testDependency) || [])
      result2.add(externalDependency);
  }
  for (const dep of externalDependencies.get(filename) || [])
    result2.add(dep);
  return result2;
}
var kPlaywrightInternalPrefix = import_package.packageRoot;
function belongsToNodeModules(file2) {
  if (file2.includes(`${import_path.default.sep}node_modules${import_path.default.sep}`))
    return true;
  if (file2.startsWith(kPlaywrightInternalPrefix) && (file2.endsWith(".js") || file2.endsWith(".mjs")))
    return true;
  return false;
}
async function getUserData(pluginName) {
  const result2 = /* @__PURE__ */ new Map();
  for (const [fileName2, cache] of memoryCache) {
    if (!cache.dataPath)
      continue;
    if (!import_fs.default.existsSync(cache.dataPath))
      continue;
    const data = JSON.parse(await import_fs.default.promises.readFile(cache.dataPath, "utf8"));
    if (data[pluginName])
      result2.set(fileName2, data[pluginName]);
  }
  return result2;
}
// packages/playwright/src/common/config.ts
var config_exports = {};
__export(config_exports, {
  FullConfigInternal: () => FullConfigInternal,
  FullProjectInternal: () => FullProjectInternal,
  builtInReporters: () => builtInReporters,
  defaultGrep: () => defaultGrep,
  defaultReporter: () => defaultReporter,
  defaultTimeout: () => defaultTimeout,
  getProjectId: () => getProjectId,
  toReporters: () => toReporters
});
var import_fs3 = __toESM(require("fs"));
var import_os2 = __toESM(require("os"));
var import_path3 = __toESM(require("path"));
var import_package2 = require("../package");
// packages/playwright/src/util.ts
var import_fs2 = __toESM(require("fs"));
var import_path2 = __toESM(require("path"));
var import_util = __toESM(require("util"));
var debug = require("playwright-core/lib/utilsBundle").debug;
var mime = require("playwright-core/lib/utilsBundle").mime;
var minimatch = require("playwright-core/lib/utilsBundle").minimatch;
var { calculateSha1: calculateSha12 } = require("playwright-core/lib/coreBundle").utils;
var { sanitizeForFilePath } = require("playwright-core/lib/coreBundle").utils;
var { isRegExp } = require("playwright-core/lib/coreBundle").iso;
var { parseStackFrame, stringifyStackFrames } = require("playwright-core/lib/coreBundle").iso;
var { ansiRegex, isString, stripAnsiEscapes } = require("playwright-core/lib/coreBundle").iso;
var PLAYWRIGHT_TEST_PATH = import_path2.default.join(__dirname, "..");
var PLAYWRIGHT_CORE_PATH = import_path2.default.dirname(require.resolve("playwright-core/package.json"));
function filterStackTrace(e) {
  const name = e.name ? e.name + ": " : "";
  const cause = e.cause instanceof Error ? filterStackTrace(e.cause) : void 0;
  if (process.env.PWDEBUGIMPL)
    return { message: name + e.message, stack: e.stack || "", cause };
  const stackLines = stringifyStackFrames(filteredStackTrace(e.stack?.split("\n") || []));
  return {
    message: name + e.message,
    stack: `${name}${e.message}${stackLines.map((line) => "\n" + line).join("")}`,
    cause
  };
}
function filterStackFile(file2) {
  if (process.env.PWDEBUGIMPL)
    return true;
  if (file2.startsWith(PLAYWRIGHT_TEST_PATH))
    return false;
  if (file2.startsWith(PLAYWRIGHT_CORE_PATH))
    return false;
  return true;
}
function filteredStackTrace(rawStack) {
  const frames = [];
  for (const line of rawStack) {
    const frame = parseStackFrame(line, import_path2.default.sep, !!process.env.PWDEBUGIMPL);
    if (!frame || !frame.file)
      continue;
    if (!filterStackFile(frame.file))
      continue;
    frames.push(frame);
  }
  return frames;
}
function serializeError(error) {
  if (error instanceof Error)
    return filterStackTrace(error);
  return {
    value: import_util.default.inspect(error)
  };
}
function parseLocationArg(arg) {
  const match = /^(.*?):(\d+):?(\d+)?$/.exec(arg);
  return {
    file: match ? match[1] : arg,
    line: match ? parseInt(match[2], 10) : null,
    column: match?.[3] ? parseInt(match[3], 10) : null
  };
}
function createFileMatcher(patterns) {
  const reList = [];
  const filePatterns = [];
  for (const pattern of Array.isArray(patterns) ? patterns : [patterns]) {
    if (isRegExp(pattern)) {
      reList.push(pattern);
    } else {
      if (!pattern.startsWith("**/"))
        filePatterns.push("**/" + pattern);
      else
        filePatterns.push(pattern);
    }
  }
  return (filePath) => {
    for (const re of reList) {
      re.lastIndex = 0;
      if (re.test(filePath))
        return true;
    }
    if (import_path2.default.sep === "\\") {
      const unixPath = filePath.split(import_path2.default.sep).join("/");
      for (const re of reList) {
        re.lastIndex = 0;
        if (re.test(unixPath))
          return true;
      }
    }
    for (const pattern of filePatterns) {
      if (minimatch(filePath, pattern, { nocase: true, dot: true }))
        return true;
    }
    return false;
  };
}
function mergeObjects(a, b, c) {
  const result2 = { ...a };
  for (const x of [b, c].filter(Boolean)) {
    for (const [name, value] of Object.entries(x)) {
      if (!Object.is(value, void 0))
        result2[name] = value;
    }
  }
  return result2;
}
function forceRegExp(pattern) {
  const match = pattern.match(/^\/(.*)\/([gi]*)$/);
  if (match)
    return new RegExp(match[1], match[2]);
  return new RegExp(pattern, "gi");
}
function relativeFilePath(file2) {
  if (!import_path2.default.isAbsolute(file2))
    return file2;
  return import_path2.default.relative(process.cwd(), file2);
}
function formatLocation(location) {
  return relativeFilePath(location.file) + ":" + location.line + ":" + location.column;
}
function errorWithFile(file2, message) {
  return new Error(`${relativeFilePath(file2)}: ${message}`);
}
var debugTest = debug("pw:test");
var folderToPackageJsonPath = /* @__PURE__ */ new Map();
function getPackageJsonPath(folderPath) {
  const cached = folderToPackageJsonPath.get(folderPath);
  if (cached !== void 0)
    return cached;
  const packageJsonPath = import_path2.default.join(folderPath, "package.json");
  if (import_fs2.default.existsSync(packageJsonPath)) {
    folderToPackageJsonPath.set(folderPath, packageJsonPath);
    return packageJsonPath;
  }
  const parentFolder = import_path2.default.dirname(folderPath);
  if (folderPath === parentFolder) {
    folderToPackageJsonPath.set(folderPath, "");
    return "";
  }
  const result2 = getPackageJsonPath(parentFolder);
  folderToPackageJsonPath.set(folderPath, result2);
  return result2;
}
function fileIsModule(file2) {
  if (file2.endsWith(".mjs") || file2.endsWith(".mts"))
    return true;
  if (file2.endsWith(".cjs") || file2.endsWith(".cts"))
    return false;
  const folder = import_path2.default.dirname(file2);
  return folderIsModule(folder);
}
var packageJsonIsModuleCache = /* @__PURE__ */ new Map();
function folderIsModule(folder) {
  const packageJsonPath = getPackageJsonPath(folder);
  if (!packageJsonPath)
    return false;
  if (!packageJsonIsModuleCache.has(packageJsonPath)) {
    let isModule2 = false;
    try {
      isModule2 = JSON.parse(import_fs2.default.readFileSync(packageJsonPath, "utf8")).type === "module";
    } catch {
    }
    packageJsonIsModuleCache.set(packageJsonPath, isModule2);
  }
  return packageJsonIsModuleCache.get(packageJsonPath);
}
var packageJsonMainFieldCache = /* @__PURE__ */ new Map();
function getMainFieldFromPackageJson(packageJsonPath) {
  if (!packageJsonMainFieldCache.has(packageJsonPath)) {
    let mainField;
    try {
      mainField = JSON.parse(import_fs2.default.readFileSync(packageJsonPath, "utf8")).main;
    } catch {
    }
    packageJsonMainFieldCache.set(packageJsonPath, mainField);
  }
  return packageJsonMainFieldCache.get(packageJsonPath);
}
var kExtLookups = /* @__PURE__ */ new Map([
  [".js", [".jsx", ".ts", ".tsx"]],
  [".jsx", [".tsx"]],
  [".cjs", [".cts"]],
  [".mjs", [".mts"]],
  ["", [".js", ".ts", ".jsx", ".tsx", ".cjs", ".mjs", ".cts", ".mts"]]
]);
function resolveImportSpecifierExtension(resolved) {
  if (fileExists(resolved))
    return resolved;
  for (const [ext, others] of kExtLookups) {
    if (!resolved.endsWith(ext))
      continue;
    for (const other of others) {
      const modified = resolved.substring(0, resolved.length - ext.length) + other;
      if (fileExists(modified))
        return modified;
    }
    break;
  }
}
function resolveImportSpecifierAfterMapping(resolved, afterPathMapping) {
  const resolvedFile = resolveImportSpecifierExtension(resolved);
  if (resolvedFile)
    return resolvedFile;
  if (dirExists(resolved)) {
    const packageJsonPath = import_path2.default.join(resolved, "package.json");
    if (afterPathMapping) {
      const mainField = getMainFieldFromPackageJson(packageJsonPath);
      const mainFieldResolved = mainField ? resolveImportSpecifierExtension(import_path2.default.resolve(resolved, mainField)) : void 0;
      return mainFieldResolved || resolveImportSpecifierExtension(import_path2.default.join(resolved, "index"));
    }
    if (fileExists(packageJsonPath))
      return resolved;
    const dirImport = import_path2.default.join(resolved, "index");
    return resolveImportSpecifierExtension(dirImport);
  }
}
function fileExists(resolved) {
  return import_fs2.default.statSync(resolved, { throwIfNoEntry: false })?.isFile();
}
function dirExists(resolved) {
  return import_fs2.default.statSync(resolved, { throwIfNoEntry: false })?.isDirectory();
}
function takeFirst(...args) {
  for (const arg of args) {
    if (arg !== void 0)
      return arg;
  }
  return void 0;
}
// packages/playwright/src/common/config.ts
var defaultTimeout = 3e4;
var FullConfigInternal = class {
  constructor(location, userConfig, configCLIOverrides, metadata) {
    this.projects = [];
    this.defineConfigWasUsed = false;
    this.globalSetups = [];
    this.globalTeardowns = [];
    if (configCLIOverrides.projects && userConfig.projects)
      throw new Error(`Cannot use --browser option when configuration file defines projects. Specify browserName in the projects instead.`);
    const { resolvedConfigFile, configDir } = location;
    const packageJsonPath = getPackageJsonPath(configDir);
    const packageJsonDir = packageJsonPath ? import_path3.default.dirname(packageJsonPath) : process.cwd();
    this.configDir = configDir;
    this.configCLIOverrides = configCLIOverrides;
    const privateConfiguration = userConfig["@playwright/test"];
    this.plugins = (privateConfiguration?.plugins || []).map((p) => ({ factory: p }));
    this.singleTSConfigPath = pathResolve(configDir, userConfig.tsconfig);
    this.captureGitInfo = userConfig.captureGitInfo;
    this.globalSetups = (Array.isArray(userConfig.globalSetup) ? userConfig.globalSetup : [userConfig.globalSetup]).map((s) => resolveScript(s, configDir)).filter((script) => script !== void 0);
    this.globalTeardowns = (Array.isArray(userConfig.globalTeardown) ? userConfig.globalTeardown : [userConfig.globalTeardown]).map((s) => resolveScript(s, configDir)).filter((script) => script !== void 0);
    userConfig.metadata = userConfig.metadata || {};
    const globalTags = Array.isArray(userConfig.tag) ? userConfig.tag : userConfig.tag ? [userConfig.tag] : [];
    for (const tag of globalTags) {
      if (tag[0] !== "@")
        throw new Error(`Tag must start with "@" symbol, got "${tag}" instead.`);
    }
    this.config = {
      argv: configCLIOverrides.argv ?? [],
      configFile: resolvedConfigFile,
      rootDir: pathResolve(configDir, userConfig.testDir) || configDir,
      failOnFlakyTests: takeFirst(configCLIOverrides.failOnFlakyTests, userConfig.failOnFlakyTests, false),
      forbidOnly: takeFirst(configCLIOverrides.forbidOnly, userConfig.forbidOnly, false),
      fullyParallel: takeFirst(configCLIOverrides.fullyParallel, userConfig.fullyParallel, false),
      globalSetup: this.globalSetups[0] ?? null,
      globalTeardown: this.globalTeardowns[0] ?? null,
      globalTimeout: takeFirst(configCLIOverrides.debug ? 0 : void 0, configCLIOverrides.globalTimeout, userConfig.globalTimeout, 0),
      grep: takeFirst(userConfig.grep, defaultGrep),
      grepInvert: takeFirst(userConfig.grepInvert, null),
      maxFailures: takeFirst(configCLIOverrides.debug ? 1 : void 0, configCLIOverrides.maxFailures, userConfig.maxFailures, 0),
      metadata: metadata ?? userConfig.metadata,
      preserveOutput: takeFirst(userConfig.preserveOutput, "always"),
      projects: [],
      quiet: takeFirst(configCLIOverrides.quiet, userConfig.quiet, false),
      reporter: takeFirst(configCLIOverrides.reporter, resolveReporters(userConfig.reporter, configDir), [[defaultReporter]]),
      reportSlowTests: takeFirst(userConfig.reportSlowTests, {
        max: 5,
        threshold: 3e5
        /* 5 minutes */
      }),
      shard: takeFirst(configCLIOverrides.shard, userConfig.shard, null),
      tags: globalTags,
      updateSnapshots: takeFirst(configCLIOverrides.updateSnapshots, userConfig.updateSnapshots, "missing"),
      updateSourceMethod: takeFirst(configCLIOverrides.updateSourceMethod, userConfig.updateSourceMethod, "patch"),
      version: import_package2.packageJSON.version,
      workers: resolveWorkers(takeFirst(configCLIOverrides.debug || configCLIOverrides.pause ? 1 : void 0, configCLIOverrides.workers, userConfig.workers, "50%")),
      webServer: null
    };
    for (const key in userConfig) {
      if (key.startsWith("@"))
        this.config[key] = userConfig[key];
    }
    this.config[configInternalSymbol] = this;
    const webServers = takeFirst(userConfig.webServer, null);
    if (Array.isArray(webServers)) {
      this.config.webServer = null;
      this.webServers = webServers;
    } else if (webServers) {
      this.config.webServer = webServers;
      this.webServers = [webServers];
    } else {
      this.webServers = [];
    }
    const projectConfigs = configCLIOverrides.projects || userConfig.projects || [{ ...userConfig, workers: void 0 }];
    this.projects = projectConfigs.map((p) => new FullProjectInternal(configDir, userConfig, this, p, this.configCLIOverrides, packageJsonDir));
    resolveProjectDependencies(this.projects);
    this._assignUniqueProjectIds(this.projects);
    this.config.projects = this.projects.map((p) => p.project);
  }
  _assignUniqueProjectIds(projects) {
    const usedNames = /* @__PURE__ */ new Set();
    for (const p of projects) {
      const name = p.project.name || "";
      for (let i = 0; i < projects.length; ++i) {
        const candidate = name + (i ? i : "");
        if (usedNames.has(candidate))
          continue;
        p.id = candidate;
        p.project.__projectId = p.id;
        usedNames.add(candidate);
        break;
      }
    }
  }
};
var FullProjectInternal = class {
  constructor(configDir, config, fullConfig, projectConfig, configCLIOverrides, packageJsonDir) {
    this.id = "";
    this.deps = [];
    this.fullConfig = fullConfig;
    const testDir = takeFirst(pathResolve(configDir, projectConfig.testDir), pathResolve(configDir, config.testDir), fullConfig.configDir);
    this.snapshotPathTemplate = takeFirst(projectConfig.snapshotPathTemplate, config.snapshotPathTemplate);
    this.project = {
      grep: takeFirst(projectConfig.grep, config.grep, defaultGrep),
      grepInvert: takeFirst(projectConfig.grepInvert, config.grepInvert, null),
      outputDir: takeFirst(configCLIOverrides.outputDir, pathResolve(configDir, projectConfig.outputDir), pathResolve(configDir, config.outputDir), import_path3.default.join(packageJsonDir, "test-results")),
      // Note: we either apply the cli override for repeatEach or not, depending on whether the
      // project is top-level vs dependency. See collectProjectsAndTestFiles in loadUtils.
      repeatEach: takeFirst(projectConfig.repeatEach, config.repeatEach, 1),
      retries: takeFirst(configCLIOverrides.retries, projectConfig.retries, config.retries, 0),
      metadata: takeFirst(projectConfig.metadata, config.metadata, {}),
      name: takeFirst(projectConfig.name, config.name, ""),
      testDir,
      snapshotDir: takeFirst(pathResolve(configDir, projectConfig.snapshotDir), pathResolve(configDir, config.snapshotDir), testDir),
      testIgnore: takeFirst(projectConfig.testIgnore, config.testIgnore, []),
      testMatch: takeFirst(projectConfig.testMatch, config.testMatch, "**/*.@(spec|test).?(c|m)[jt]s?(x)"),
      timeout: takeFirst(configCLIOverrides.debug === "inspector" ? 0 : void 0, configCLIOverrides.timeout, projectConfig.timeout, config.timeout, defaultTimeout),
      use: mergeObjects(config.use, projectConfig.use, configCLIOverrides.use),
      dependencies: projectConfig.dependencies || [],
      teardown: projectConfig.teardown,
      ignoreSnapshots: takeFirst(configCLIOverrides.ignoreSnapshots, projectConfig.ignoreSnapshots, config.ignoreSnapshots, false)
    };
    this.fullyParallel = takeFirst(configCLIOverrides.fullyParallel, projectConfig.fullyParallel, config.fullyParallel, void 0);
    this.expect = takeFirst(projectConfig.expect, config.expect, {});
    if (this.expect.toHaveScreenshot?.stylePath) {
      const stylePaths = Array.isArray(this.expect.toHaveScreenshot.stylePath) ? this.expect.toHaveScreenshot.stylePath : [this.expect.toHaveScreenshot.stylePath];
      this.expect.toHaveScreenshot.stylePath = stylePaths.map((stylePath) => import_path3.default.resolve(configDir, stylePath));
    }
    this.respectGitIgnore = takeFirst(projectConfig.respectGitIgnore, config.respectGitIgnore, !projectConfig.testDir && !config.testDir);
    this.workers = projectConfig.workers ? resolveWorkers(projectConfig.workers) : void 0;
    if (configCLIOverrides.debug && this.workers)
      this.workers = 1;
  }
};
function pathResolve(baseDir, relative) {
  if (!relative)
    return void 0;
  return import_path3.default.resolve(baseDir, relative);
}
function resolveReporters(reporters, rootDir) {
  return toReporters(reporters)?.map(([id, arg]) => {
    if (builtInReporters.includes(id))
      return [id, arg];
    return [require.resolve(id, { paths: [rootDir] }), arg];
  });
}
function resolveWorkers(workers) {
  if (typeof workers === "string") {
    if (workers.endsWith("%")) {
      const cpus = import_os2.default.cpus().length;
      return Math.max(1, Math.floor(cpus * (parseInt(workers, 10) / 100)));
    }
    const parsedWorkers = parseInt(workers, 10);
    if (isNaN(parsedWorkers))
      throw new Error(`Workers ${workers} must be a number or percentage.`);
    if (parsedWorkers < 1)
      throw new Error(`Workers must be a positive number, received ${parsedWorkers}.`);
    return parsedWorkers;
  }
  if (workers < 1)
    throw new Error(`Workers must be a positive number, received ${workers}.`);
  return workers;
}
function resolveProjectDependencies(projects) {
  const teardownSet = /* @__PURE__ */ new Set();
  for (const project of projects) {
    for (const dependencyName of project.project.dependencies) {
      const dependencies = projects.filter((p) => p.project.name === dependencyName);
      if (!dependencies.length)
        throw new Error(`Project '${project.project.name}' depends on unknown project '${dependencyName}'`);
      if (dependencies.length > 1)
        throw new Error(`Project dependencies should have unique names, reading ${dependencyName}`);
      project.deps.push(...dependencies);
    }
    if (project.project.teardown) {
      const teardowns = projects.filter((p) => p.project.name === project.project.teardown);
      if (!teardowns.length)
        throw new Error(`Project '${project.project.name}' has unknown teardown project '${project.project.teardown}'`);
      if (teardowns.length > 1)
        throw new Error(`Project teardowns should have unique names, reading ${project.project.teardown}`);
      const teardown = teardowns[0];
      project.teardown = teardown;
      teardownSet.add(teardown);
    }
  }
  for (const teardown of teardownSet) {
    if (teardown.deps.length)
      throw new Error(`Teardown project ${teardown.project.name} must not have dependencies`);
  }
  for (const project of projects) {
    for (const dep of project.deps) {
      if (teardownSet.has(dep))
        throw new Error(`Project ${project.project.name} must not depend on a teardown project ${dep.project.name}`);
    }
  }
}
function toReporters(reporters) {
  if (!reporters)
    return;
  if (typeof reporters === "string")
    return [[reporters]];
  return reporters;
}
var builtInReporters = ["list", "line", "dot", "json", "junit", "null", "github", "html", "blob"];
function resolveScript(id, rootDir) {
  if (!id)
    return void 0;
  const localPath = import_path3.default.resolve(rootDir, id);
  if (import_fs3.default.existsSync(localPath))
    return localPath;
  return require.resolve(id, { paths: [rootDir] });
}
var defaultGrep = /.*/;
var defaultReporter = process.env.CI ? "dot" : "list";
var configInternalSymbol = Symbol("configInternalSymbol");
function getProjectId(project) {
  return project.__projectId;
}
// packages/playwright/src/common/configLoader.ts
var configLoader_exports = {};
__export(configLoader_exports, {
  defineConfig: () => defineConfig,
  deserializeConfig: () => deserializeConfig,
  loadConfig: () => loadConfig,
  loadConfigFromFile: () => loadConfigFromFile,
  loadEmptyConfigForMergeReports: () => loadEmptyConfigForMergeReports,
  resolveConfigLocation: () => resolveConfigLocation
});
var import_fs7 = __toESM(require("fs"));
var import_path7 = __toESM(require("path"));
// packages/playwright/src/transform/transform.ts
var transform_exports = {};
__export(transform_exports, {
  incorporateCompilationCache: () => incorporateCompilationCache,
  requireOrImport: () => requireOrImport,
  resolveHook: () => resolveHook,
  setSingleTSConfig: () => setSingleTSConfig,
  setTransformConfig: () => setTransformConfig,
  setTransformData: () => setTransformData,
  shouldTransform: () => shouldTransform,
  startCollectingFileDeps: () => startCollectingFileDeps2,
  stopCollectingFileDeps: () => stopCollectingFileDeps2,
  transformHook: () => transformHook,
  wrapFunctionWithLocation: () => wrapFunctionWithLocation
});
var import_fs6 = __toESM(require("fs"));
var import_module2 = __toESM(require("module"));
var import_path6 = __toESM(require("path"));
var import_url2 = __toESM(require("url"));
var import_crypto = __toESM(require("crypto"));
// packages/playwright/src/transform/tsconfig-loader.ts
var import_path4 = __toESM(require("path"));
var import_fs4 = __toESM(require("fs"));
var json5 = require("playwright-core/lib/utilsBundle").json5;
function loadTsConfig(configPath) {
  try {
    const references = [];
    const config = innerLoadTsConfig(configPath, references);
    return [config, ...references];
  } catch (e) {
    throw new Error(`Failed to load tsconfig file at ${configPath}:
${e.message}`);
  }
}
function resolveConfigFile(baseConfigFile, referencedConfigFile) {
  if (!referencedConfigFile.endsWith(".json"))
    referencedConfigFile += ".json";
  const currentDir = import_path4.default.dirname(baseConfigFile);
  let resolvedConfigFile = import_path4.default.resolve(currentDir, referencedConfigFile);
  if (referencedConfigFile.includes("/") && referencedConfigFile.includes(".") && !import_fs4.default.existsSync(resolvedConfigFile))
    resolvedConfigFile = import_path4.default.join(currentDir, "node_modules", referencedConfigFile);
  return resolvedConfigFile;
}
function innerLoadTsConfig(configFilePath, references, visited = /* @__PURE__ */ new Map()) {
  if (visited.has(configFilePath))
    return visited.get(configFilePath);
  let result2 = {
    tsConfigPath: configFilePath
  };
  visited.set(configFilePath, result2);
  if (!import_fs4.default.existsSync(configFilePath))
    return result2;
  const configString = import_fs4.default.readFileSync(configFilePath, "utf-8");
  const cleanedJson = StripBom(configString);
  const parsedConfig = json5.parse(cleanedJson);
  const extendsArray = Array.isArray(parsedConfig.extends) ? parsedConfig.extends : parsedConfig.extends ? [parsedConfig.extends] : [];
  for (const extendedConfig of extendsArray) {
    const extendedConfigPath = resolveConfigFile(configFilePath, extendedConfig);
    const base = innerLoadTsConfig(extendedConfigPath, references, visited);
    Object.assign(result2, base, { tsConfigPath: configFilePath });
  }
  if (parsedConfig.compilerOptions?.allowJs !== void 0)
    result2.allowJs = parsedConfig.compilerOptions.allowJs;
  if (parsedConfig.compilerOptions?.paths !== void 0) {
    result2.paths = {
      mapping: parsedConfig.compilerOptions.paths,
      pathsBasePath: import_path4.default.dirname(configFilePath)
    };
  }
  if (parsedConfig.compilerOptions?.baseUrl !== void 0) {
    result2.absoluteBaseUrl = import_path4.default.resolve(import_path4.default.dirname(configFilePath), parsedConfig.compilerOptions.baseUrl);
  }
  for (const ref of parsedConfig.references || [])
    references.push(innerLoadTsConfig(resolveConfigFile(configFilePath, ref.path), references, visited));
  if (import_path4.default.basename(configFilePath) === "jsconfig.json" && result2.allowJs === void 0)
    result2.allowJs = true;
  return result2;
}
function StripBom(string) {
  if (typeof string !== "string") {
    throw new TypeError(`Expected a string, got ${typeof string}`);
  }
  if (string.charCodeAt(0) === 65279) {
    return string.slice(1);
  }
  return string;
}
// packages/playwright/src/transform/transform.ts
var import_package3 = require("../package");
// packages/playwright/src/transform/esmLoaderSync.ts
var import_fs5 = __toESM(require("fs"));
var import_url = __toESM(require("url"));
function resolve(specifier, context, nextResolve) {
  if (context.parentURL && context.parentURL.startsWith("file://")) {
    const filename = import_url.default.fileURLToPath(context.parentURL);
    const resolved = resolveHook(filename, specifier);
    if (resolved !== void 0) {
      specifier = new Set(context.conditions).has("import") ? import_url.default.pathToFileURL(resolved).toString() : resolved;
    }
  }
  const result2 = nextResolve(specifier, context);
  if (result2?.url && result2.url.startsWith("file://"))
    currentFileDepsCollector()?.add(import_url.default.fileURLToPath(result2.url));
  return result2;
}
var kSupportedFormats = /* @__PURE__ */ new Map([
  ["commonjs", "commonjs"],
  ["module", "module"],
  ["commonjs-typescript", "commonjs"],
  ["module-typescript", "module"],
  ["typescript", null],
  [null, null],
  [void 0, void 0]
]);
function load(moduleUrl, context, nextLoad) {
  if (!kSupportedFormats.has(context.format))
    return nextLoad(moduleUrl, context);
  if (!moduleUrl.startsWith("file://"))
    return nextLoad(moduleUrl, context);
  const filename = import_url.default.fileURLToPath(moduleUrl);
  if (!shouldTransform(filename))
    return nextLoad(moduleUrl, context);
  const isRequire = !new Set(context.conditions).has("import");
  const format = isRequire ? "commonjs" : kSupportedFormats.get(context.format) || (fileIsModule(filename) ? "module" : "commonjs");
  const code = import_fs5.default.readFileSync(filename, "utf-8");
  const transformed = transformHook(code, filename, format === "module" ? moduleUrl : void 0);
  return {
    format,
    source: transformed.code,
    shortCircuit: true
  };
}
// packages/playwright/src/transform/pirates.ts
var import_module = __toESM(require("module"));
var import_path5 = __toESM(require("path"));
function addHook(transformHook2, shouldTransform2, extensions) {
  const extensionsToOverwrite = extensions.filter((e) => e !== ".cjs");
  const allSupportedExtensions = new Set(extensions);
  const loaders = import_module.default._extensions;
  const jsLoader = loaders[".js"];
  for (const extension of extensionsToOverwrite) {
    let newLoader2 = function(mod, filename, ...loaderArgs) {
      if (allSupportedExtensions.has(import_path5.default.extname(filename)) && shouldTransform2(filename)) {
        let newCompile2 = function(code, file2, ...ignoredArgs) {
          mod._compile = oldCompile;
          return oldCompile.call(this, transformHook2(code, filename), file2);
        };
        var newCompile = newCompile2;
        const oldCompile = mod._compile;
        mod._compile = newCompile2;
      }
      originalLoader.call(this, mod, filename, ...loaderArgs);
    };
    var newLoader = newLoader2;
    const originalLoader = loaders[extension] || jsLoader;
    loaders[extension] = newLoader2;
  }
}
// packages/playwright/src/transform/portTransport.ts
var PortTransport = class {
  constructor(port, handler) {
    this._lastId = 0;
    this._callbacks = /* @__PURE__ */ new Map();
    this._port = port;
    port.addEventListener("message", async (event) => {
      const message = event.data;
      const { id, ackId, method, params, result: result2 } = message;
      if (ackId) {
        const callback = this._callbacks.get(ackId);
        this._callbacks.delete(ackId);
        this._resetRef();
        callback?.(result2);
        return;
      }
      const handlerResult = await handler(method, params);
      if (id)
        this._port.postMessage({ ackId: id, result: handlerResult });
    });
    this._resetRef();
  }
  post(method, params) {
    this._port.postMessage({ method, params });
  }
  async send(method, params) {
    return await new Promise((f) => {
      const id = ++this._lastId;
      this._callbacks.set(id, f);
      this._resetRef();
      this._port.postMessage({ id, method, params });
    });
  }
  _resetRef() {
    if (this._callbacks.size) {
      this._port.ref();
    } else {
      this._port.unref();
    }
  }
};
// packages/playwright/src/transform/transform.ts
var sourceMapSupport2 = require("playwright-core/lib/utilsBundle").sourceMapSupport;
var version = import_package3.packageJSON.version;
var cachedTSConfigs = /* @__PURE__ */ new Map();
var _transformConfig = {
  babelPlugins: [],
  external: []
};
var _externalMatcher = () => false;
async function setTransformConfig(config) {
  _transformConfig = config;
  _externalMatcher = createFileMatcher(_transformConfig.external);
  if (loaderChannel)
    await loaderChannel.send("setTransformConfig", { config });
}
var _singleTSConfigPath;
var _singleTSConfig;
async function setSingleTSConfig(value) {
  _singleTSConfigPath = value;
  if (loaderChannel)
    await loaderChannel.send("setSingleTSConfig", { tsconfig: value });
}
function validateTsConfig(tsconfig) {
  const pathsBase = tsconfig.absoluteBaseUrl ?? tsconfig.paths?.pathsBasePath;
  const pathsFallback = tsconfig.absoluteBaseUrl ? [{ key: "*", values: ["*"] }] : [];
  return {
    allowJs: !!tsconfig.allowJs,
    pathsBase,
    paths: Object.entries(tsconfig.paths?.mapping || {}).map(([key, values]) => ({ key, values })).concat(pathsFallback)
  };
}
function loadAndValidateTsconfigsForFile(file2) {
  if (_singleTSConfigPath && !_singleTSConfig)
    _singleTSConfig = loadTsConfig(_singleTSConfigPath).map(validateTsConfig);
  if (_singleTSConfig)
    return _singleTSConfig;
  return loadAndValidateTsconfigsForFolder(import_path6.default.dirname(file2));
}
function loadAndValidateTsconfigsForFolder(folder) {
  const foldersWithConfig = [];
  let currentFolder = import_path6.default.resolve(folder);
  let result2;
  while (true) {
    const cached = cachedTSConfigs.get(currentFolder);
    if (cached) {
      result2 = cached;
      break;
    }
    foldersWithConfig.push(currentFolder);
    for (const name of ["tsconfig.json", "jsconfig.json"]) {
      const configPath = import_path6.default.join(currentFolder, name);
      if (import_fs6.default.existsSync(configPath)) {
        const loaded = loadTsConfig(configPath);
        result2 = loaded.map(validateTsConfig);
        break;
      }
    }
    if (result2)
      break;
    const parentFolder = import_path6.default.resolve(currentFolder, "../");
    if (currentFolder === parentFolder)
      break;
    currentFolder = parentFolder;
  }
  result2 = result2 || [];
  for (const folder2 of foldersWithConfig)
    cachedTSConfigs.set(folder2, result2);
  return result2;
}
var pathSeparator = process.platform === "win32" ? ";" : ":";
var builtins = new Set(import_module2.default.builtinModules);
function resolveHook(filename, specifier) {
  if (specifier.startsWith("node:") || builtins.has(specifier))
    return;
  if (!shouldTransform(filename))
    return;
  if (isRelativeSpecifier(specifier))
    return resolveImportSpecifierAfterMapping(import_path6.default.resolve(import_path6.default.dirname(filename), specifier), false);
  const isTypeScript = filename.endsWith(".ts") || filename.endsWith(".tsx");
  const tsconfigs = loadAndValidateTsconfigsForFile(filename);
  for (const tsconfig of tsconfigs) {
    if (!isTypeScript && !tsconfig.allowJs)
      continue;
    let longestPrefixLength = -1;
    let pathMatchedByLongestPrefix;
    for (const { key, values } of tsconfig.paths) {
      let matchedPartOfSpecifier = specifier;
      const [keyPrefix, keySuffix] = key.split("*");
      if (key.includes("*")) {
        if (keyPrefix) {
          if (!specifier.startsWith(keyPrefix))
            continue;
          matchedPartOfSpecifier = matchedPartOfSpecifier.substring(keyPrefix.length, matchedPartOfSpecifier.length);
        }
        if (keySuffix) {
          if (!specifier.endsWith(keySuffix))
            continue;
          matchedPartOfSpecifier = matchedPartOfSpecifier.substring(0, matchedPartOfSpecifier.length - keySuffix.length);
        }
      } else {
        if (specifier !== key)
          continue;
        matchedPartOfSpecifier = specifier;
      }
      if (keyPrefix.length <= longestPrefixLength)
        continue;
      for (const value of values) {
        let candidate = value;
        if (value.includes("*"))
          candidate = candidate.replace("*", matchedPartOfSpecifier);
        candidate = import_path6.default.resolve(tsconfig.pathsBase, candidate);
        const existing = resolveImportSpecifierAfterMapping(candidate, true);
        if (existing) {
          longestPrefixLength = keyPrefix.length;
          pathMatchedByLongestPrefix = existing;
        }
      }
    }
    if (pathMatchedByLongestPrefix)
      return pathMatchedByLongestPrefix;
  }
  if (import_path6.default.isAbsolute(specifier)) {
    return resolveImportSpecifierAfterMapping(specifier, false);
  }
}
function shouldTransform(filename) {
  if (_externalMatcher(filename))
    return false;
  return !belongsToNodeModules(filename);
}
var transformData;
function setTransformData(pluginName, value) {
  transformData.set(pluginName, value);
}
function transformHook(originalCode, filename, moduleUrl) {
  const hasPreprocessor = process.env.PW_TEST_SOURCE_TRANSFORM && process.env.PW_TEST_SOURCE_TRANSFORM_SCOPE && process.env.PW_TEST_SOURCE_TRANSFORM_SCOPE.split(pathSeparator).some((f) => filename.startsWith(f));
  const pluginsPrologue = _transformConfig.babelPlugins;
  const pluginsEpilogue = hasPreprocessor ? [[process.env.PW_TEST_SOURCE_TRANSFORM]] : [];
  const hash = calculateHash(originalCode, filename, !!moduleUrl, pluginsPrologue, pluginsEpilogue);
  const { cachedCode, addToCache, serializedCache } = getFromCompilationCache(filename, hash, moduleUrl);
  if (cachedCode !== void 0)
    return { code: cachedCode, serializedCache };
  process.env.BROWSERSLIST_IGNORE_OLD_DATA = "true";
  const { babelTransform } = require((0, import_package3.libPath)("transform", "babelBundle"));
  transformData = /* @__PURE__ */ new Map();
  const setTransformDataForPlugin = (key, value) => transformData.set(key, value);
  const wrappedPrologue = pluginsPrologue.map(([name, opts]) => [
    name,
    { ...opts || {}, setTransformData: setTransformDataForPlugin }
  ]);
  const babelResult = babelTransform(originalCode, filename, !!moduleUrl, wrappedPrologue, pluginsEpilogue, _transformConfig.jsxImportSource);
  if (!babelResult?.code)
    return { code: originalCode, serializedCache };
  const { code, map } = babelResult;
  const added = addToCache(code, map, transformData);
  return { code, serializedCache: added.serializedCache };
}
function calculateHash(content, filePath, isModule2, pluginsPrologue, pluginsEpilogue) {
  const hash = import_crypto.default.createHash("sha1").update(isModule2 ? "esm" : "no_esm").update(content).update(filePath).update(version).update(pluginsPrologue.map((p) => p[0]).join(",")).update(pluginsEpilogue.map((p) => p[0]).join(",")).digest("hex");
  return hash;
}
async function requireOrImport(file) {
  installTransformIfNeeded();
  const isModule = fileIsModule(file);
  if (isModule) {
    const fileName = import_url2.default.pathToFileURL(file);
    const esmImport = () => eval(`import(${JSON.stringify(fileName)})`);
    if (loaderChannel) {
      await eval(`import(${JSON.stringify(fileName + ".esm.preflight")})`).catch((error) => debugTest("Failed to load preflight for " + file + ", source maps may be missing for errors thrown during loading.", error)).finally(nextTask);
    }
    return await esmImport().finally(nextTask);
  }
  const result = require(file);
  const depsCollector = currentFileDepsCollector();
  if (depsCollector) {
    const module2 = require.cache[file];
    if (module2) {
      const cjsDeps = /* @__PURE__ */ new Set();
      collectCJSDependencies(module2, cjsDeps);
      for (const dep of cjsDeps)
        depsCollector.add(dep);
    }
  }
  return result;
}
var transformInstalled = false;
function installTransformIfNeeded() {
  if (transformInstalled)
    return;
  transformInstalled = true;
  registerESMLoader();
  installSourceMapSupport();
  if (loaderChannel) {
    installCJSHooks();
    return;
  }
  const extensions = import_module2.default._extensions;
  for (const ext of [".ts", ".cts", ".tsx", ".jsx"])
    extensions[ext] = extensions[".js"];
}
function installCJSHooks() {
  const originalResolveFilename = import_module2.default._resolveFilename;
  function resolveFilename(specifier, parent, ...rest) {
    if (parent) {
      const resolved = resolveHook(parent.filename, specifier);
      if (resolved !== void 0)
        specifier = resolved;
    }
    return originalResolveFilename.call(this, specifier, parent, ...rest);
  }
  import_module2.default._resolveFilename = resolveFilename;
  addHook((code, filename) => {
    return transformHook(code, filename).code;
  }, shouldTransform, [".ts", ".tsx", ".js", ".jsx", ".mjs", ".mts", ".cjs", ".cts"]);
}
var collectCJSDependencies = (module2, dependencies) => {
  module2.children.forEach((child) => {
    if (!belongsToNodeModules(child.filename) && !dependencies.has(child.filename)) {
      dependencies.add(child.filename);
      collectCJSDependencies(child, dependencies);
    }
  });
};
function wrapFunctionWithLocation(func) {
  return (...args) => {
    const oldPrepareStackTrace = Error.prepareStackTrace;
    Error.prepareStackTrace = (error, stackFrames) => {
      const frame = sourceMapSupport2.wrapCallSite(stackFrames[1]);
      const fileName2 = frame.getFileName();
      const file2 = fileName2 && fileName2.startsWith("file://") ? import_url2.default.fileURLToPath(fileName2) : fileName2;
      return {
        file: file2,
        line: frame.getLineNumber(),
        column: frame.getColumnNumber()
      };
    };
    const oldStackTraceLimit = Error.stackTraceLimit;
    Error.stackTraceLimit = 2;
    const obj = {};
    Error.captureStackTrace(obj);
    const location = obj.stack;
    Error.stackTraceLimit = oldStackTraceLimit;
    Error.prepareStackTrace = oldPrepareStackTrace;
    return func(location, ...args);
  };
}
function isRelativeSpecifier(specifier) {
  return specifier === "." || specifier === ".." || specifier.startsWith("./") || specifier.startsWith("../");
}
async function nextTask() {
  return new Promise((resolve2) => setTimeout(resolve2, 0));
}
var loaderChannel;
function registerESMLoader() {
  if (process.env.PW_DISABLE_TS_ESM)
    return;
  if ("Bun" in globalThis)
    return;
  const nodeModule = require("node:module");
  if (nodeModule.registerHooks && !process.env.PLAYWRIGHT_FORCE_ASYNC_LOADER) {
    nodeModule.registerHooks({ resolve, load });
    return;
  }
  if (!nodeModule.register)
    return;
  const { port1, port2 } = new MessageChannel();
  nodeModule.register(import_url2.default.pathToFileURL(require.resolve("../transform/esmLoader.js")), {
    data: { port: port2 },
    transferList: [port2]
  });
  loaderChannel = new PortTransport(port1, async (method, params) => {
    if (method === "pushToCompilationCache")
      addToCompilationCache(params.cache);
  });
  void loaderChannel.send("setSingleTSConfig", { tsconfig: _singleTSConfigPath });
  void loaderChannel.send("setTransformConfig", { config: _transformConfig });
  void loaderChannel.send("addToCompilationCache", { cache: serializeCompilationCache() });
}
async function startCollectingFileDeps2() {
  startCollectingFileDeps();
  if (loaderChannel)
    await loaderChannel.send("startCollectingFileDeps", {});
}
async function stopCollectingFileDeps2(file2) {
  stopCollectingFileDeps(file2);
  if (loaderChannel)
    await loaderChannel.send("stopCollectingFileDeps", { file: file2 });
}
async function incorporateCompilationCache() {
  if (!loaderChannel)
    return;
  const result2 = await loaderChannel.send("getCompilationCache", {});
  addToCompilationCache(result2.cache);
}
// packages/playwright/src/common/configLoader.ts
var { isRegExp: isRegExp2 } = require("playwright-core/lib/coreBundle").iso;
var kDefineConfigWasUsed = Symbol("defineConfigWasUsed");
var defineConfig = (...configs) => {
  let result2 = configs[0];
  for (let i = 1; i < configs.length; ++i) {
    const config = configs[i];
    const prevProjects = result2.projects;
    result2 = {
      ...result2,
      ...config,
      expect: {
        ...result2.expect,
        ...config.expect
      },
      use: {
        ...result2.use,
        ...config.use
      },
      build: {
        ...result2.build,
        ...config.build
      },
      webServer: [
        ...Array.isArray(result2.webServer) ? result2.webServer : result2.webServer ? [result2.webServer] : [],
        ...Array.isArray(config.webServer) ? config.webServer : config.webServer ? [config.webServer] : []
      ]
    };
    if (!result2.projects && !config.projects)
      continue;
    const projectOverrides = /* @__PURE__ */ new Map();
    for (const project of config.projects || [])
      projectOverrides.set(project.name, project);
    const projects = [];
    for (const project of prevProjects || []) {
      const projectOverride = projectOverrides.get(project.name);
      if (projectOverride) {
        projects.push({
          ...project,
          ...projectOverride,
          use: {
            ...project.use,
            ...projectOverride.use
          }
        });
        projectOverrides.delete(project.name);
      } else {
        projects.push(project);
      }
    }
    projects.push(...projectOverrides.values());
    result2.projects = projects;
  }
  result2[kDefineConfigWasUsed] = true;
  return result2;
};
async function deserializeConfig(data) {
  if (data.compilationCache)
    addToCompilationCache(data.compilationCache);
  return await loadConfig(data.location, data.configCLIOverrides, void 0, data.metadata ? JSON.parse(data.metadata) : void 0);
}
async function loadUserConfig(location) {
  let object = location.resolvedConfigFile ? await requireOrImport(location.resolvedConfigFile) : {};
  if (object && typeof object === "object" && "default" in object)
    object = object["default"];
  return object;
}
async function loadConfig(location, overrides, ignoreProjectDependencies = false, metadata) {
  await setSingleTSConfig(overrides?.tsconfig);
  const userConfig = await loadUserConfig(location);
  validateConfig(location.resolvedConfigFile || "<default config>", userConfig);
  const fullConfig = new FullConfigInternal(location, userConfig, overrides || {}, metadata);
  fullConfig.defineConfigWasUsed = !!userConfig[kDefineConfigWasUsed];
  if (ignoreProjectDependencies) {
    for (const project of fullConfig.projects) {
      project.deps = [];
      project.teardown = void 0;
    }
  }
  const babelPlugins = userConfig["@playwright/test"]?.babelPlugins || [];
  const external = userConfig.build?.external || [];
  const jsxImportSource = import_path7.default.dirname(require.resolve("playwright"));
  await setTransformConfig({ babelPlugins, external, jsxImportSource });
  if (!overrides?.tsconfig)
    await setSingleTSConfig(fullConfig?.singleTSConfigPath);
  return fullConfig;
}
function validateConfig(file2, config) {
  if (typeof config !== "object" || !config)
    throw errorWithFile(file2, `Configuration file must export a single object`);
  validateProject(file2, config, "config");
  if ("forbidOnly" in config && config.forbidOnly !== void 0) {
    if (typeof config.forbidOnly !== "boolean")
      throw errorWithFile(file2, `config.forbidOnly must be a boolean`);
  }
  if ("globalSetup" in config && config.globalSetup !== void 0) {
    if (Array.isArray(config.globalSetup)) {
      config.globalSetup.forEach((item, index) => {
        if (typeof item !== "string")
          throw errorWithFile(file2, `config.globalSetup[${index}] must be a string`);
      });
    } else if (typeof config.globalSetup !== "string") {
      throw errorWithFile(file2, `config.globalSetup must be a string`);
    }
  }
  if ("globalTeardown" in config && config.globalTeardown !== void 0) {
    if (Array.isArray(config.globalTeardown)) {
      config.globalTeardown.forEach((item, index) => {
        if (typeof item !== "string")
          throw errorWithFile(file2, `config.globalTeardown[${index}] must be a string`);
      });
    } else if (typeof config.globalTeardown !== "string") {
      throw errorWithFile(file2, `config.globalTeardown must be a string`);
    }
  }
  if ("globalTimeout" in config && config.globalTimeout !== void 0) {
    if (typeof config.globalTimeout !== "number" || config.globalTimeout < 0)
      throw errorWithFile(file2, `config.globalTimeout must be a non-negative number`);
  }
  if ("grep" in config && config.grep !== void 0) {
    if (Array.isArray(config.grep)) {
      config.grep.forEach((item, index) => {
        if (!isRegExp2(item))
          throw errorWithFile(file2, `config.grep[${index}] must be a RegExp`);
      });
    } else if (!isRegExp2(config.grep)) {
      throw errorWithFile(file2, `config.grep must be a RegExp`);
    }
  }
  if ("grepInvert" in config && config.grepInvert !== void 0) {
    if (Array.isArray(config.grepInvert)) {
      config.grepInvert.forEach((item, index) => {
        if (!isRegExp2(item))
          throw errorWithFile(file2, `config.grepInvert[${index}] must be a RegExp`);
      });
    } else if (!isRegExp2(config.grepInvert)) {
      throw errorWithFile(file2, `config.grepInvert must be a RegExp`);
    }
  }
  if ("maxFailures" in config && config.maxFailures !== void 0) {
    if (typeof config.maxFailures !== "number" || config.maxFailures < 0)
      throw errorWithFile(file2, `config.maxFailures must be a non-negative number`);
  }
  if ("preserveOutput" in config && config.preserveOutput !== void 0) {
    if (typeof config.preserveOutput !== "string" || !["always", "never", "failures-only"].includes(config.preserveOutput))
      throw errorWithFile(file2, `config.preserveOutput must be one of "always", "never" or "failures-only"`);
  }
  if ("projects" in config && config.projects !== void 0) {
    if (!Array.isArray(config.projects))
      throw errorWithFile(file2, `config.projects must be an array`);
    config.projects.forEach((project, index) => {
      validateProject(file2, project, `config.projects[${index}]`);
    });
  }
  if ("quiet" in config && config.quiet !== void 0) {
    if (typeof config.quiet !== "boolean")
      throw errorWithFile(file2, `config.quiet must be a boolean`);
  }
  if ("reporter" in config && config.reporter !== void 0) {
    if (Array.isArray(config.reporter)) {
      config.reporter.forEach((item, index) => {
        if (!Array.isArray(item) || item.length <= 0 || item.length > 2 || typeof item[0] !== "string")
          throw errorWithFile(file2, `config.reporter[${index}] must be a tuple [name, optionalArgument]`);
      });
    } else if (typeof config.reporter !== "string") {
      throw errorWithFile(file2, `config.reporter must be a string`);
    }
  }
  if ("reportSlowTests" in config && config.reportSlowTests !== void 0 && config.reportSlowTests !== null) {
    if (!config.reportSlowTests || typeof config.reportSlowTests !== "object")
      throw errorWithFile(file2, `config.reportSlowTests must be an object`);
    if (!("max" in config.reportSlowTests) || typeof config.reportSlowTests.max !== "number" || config.reportSlowTests.max < 0)
      throw errorWithFile(file2, `config.reportSlowTests.max must be a non-negative number`);
    if (!("threshold" in config.reportSlowTests) || typeof config.reportSlowTests.threshold !== "number" || config.reportSlowTests.threshold < 0)
      throw errorWithFile(file2, `config.reportSlowTests.threshold must be a non-negative number`);
  }
  if ("shard" in config && config.shard !== void 0 && config.shard !== null) {
    if (!config.shard || typeof config.shard !== "object")
      throw errorWithFile(file2, `config.shard must be an object`);
    if (!("total" in config.shard) || typeof config.shard.total !== "number" || config.shard.total < 1)
      throw errorWithFile(file2, `config.shard.total must be a positive number`);
    if (!("current" in config.shard) || typeof config.shard.current !== "number" || config.shard.current < 1 || config.shard.current > config.shard.total)
      throw errorWithFile(file2, `config.shard.current must be a positive number, not greater than config.shard.total`);
  }
  if ("updateSnapshots" in config && config.updateSnapshots !== void 0) {
    if (typeof config.updateSnapshots !== "string" || !["all", "changed", "missing", "none"].includes(config.updateSnapshots))
      throw errorWithFile(file2, `config.updateSnapshots must be one of "all", "changed", "missing" or "none"`);
  }
  if ("tsconfig" in config && config.tsconfig !== void 0) {
    if (typeof config.tsconfig !== "string")
      throw errorWithFile(file2, `config.tsconfig must be a string`);
    if (!import_fs7.default.existsSync(import_path7.default.resolve(file2, "..", config.tsconfig)))
      throw errorWithFile(file2, `config.tsconfig does not exist`);
  }
}
function validateProject(file2, project, title) {
  if (typeof project !== "object" || !project)
    throw errorWithFile(file2, `${title} must be an object`);
  if ("name" in project && project.name !== void 0) {
    if (typeof project.name !== "string")
      throw errorWithFile(file2, `${title}.name must be a string`);
  }
  if ("outputDir" in project && project.outputDir !== void 0) {
    if (typeof project.outputDir !== "string")
      throw errorWithFile(file2, `${title}.outputDir must be a string`);
  }
  if ("repeatEach" in project && project.repeatEach !== void 0) {
    if (typeof project.repeatEach !== "number" || project.repeatEach < 0)
      throw errorWithFile(file2, `${title}.repeatEach must be a non-negative number`);
  }
  if ("retries" in project && project.retries !== void 0) {
    if (typeof project.retries !== "number" || project.retries < 0)
      throw errorWithFile(file2, `${title}.retries must be a non-negative number`);
  }
  if ("testDir" in project && project.testDir !== void 0) {
    if (typeof project.testDir !== "string")
      throw errorWithFile(file2, `${title}.testDir must be a string`);
  }
  for (const prop of ["testIgnore", "testMatch"]) {
    if (prop in project && project[prop] !== void 0) {
      const value = project[prop];
      if (Array.isArray(value)) {
        value.forEach((item, index) => {
          if (typeof item !== "string" && !isRegExp2(item))
            throw errorWithFile(file2, `${title}.${prop}[${index}] must be a string or a RegExp`);
        });
      } else if (typeof value !== "string" && !isRegExp2(value)) {
        throw errorWithFile(file2, `${title}.${prop} must be a string or a RegExp`);
      }
    }
  }
  if ("timeout" in project && project.timeout !== void 0) {
    if (typeof project.timeout !== "number" || project.timeout < 0)
      throw errorWithFile(file2, `${title}.timeout must be a non-negative number`);
  }
  if ("use" in project && project.use !== void 0) {
    if (!project.use || typeof project.use !== "object")
      throw errorWithFile(file2, `${title}.use must be an object`);
  }
  if ("ignoreSnapshots" in project && project.ignoreSnapshots !== void 0) {
    if (typeof project.ignoreSnapshots !== "boolean")
      throw errorWithFile(file2, `${title}.ignoreSnapshots must be a boolean`);
  }
  if ("workers" in project && project.workers !== void 0) {
    if (typeof project.workers === "number" && project.workers <= 0)
      throw errorWithFile(file2, `${title}.workers must be a positive number`);
    else if (typeof project.workers === "string" && !project.workers.endsWith("%"))
      throw errorWithFile(file2, `${title}.workers must be a number or percentage`);
  }
}
function resolveConfigLocation(configFile) {
  const configFileOrDirectory = configFile ? import_path7.default.resolve(process.cwd(), configFile) : process.cwd();
  const resolvedConfigFile = resolveConfigFile2(configFileOrDirectory);
  return {
    resolvedConfigFile,
    configDir: resolvedConfigFile ? import_path7.default.dirname(resolvedConfigFile) : configFileOrDirectory
  };
}
function resolveConfigFile2(configFileOrDirectory) {
  const resolveConfig = (configFile) => {
    if (import_fs7.default.existsSync(configFile))
      return configFile;
  };
  const resolveConfigFileFromDirectory = (directory) => {
    for (const ext of [".ts", ".js", ".mts", ".mjs", ".cts", ".cjs"]) {
      const configFile = resolveConfig(import_path7.default.resolve(directory, "playwright.config" + ext));
      if (configFile)
        return configFile;
    }
  };
  if (!import_fs7.default.existsSync(configFileOrDirectory))
    throw new Error(`${configFileOrDirectory} does not exist`);
  if (import_fs7.default.statSync(configFileOrDirectory).isDirectory()) {
    const configFile = resolveConfigFileFromDirectory(configFileOrDirectory);
    if (configFile)
      return configFile;
    return void 0;
  }
  return configFileOrDirectory;
}
async function loadConfigFromFile(configFile, overrides, ignoreDeps) {
  return await loadConfig(resolveConfigLocation(configFile), overrides, ignoreDeps);
}
async function loadEmptyConfigForMergeReports() {
  return await loadConfig({ configDir: process.cwd() });
}
// packages/playwright/src/common/fixtures.ts
var fixtures_exports = {};
__export(fixtures_exports, {
  FixturePool: () => FixturePool,
  fixtureParameterNames: () => fixtureParameterNames,
  formatPotentiallyInternalLocation: () => formatPotentiallyInternalLocation,
  inheritFixtureNames: () => inheritFixtureNames
});
var import_crypto2 = __toESM(require("crypto"));
var kScopeOrder = ["test", "worker"];
function isFixtureTuple(value) {
  return Array.isArray(value) && typeof value[1] === "object";
}
function isFixtureOption(value) {
  return isFixtureTuple(value) && !!value[1].option;
}
var FixturePool = class {
  constructor(fixturesList, onLoadError, parentPool, disallowWorkerFixtures, optionOverrides) {
    this._registrations = new Map(parentPool ? parentPool._registrations : []);
    this._onLoadError = onLoadError;
    const allOverrides = optionOverrides?.overrides ?? {};
    const overrideKeys = new Set(Object.keys(allOverrides));
    for (const list of fixturesList) {
      this._appendFixtureList(list, !!disallowWorkerFixtures, false);
      const selectedOverrides = {};
      for (const [key, value] of Object.entries(list.fixtures)) {
        if (isFixtureOption(value) && overrideKeys.has(key))
          selectedOverrides[key] = [allOverrides[key], value[1]];
      }
      if (Object.entries(selectedOverrides).length)
        this._appendFixtureList({ fixtures: selectedOverrides, location: optionOverrides.location }, !!disallowWorkerFixtures, true);
    }
    if (optionOverrides) {
      for (const key of overrideKeys) {
        const registration = this._registrations.get(key);
        if (registration && !registration.option)
          this._addLoadError(`Fixture "${key}" cannot be overridden in the configuration "use" section. Only fixtures registered with { option: true } can be set in the config.`, optionOverrides.location);
      }
    }
    this.digest = this.validate();
  }
  _appendFixtureList(list, disallowWorkerFixtures, isOptionsOverride) {
    const { fixtures, location } = list;
    for (const entry of Object.entries(fixtures)) {
      const name = entry[0];
      let value = entry[1];
      let options;
      if (isFixtureTuple(value)) {
        options = {
          auto: value[1].auto ?? false,
          scope: value[1].scope || "test",
          option: !!value[1].option,
          timeout: value[1].timeout,
          customTitle: value[1].title,
          box: value[1].box
        };
        value = value[0];
      }
      let fn = value;
      const previous = this._registrations.get(name);
      if (previous && options) {
        if (previous.scope !== options.scope) {
          this._addLoadError(`Fixture "${name}" has already been registered as a { scope: '${previous.scope}' } fixture defined in ${formatLocation(previous.location)}.`, location);
          continue;
        }
        if (previous.auto !== options.auto) {
          this._addLoadError(`Fixture "${name}" has already been registered as a { auto: '${previous.scope}' } fixture defined in ${formatLocation(previous.location)}.`, location);
          continue;
        }
      } else if (previous) {
        options = { auto: previous.auto, scope: previous.scope, option: previous.option, timeout: previous.timeout, customTitle: previous.customTitle };
      } else if (!options) {
        options = { auto: false, scope: "test", option: false, timeout: void 0 };
      }
      if (!kScopeOrder.includes(options.scope)) {
        this._addLoadError(`Fixture "${name}" has unknown { scope: '${options.scope}' }.`, location);
        continue;
      }
      if (options.scope === "worker" && disallowWorkerFixtures) {
        this._addLoadError(`Cannot use({ ${name} }) in a describe group, because it forces a new worker.
Make it top-level in the test file or put in the configuration file.`, location);
        continue;
      }
      if (fn === void 0 && options.option && previous) {
        let original = previous;
        while (!original.optionOverride && original.super)
          original = original.super;
        fn = original.fn;
      }
      const deps = fixtureParameterNames(fn, location, (e) => this._onLoadError(e));
      const registration = { id: "", name, location, scope: options.scope, fn, auto: options.auto, option: options.option, timeout: options.timeout, customTitle: options.customTitle, box: options.box, deps, super: previous, optionOverride: isOptionsOverride };
      registrationId(registration);
      this._registrations.set(name, registration);
    }
  }
  validate() {
    const markers = /* @__PURE__ */ new Map();
    const stack = [];
    let hasDependencyErrors = false;
    const addDependencyError = (message, location) => {
      hasDependencyErrors = true;
      this._addLoadError(message, location);
    };
    const visit = (registration, boxedOnly) => {
      markers.set(registration, "visiting");
      stack.push(registration);
      for (const name of registration.deps) {
        const dep = this.resolve(name, registration);
        if (!dep) {
          if (name === registration.name)
            addDependencyError(`Fixture "${registration.name}" references itself, but does not have a base implementation.`, registration.location);
          else
            addDependencyError(`Fixture "${registration.name}" has unknown parameter "${name}".`, registration.location);
          continue;
        }
        if (kScopeOrder.indexOf(registration.scope) > kScopeOrder.indexOf(dep.scope)) {
          addDependencyError(`${registration.scope} fixture "${registration.name}" cannot depend on a ${dep.scope} fixture "${name}" defined in ${formatPotentiallyInternalLocation(dep.location)}.`, registration.location);
          continue;
        }
        if (!markers.has(dep)) {
          visit(dep, boxedOnly);
        } else if (markers.get(dep) === "visiting") {
          const index = stack.indexOf(dep);
          const allRegs = stack.slice(index, stack.length);
          const filteredRegs = allRegs.filter((r) => !r.box);
          const regs = boxedOnly ? filteredRegs : allRegs;
          const names2 = regs.map((r) => `"${r.name}"`);
          addDependencyError(`Fixtures ${names2.join(" -> ")} -> "${dep.name}" form a dependency cycle: ${regs.map((r) => formatPotentiallyInternalLocation(r.location)).join(" -> ")} -> ${formatPotentiallyInternalLocation(dep.location)}`, dep.location);
          continue;
        }
      }
      markers.set(registration, "visited");
      stack.pop();
    };
    const names = Array.from(this._registrations.keys()).sort();
    for (const name of names) {
      const registration = this._registrations.get(name);
      if (!registration.box)
        visit(registration, true);
    }
    if (!hasDependencyErrors) {
      for (const name of names) {
        const registration = this._registrations.get(name);
        if (registration.box)
          visit(registration, false);
      }
    }
    const hash = import_crypto2.default.createHash("sha1");
    for (const name of names) {
      const registration = this._registrations.get(name);
      if (registration.scope === "worker")
        hash.update(registration.id + ";");
    }
    return hash.digest("hex");
  }
  validateFunction(fn, prefix, location) {
    for (const name of fixtureParameterNames(fn, location, (e) => this._onLoadError(e))) {
      const registration = this._registrations.get(name);
      if (!registration)
        this._addLoadError(`${prefix} has unknown parameter "${name}".`, location);
    }
  }
  resolve(name, forFixture) {
    if (name === forFixture?.name)
      return forFixture.super;
    return this._registrations.get(name);
  }
  autoFixtures() {
    return [...this._registrations.values()].filter((r) => r.auto !== false);
  }
  _addLoadError(message, location) {
    this._onLoadError({ message, location });
  }
};
var signatureSymbol = Symbol("signature");
function formatPotentiallyInternalLocation(location) {
  const isUserFixture = location && filterStackFile(location.file);
  return isUserFixture ? formatLocation(location) : "<builtin>";
}
function fixtureParameterNames(fn, location, onError) {
  if (typeof fn !== "function")
    return [];
  if (!fn[signatureSymbol])
    fn[signatureSymbol] = innerFixtureParameterNames(fn, location, onError);
  return fn[signatureSymbol];
}
function inheritFixtureNames(from, to) {
  to[signatureSymbol] = from[signatureSymbol];
}
function innerFixtureParameterNames(fn, location, onError) {
  const text = filterOutComments(fn.toString());
  const match = text.match(/(?:async)?(?:\s+function)?[^(]*\(([^)]*)/);
  if (!match)
    return [];
  const trimmedParams = match[1].trim();
  if (!trimmedParams)
    return [];
  const [firstParam] = splitByComma(trimmedParams);
  if (firstParam[0] !== "{" || firstParam[firstParam.length - 1] !== "}") {
    onError({ message: "First argument must use the object destructuring pattern: " + firstParam, location });
    return [];
  }
  const props = splitByComma(firstParam.substring(1, firstParam.length - 1)).map((prop) => {
    const colon = prop.indexOf(":");
    return colon === -1 ? prop.trim() : prop.substring(0, colon).trim();
  });
  const restProperty = props.find((prop) => prop.startsWith("..."));
  if (restProperty) {
    onError({ message: `Rest property "${restProperty}" is not supported. List all used fixtures explicitly, separated by comma.`, location });
    return [];
  }
  return props;
}
function filterOutComments(s) {
  const result2 = [];
  let commentState = "none";
  for (let i = 0; i < s.length; ++i) {
    if (commentState === "singleline") {
      if (s[i] === "\n")
        commentState = "none";
    } else if (commentState === "multiline") {
      if (s[i - 1] === "*" && s[i] === "/")
        commentState = "none";
    } else if (commentState === "none") {
      if (s[i] === "/" && s[i + 1] === "/") {
        commentState = "singleline";
      } else if (s[i] === "/" && s[i + 1] === "*") {
        commentState = "multiline";
        i += 2;
      } else {
        result2.push(s[i]);
      }
    }
  }
  return result2.join("");
}
function splitByComma(s) {
  const result2 = [];
  const stack = [];
  let start = 0;
  for (let i = 0; i < s.length; i++) {
    if (s[i] === "{" || s[i] === "[") {
      stack.push(s[i] === "{" ? "}" : "]");
    } else if (s[i] === stack[stack.length - 1]) {
      stack.pop();
    } else if (!stack.length && s[i] === ",") {
      const token = s.substring(start, i).trim();
      if (token)
        result2.push(token);
      start = i + 1;
    }
  }
  const lastToken = s.substring(start).trim();
  if (lastToken)
    result2.push(lastToken);
  return result2;
}
var registrationIdMap = /* @__PURE__ */ new Map();
var lastId = 0;
function registrationId(registration) {
  if (registration.id)
    return registration.id;
  const key = registration.name + "@@@" + (registration.super ? registrationId(registration.super) : "");
  let map = registrationIdMap.get(key);
  if (!map) {
    map = /* @__PURE__ */ new Map();
    registrationIdMap.set(key, map);
  }
  if (!map.has(registration.fn))
    map.set(registration.fn, String(lastId++));
  registration.id = map.get(registration.fn);
  return registration.id;
}
// packages/playwright/src/common/ipc.ts
var ipc_exports = {};
__export(ipc_exports, {
  serializeConfig: () => serializeConfig,
  stdioChunkToParams: () => stdioChunkToParams,
  toTestInfoErrorPayload: () => toTestInfoErrorPayload
});
var import_util7 = __toESM(require("util"));
function serializeConfig(config, passCompilationCache) {
  const result2 = {
    location: { configDir: config.configDir, resolvedConfigFile: config.config.configFile },
    configCLIOverrides: config.configCLIOverrides,
    compilationCache: passCompilationCache ? serializeCompilationCache() : void 0
  };
  try {
    result2.metadata = JSON.stringify(config.config.metadata);
  } catch (error) {
  }
  return result2;
}
function stdioChunkToParams(chunk) {
  if (chunk instanceof Uint8Array)
    return { buffer: Buffer.from(chunk).toString("base64") };
  if (typeof chunk !== "string")
    return { text: import_util7.default.inspect(chunk) };
  return { text: chunk };
}
function toTestInfoErrorPayload(error) {
  const result2 = {};
  if (error.message !== void 0)
    result2.message = error.message;
  if (error.stack !== void 0)
    result2.stack = error.stack;
  if (error.value !== void 0)
    result2.value = error.value;
  if (error.cause !== void 0)
    result2.cause = toTestInfoErrorPayload(error.cause);
  return result2;
}
// packages/playwright/src/common/poolBuilder.ts
var poolBuilder_exports = {};
__export(poolBuilder_exports, {
  PoolBuilder: () => PoolBuilder
});
var PoolBuilder = class _PoolBuilder {
  constructor(type, project) {
    this._testTypePools = /* @__PURE__ */ new Map();
    this._type = type;
    this._project = project;
  }
  static createForLoader() {
    return new _PoolBuilder("loader");
  }
  static createForWorker(project) {
    return new _PoolBuilder("worker", project);
  }
  buildPools(suite, testErrors) {
    suite.forEachTest((test) => {
      const pool = this._buildPoolForTest(test, testErrors);
      if (this._type === "loader")
        test._poolDigest = pool.digest;
      if (this._type === "worker")
        test._pool = pool;
    });
  }
  _buildPoolForTest(test, testErrors) {
    let pool = this._buildTestTypePool(test._testType, testErrors);
    const parents = [];
    for (let parent = test.parent; parent; parent = parent.parent)
      parents.push(parent);
    parents.reverse();
    for (const parent of parents) {
      if (parent._use.length)
        pool = new FixturePool(parent._use, (e) => this._handleLoadError(e, testErrors), pool, parent._type === "describe");
      for (const hook of parent._hooks)
        pool.validateFunction(hook.fn, hook.type + " hook", hook.location);
      for (const modifier of parent._modifiers)
        pool.validateFunction(modifier.fn, modifier.type + " modifier", modifier.location);
    }
    pool.validateFunction(test.fn, "Test", test.location);
    return pool;
  }
  _buildTestTypePool(testType, testErrors) {
    if (!this._testTypePools.has(testType)) {
      const optionOverrides = {
        overrides: this._project?.project?.use ?? {},
        location: { file: `project#${this._project?.id}`, line: 1, column: 1 }
      };
      const pool = new FixturePool(testType.fixtures, (e) => this._handleLoadError(e, testErrors), void 0, void 0, optionOverrides);
      this._testTypePools.set(testType, pool);
    }
    return this._testTypePools.get(testType);
  }
  _handleLoadError(e, testErrors) {
    if (testErrors)
      testErrors.push(e);
    else
      throw new Error(`${formatLocation(e.location)}: ${e.message}`);
  }
};
// packages/playwright/src/common/process.ts
var process_exports = {};
__export(process_exports, {
  ProcessRunner: () => ProcessRunner,
  startProcessRunner: () => startProcessRunner
});
var import_bootstrap = require("playwright-core/lib/bootstrap");
var { ManualPromise } = require("playwright-core/lib/coreBundle").iso;
var { setTimeOrigin } = require("playwright-core/lib/coreBundle").iso;
var { startProfiling, stopProfiling } = require("playwright-core/lib/coreBundle").utils;
var ProcessRunner = class {
  async gracefullyClose() {
  }
  dispatchEvent(method, params) {
    const response = { method, params };
    sendMessageToParent({ method: "__dispatch__", params: response });
  }
  async sendRequest(method, params) {
    return await sendRequestToParent(method, params);
  }
  async sendMessageNoReply(method, params) {
    void sendRequestToParent(method, params).catch(() => {
    });
  }
};
var gracefullyCloseCalled = false;
var forceExitInitiated = false;
var processRunner;
var processName;
var startingEnv = { ...process.env };
function startProcessRunner(create) {
  sendMessageToParent({ method: "ready" });
  process.on("disconnect", () => gracefullyCloseAndExit(true));
  process.on("SIGINT", () => {
  });
  process.on("SIGTERM", () => {
  });
  process.on("message", async (message) => {
    if (message.method === "__init__") {
      const { processParams, runnerParams } = message.params;
      void startProfiling();
      setTimeOrigin(processParams.timeOrigin);
      processRunner = create(runnerParams);
      processName = processParams.processName;
      return;
    }
    if (message.method === "__stop__") {
      const keys = /* @__PURE__ */ new Set([...Object.keys(process.env), ...Object.keys(startingEnv)]);
      const producedEnv = [...keys].filter((key) => startingEnv[key] !== process.env[key]).map((key) => [key, process.env[key] ?? null]);
      sendMessageToParent({ method: "__env_produced__", params: producedEnv });
      await gracefullyCloseAndExit(false);
      return;
    }
    if (message.method === "__dispatch__") {
      const { id, method, params } = message.params;
      try {
        const result2 = await processRunner[method](params);
        const response = { id, result: result2 };
        sendMessageToParent({ method: "__dispatch__", params: response });
      } catch (e) {
        const response = { id, error: serializeError(e) };
        sendMessageToParent({ method: "__dispatch__", params: response });
      }
    }
    if (message.method === "__response__")
      handleResponseFromParent(message.params);
  });
}
var kForceExitTimeout = +(process.env.PWTEST_FORCE_EXIT_TIMEOUT || 3e4);
async function gracefullyCloseAndExit(forceExit) {
  if (forceExit && !forceExitInitiated) {
    forceExitInitiated = true;
    setTimeout(() => process.exit(0), kForceExitTimeout);
  }
  if (!gracefullyCloseCalled) {
    gracefullyCloseCalled = true;
    await processRunner?.gracefullyClose().catch(() => {
    });
    if (processName)
      await stopProfiling(processName).catch(() => {
      });
    process.exit(0);
  }
}
function sendMessageToParent(message) {
  try {
    process.send(message);
  } catch (e) {
    try {
      JSON.stringify(message);
    } catch {
      throw e;
    }
  }
}
var lastId2 = 0;
var requestCallbacks = /* @__PURE__ */ new Map();
async function sendRequestToParent(method, params) {
  const id = ++lastId2;
  sendMessageToParent({ method: "__request__", params: { id, method, params } });
  const promise = new ManualPromise();
  requestCallbacks.set(id, promise);
  return promise;
}
function handleResponseFromParent(response) {
  const promise = requestCallbacks.get(response.id);
  if (!promise)
    return;
  requestCallbacks.delete(response.id);
  if (response.error)
    promise.reject(new Error(response.error.message));
  else
    promise.resolve(response.result);
}
// packages/playwright/src/common/suiteUtils.ts
var suiteUtils_exports = {};
__export(suiteUtils_exports, {
  applyRepeatEachIndex: () => applyRepeatEachIndex,
  bindFileSuiteToProject: () => bindFileSuiteToProject,
  createFiltersFromArguments: () => createFiltersFromArguments,
  filterOnly: () => filterOnly,
  filterTestsRemoveEmptySuites: () => filterTestsRemoveEmptySuites
});
var import_path8 = __toESM(require("path"));
var { calculateSha1: calculateSha13 } = require("playwright-core/lib/coreBundle").utils;
var { toPosixPath } = require("playwright-core/lib/coreBundle").utils;
function filterTestsRemoveEmptySuites(suite, filter) {
  const filteredSuites = suite.suites.filter((child) => filterTestsRemoveEmptySuites(child, filter));
  const filteredTests = suite.tests.filter(filter);
  const entries = /* @__PURE__ */ new Set([...filteredSuites, ...filteredTests]);
  suite._entries = suite._entries.filter((e) => entries.has(e));
  return !!suite._entries.length;
}
function bindFileSuiteToProject(project, suite) {
  const relativeFile = import_path8.default.relative(project.project.testDir, suite.location.file);
  const fileId = calculateSha13(toPosixPath(relativeFile)).slice(0, 20);
  const result2 = suite._deepClone();
  result2._fileId = fileId;
  result2.forEachTest((test, suite2) => {
    suite2._fileId = fileId;
    const [file2, ...titles] = test.titlePath();
    const testIdExpression = `[project=${project.id}]${toPosixPath(file2)}${titles.join("")}`;
    const testId = fileId + "-" + calculateSha13(testIdExpression).slice(0, 20);
    test.id = testId;
    test._projectId = project.id;
    let inheritedRetries;
    let inheritedTimeout;
    for (let parentSuite = suite2; parentSuite; parentSuite = parentSuite.parent) {
      if (parentSuite._staticAnnotations.length)
        test.annotations.unshift(...parentSuite._staticAnnotations);
      if (inheritedRetries === void 0 && parentSuite._retries !== void 0)
        inheritedRetries = parentSuite._retries;
      if (inheritedTimeout === void 0 && parentSuite._timeout !== void 0)
        inheritedTimeout = parentSuite._timeout;
    }
    test.retries = inheritedRetries ?? project.project.retries;
    test.timeout = inheritedTimeout ?? project.project.timeout;
    if (test.annotations.some((a) => a.type === "skip" || a.type === "fixme"))
      test.expectedStatus = "skipped";
    if (test._poolDigest)
      test._workerHash = `${project.id}-${test._poolDigest}-0`;
  });
  return result2;
}
function applyRepeatEachIndex(project, fileSuite, repeatEachIndex) {
  fileSuite.forEachTest((test, suite) => {
    if (repeatEachIndex) {
      const [file2, ...titles] = test.titlePath();
      const testIdExpression = `[project=${project.id}]${toPosixPath(file2)}${titles.join("")} (repeat:${repeatEachIndex})`;
      const testId = suite._fileId + "-" + calculateSha13(testIdExpression).slice(0, 20);
      test.id = testId;
      test.repeatEachIndex = repeatEachIndex;
      if (test._poolDigest)
        test._workerHash = `${project.id}-${test._poolDigest}-${repeatEachIndex}`;
    }
  });
}
function filterOnly(suite) {
  if (!suite._getOnlyItems().length)
    return;
  const suiteFilter = (suite2) => suite2._only;
  const testFilter = (test) => test._only;
  return filterSuiteWithOnlySemantics(suite, suiteFilter, testFilter);
}
function filterSuiteWithOnlySemantics(suite, suiteFilter, testFilter) {
  const onlySuites = suite.suites.filter((child) => filterSuiteWithOnlySemantics(child, suiteFilter, testFilter) || suiteFilter(child));
  const onlyTests = suite.tests.filter(testFilter);
  const onlyEntries = /* @__PURE__ */ new Set([...onlySuites, ...onlyTests]);
  if (onlyEntries.size) {
    suite._entries = suite._entries.filter((e) => onlyEntries.has(e));
    return true;
  }
  return false;
}
function createFiltersFromArguments(args) {
  const matchers = args.map((arg) => {
    const parsed = parseLocationArg(arg);
    const fileMatcher = createFileMatcher(forceRegExp(parsed.file));
    const locationMatcher2 = (file2, line, column) => fileMatcher(file2) && (parsed.line === line || parsed.line === null) && (parsed.column === column || parsed.column === null);
    return { fileMatcher, locationMatcher: locationMatcher2 };
  });
  const fileFilter = (file2) => matchers.some((m) => m.fileMatcher(file2));
  const locationMatcher = (file2, line, column) => matchers.some((m) => m.locationMatcher(file2, line, column));
  const testFilter = (test) => {
    for (let suite = test.parent; suite; suite = suite.parent) {
      if (suite.location && locationMatcher(suite.location.file, suite.location.line, suite.location.column))
        return true;
    }
    return locationMatcher(test.location.file, test.location.line, test.location.column);
  };
  return { fileFilter, testFilter };
}
// packages/playwright/src/common/test.ts
var test_exports = {};
__export(test_exports, {
  Suite: () => Suite,
  TestCase: () => TestCase
});
// packages/playwright/src/common/testType.ts
var testType_exports = {};
__export(testType_exports, {
  TestTypeImpl: () => TestTypeImpl,
  mergeTests: () => mergeTests,
  rootTestType: () => rootTestType
});
var import_globals2 = require("../globals");
var import_expect = require("../matchers/expect");
// packages/playwright/src/common/validators.ts
var { validate } = require("playwright-core/lib/coreBundle").iso;
var testAnnotationSchema = {
  type: "object",
  properties: {
    type: { type: "string" },
    description: { type: "string" }
  },
  required: ["type"]
};
var testDetailsSchema = {
  type: "object",
  properties: {
    tag: {
      oneOf: [
        { type: "string", pattern: "^@", patternError: "Tag must start with '@'" },
        { type: "array", items: { type: "string", pattern: "^@", patternError: "Tag must start with '@'" } }
      ]
    },
    annotation: {
      oneOf: [
        testAnnotationSchema,
        { type: "array", items: testAnnotationSchema }
      ]
    }
  }
};
function validateTestDetails(details, location) {
  const errors = validate(details, testDetailsSchema, "details");
  if (errors.length)
    throw new Error(errors.join("\n"));
  const obj = details;
  const tag = obj.tag;
  const tags = tag === void 0 ? [] : typeof tag === "string" ? [tag] : tag;
  const annotation = obj.annotation;
  const annotations = annotation === void 0 ? [] : Array.isArray(annotation) ? annotation : [annotation];
  return {
    annotations: annotations.map((a) => ({ ...a, location })),
    tags,
    location
  };
}
// packages/playwright/src/common/testType.ts
var { monotonicTime } = require("playwright-core/lib/coreBundle").iso;
var { raceAgainstDeadline } = require("playwright-core/lib/coreBundle").iso;
var { getPackageManagerExecCommand } = require("playwright-core/lib/coreBundle").utils;
var { currentZone } = require("playwright-core/lib/coreBundle").utils;
var testTypeSymbol = Symbol("testType");
var TestTypeImpl = class _TestTypeImpl {
  constructor(fixtures) {
    this.fixtures = fixtures;
    const test = wrapFunctionWithLocation(this._createTest.bind(this, "default"));
    test[testTypeSymbol] = this;
    test.expect = import_expect.expect;
    test.only = wrapFunctionWithLocation(this._createTest.bind(this, "only"));
    test.describe = wrapFunctionWithLocation(this._describe.bind(this, "default"));
    test.describe.only = wrapFunctionWithLocation(this._describe.bind(this, "only"));
    test.describe.configure = wrapFunctionWithLocation(this._configure.bind(this));
    test.describe.fixme = wrapFunctionWithLocation(this._describe.bind(this, "fixme"));
    test.describe.parallel = wrapFunctionWithLocation(this._describe.bind(this, "parallel"));
    test.describe.parallel.only = wrapFunctionWithLocation(this._describe.bind(this, "parallel.only"));
    test.describe.serial = wrapFunctionWithLocation(this._describe.bind(this, "serial"));
    test.describe.serial.only = wrapFunctionWithLocation(this._describe.bind(this, "serial.only"));
    test.describe.skip = wrapFunctionWithLocation(this._describe.bind(this, "skip"));
    test.beforeEach = wrapFunctionWithLocation(this._hook.bind(this, "beforeEach"));
    test.afterEach = wrapFunctionWithLocation(this._hook.bind(this, "afterEach"));
    test.beforeAll = wrapFunctionWithLocation(this._hook.bind(this, "beforeAll"));
    test.afterAll = wrapFunctionWithLocation(this._hook.bind(this, "afterAll"));
    test.skip = wrapFunctionWithLocation(this._modifier.bind(this, "skip"));
    test.fixme = wrapFunctionWithLocation(this._modifier.bind(this, "fixme"));
    test.fail = wrapFunctionWithLocation(this._modifier.bind(this, "fail"));
    test.abort = wrapFunctionWithLocation(this._abort.bind(this));
    test.fail.only = wrapFunctionWithLocation(this._createTest.bind(this, "fail.only"));
    test.slow = wrapFunctionWithLocation(this._modifier.bind(this, "slow"));
    test.setTimeout = wrapFunctionWithLocation(this._setTimeout.bind(this));
    test.step = this._step.bind(this, "pass");
    test.step.skip = this._step.bind(this, "skip");
    test.use = wrapFunctionWithLocation(this._use.bind(this));
    test.extend = wrapFunctionWithLocation(this._extend.bind(this));
    test.info = () => {
      const result2 = (0, import_globals2.currentTestInfo)();
      if (!result2)
        throw new Error("test.info() can only be called while test is running");
      return result2;
    };
    this.test = test;
  }
  _currentSuite(location, title) {
    const suite = (0, import_globals2.currentlyLoadingFileSuite)();
    if (!suite) {
      throw new Error([
        `Playwright Test did not expect ${title} to be called here.`,
        `Most common reasons include:`,
        `- You are calling ${title} in a configuration file.`,
        `- You are calling ${title} in a file that is imported by the configuration file.`,
        `- You have two different versions of @playwright/test. This usually happens`,
        `  when one of the dependencies in your package.json depends on @playwright/test.`,
        `- You are calling ${title} from an async test.describe() block. Only sync ones are supported.`
      ].join("\n"));
    }
    return suite;
  }
  _createTest(type, location, title, fnOrDetails, fn) {
    throwIfRunningInsideJest();
    const suite = this._currentSuite(location, "test()");
    if (!suite)
      return;
    let details;
    let body;
    if (typeof fnOrDetails === "function") {
      body = fnOrDetails;
      details = {};
    } else {
      body = fn;
      details = fnOrDetails;
    }
    const validatedDetails = validateTestDetails(details, location);
    const test = new TestCase(title, body, this, location);
    test._requireFile = suite._requireFile;
    test.annotations.push(...validatedDetails.annotations);
    test._tags.push(...validatedDetails.tags);
    suite._addTest(test);
    if (type === "only" || type === "fail.only")
      test._only = true;
    if (type === "skip" || type === "fixme" || type === "fail")
      test.annotations.push({ type, location });
    else if (type === "fail.only")
      test.annotations.push({ type: "fail", location });
  }
  _describe(type, location, titleOrFn, fnOrDetails, fn) {
    throwIfRunningInsideJest();
    const suite = this._currentSuite(location, "test.describe()");
    if (!suite)
      return;
    let title;
    let body;
    let details;
    if (typeof titleOrFn === "function") {
      title = "";
      details = {};
      body = titleOrFn;
    } else if (typeof fnOrDetails === "function") {
      title = titleOrFn;
      details = {};
      body = fnOrDetails;
    } else {
      title = titleOrFn;
      details = fnOrDetails;
      body = fn;
    }
    const validatedDetails = validateTestDetails(details, location);
    const child = new Suite(title, "describe");
    child._requireFile = suite._requireFile;
    child.location = location;
    child._staticAnnotations.push(...validatedDetails.annotations);
    child._tags.push(...validatedDetails.tags);
    suite._addSuite(child);
    if (type === "only" || type === "serial.only" || type === "parallel.only")
      child._only = true;
    if (type === "serial" || type === "serial.only")
      child._parallelMode = "serial";
    if (type === "parallel" || type === "parallel.only")
      child._parallelMode = "parallel";
    if (type === "skip" || type === "fixme")
      child._staticAnnotations.push({ type, location });
    for (let parent = suite; parent; parent = parent.parent) {
      if (parent._parallelMode === "serial" && child._parallelMode === "parallel")
        throw new Error("describe.parallel cannot be nested inside describe.serial");
      if (parent._parallelMode === "default" && child._parallelMode === "parallel")
        throw new Error("describe.parallel cannot be nested inside describe with default mode");
    }
    (0, import_globals2.setCurrentlyLoadingFileSuite)(child);
    body();
    (0, import_globals2.setCurrentlyLoadingFileSuite)(suite);
  }
  _hook(name, location, title, fn) {
    const suite = this._currentSuite(location, `test.${name}()`);
    if (!suite)
      return;
    if (typeof title === "function") {
      fn = title;
      title = `${name} hook`;
    }
    suite._hooks.push({ type: name, fn, title, location });
  }
  _configure(location, options) {
    throwIfRunningInsideJest();
    const suite = this._currentSuite(location, `test.describe.configure()`);
    if (!suite)
      return;
    if (options.timeout !== void 0)
      suite._timeout = options.timeout;
    if (options.retries !== void 0)
      suite._retries = options.retries;
    if (options.mode !== void 0) {
      if (suite._parallelMode !== "none")
        throw new Error(`"${suite._parallelMode}" mode is already assigned for the enclosing scope.`);
      suite._parallelMode = options.mode;
      for (let parent = suite.parent; parent; parent = parent.parent) {
        if (parent._parallelMode === "serial" && suite._parallelMode === "parallel")
          throw new Error("describe with parallel mode cannot be nested inside describe with serial mode");
        if (parent._parallelMode === "default" && suite._parallelMode === "parallel")
          throw new Error("describe with parallel mode cannot be nested inside describe with default mode");
      }
    }
  }
  _modifier(type, location, ...modifierArgs) {
    const suite = (0, import_globals2.currentlyLoadingFileSuite)();
    if (suite) {
      if (typeof modifierArgs[0] === "string" && typeof modifierArgs[1] === "function" && (type === "skip" || type === "fixme" || type === "fail")) {
        this._createTest(type, location, modifierArgs[0], modifierArgs[1]);
        return;
      }
      if (typeof modifierArgs[0] === "string" && typeof modifierArgs[1] === "object" && typeof modifierArgs[2] === "function" && (type === "skip" || type === "fixme" || type === "fail")) {
        this._createTest(type, location, modifierArgs[0], modifierArgs[1], modifierArgs[2]);
        return;
      }
      if (typeof modifierArgs[0] === "function") {
        suite._modifiers.push({ type, fn: modifierArgs[0], location, description: modifierArgs[1] });
      } else {
        if (modifierArgs.length >= 1 && !modifierArgs[0])
          return;
        const description = modifierArgs[1];
        suite._staticAnnotations.push({ type, description, location });
      }
      return;
    }
    const testInfo = (0, import_globals2.currentTestInfo)();
    if (!testInfo)
      throw new Error(`test.${type}() can only be called inside test, describe block or fixture`);
    if (typeof modifierArgs[0] === "function")
      throw new Error(`test.${type}() with a function can only be called inside describe block`);
    testInfo._modifier(type, location, modifierArgs);
  }
  _abort(location, message) {
    const testInfo = (0, import_globals2.currentTestInfo)();
    if (!testInfo)
      throw new Error(`test.abort() can only be called inside a test or fixture`);
    testInfo._abort(location, message);
  }
  _setTimeout(location, timeout) {
    const suite = (0, import_globals2.currentlyLoadingFileSuite)();
    if (suite) {
      suite._timeout = timeout;
      return;
    }
    const testInfo = (0, import_globals2.currentTestInfo)();
    if (!testInfo)
      throw new Error(`test.setTimeout() can only be called from a test`);
    testInfo.setTimeout(timeout);
  }
  _use(location, fixtures) {
    const suite = this._currentSuite(location, `test.use()`);
    if (!suite)
      return;
    suite._use.push({ fixtures, location });
  }
  async _step(expectation, title, body, options = {}) {
    const testInfo = (0, import_globals2.currentTestInfo)();
    if (!testInfo)
      throw new Error(`test.step() can only be called from a test`);
    await testInfo._onUserStepBegin?.(title);
    const step = testInfo._addStep({ category: "test.step", title, location: options.location, box: options.box });
    return await currentZone().with("stepZone", step).run(async () => {
      try {
        let result2 = void 0;
        result2 = await raceAgainstDeadline(async () => {
          try {
            return await step.info._runStepBody(expectation === "skip", body, step.location);
          } catch (e) {
            if (result2?.timedOut)
              testInfo._failWithError(e);
            throw e;
          }
        }, options.timeout ? monotonicTime() + options.timeout : 0);
        if (result2.timedOut)
          throw new TimeoutError(`Step timeout of ${options.timeout}ms exceeded.`);
        step.complete({});
        return result2.result;
      } catch (error) {
        step.complete({ error });
        throw error;
      } finally {
        await testInfo._onUserStepEnd?.();
      }
    });
  }
  _extend(location, fixtures) {
    if (fixtures[testTypeSymbol])
      throw new Error(`test.extend() accepts fixtures object, not a test object.
Did you mean to call mergeTests()?`);
    const fixturesWithLocation = { fixtures, location };
    return new _TestTypeImpl([...this.fixtures, fixturesWithLocation]).test;
  }
};
function throwIfRunningInsideJest() {
  if (process.env.JEST_WORKER_ID) {
    const packageManagerCommand = getPackageManagerExecCommand();
    throw new Error(
      `Playwright Test needs to be invoked via '${packageManagerCommand} playwright test' and excluded from Jest test runs.
Creating one directory for Playwright tests and one for Jest is the recommended way of doing it.
See https://playwright.dev/docs/intro for more information about Playwright Test.`
    );
  }
}
var rootTestType = new TestTypeImpl([]);
function mergeTests(...tests) {
  let result2 = rootTestType;
  for (const t of tests) {
    const testTypeImpl = t[testTypeSymbol];
    if (!testTypeImpl)
      throw new Error(`mergeTests() accepts "test" functions as parameters.
Did you mean to call test.extend() with fixtures instead?`);
    const newFixtures = testTypeImpl.fixtures.filter((theirs) => !result2.fixtures.find((ours) => ours.fixtures === theirs.fixtures));
    result2 = new TestTypeImpl([...result2.fixtures, ...newFixtures]);
  }
  return result2.test;
}
var TimeoutError = class extends Error {
  constructor(message) {
    super(message);
    this.name = "TimeoutError";
  }
};
// packages/playwright/src/isomorphic/teleReceiver.ts
var baseFullConfig = {
  argv: [],
  failOnFlakyTests: false,
  forbidOnly: false,
  fullyParallel: false,
  globalSetup: null,
  globalTeardown: null,
  globalTimeout: 0,
  grep: /.*/,
  grepInvert: null,
  maxFailures: 0,
  metadata: {},
  preserveOutput: "always",
  projects: [],
  reporter: [[process.env.CI ? "dot" : "list"]],
  reportSlowTests: {
    max: 5,
    threshold: 3e5
    /* 5 minutes */
  },
  configFile: "",
  rootDir: "",
  quiet: false,
  shard: null,
  tags: [],
  updateSnapshots: "missing",
  updateSourceMethod: "patch",
  version: "",
  workers: 0,
  webServer: null
};
function computeTestCaseOutcome(test) {
  let skipped = 0;
  let didNotRun = 0;
  let expected = 0;
  let interrupted = 0;
  let unexpected = 0;
  for (const result2 of test.results) {
    if (result2.status === "interrupted") {
      ++interrupted;
    } else if (result2.status === "skipped" && test.expectedStatus === "skipped") {
      ++skipped;
    } else if (result2.status === "skipped") {
      ++didNotRun;
    } else if (result2.status === test.expectedStatus) {
      ++expected;
    } else {
      ++unexpected;
    }
  }
  if (expected === 0 && unexpected === 0)
    return "skipped";
  if (unexpected === 0)
    return "expected";
  if (expected === 0 && skipped === 0)
    return "unexpected";
  return "flaky";
}
// packages/playwright/src/common/test.ts
var Base = class {
  constructor(title) {
    this._only = false;
    this._requireFile = "";
    this.title = title;
  }
};
var Suite = class _Suite extends Base {
  constructor(title, type) {
    super(title);
    this._use = [];
    this._entries = [];
    this._hooks = [];
    // Annotations known statically before running the test, e.g. `test.describe.skip()` or `test.describe({ annotation }, body)`.
    this._staticAnnotations = [];
    // Explicitly declared tags that are not a part of the title.
    this._tags = [];
    this._modifiers = [];
    this._parallelMode = "none";
    this._type = type;
  }
  get type() {
    return this._type;
  }
  entries() {
    return this._entries;
  }
  get suites() {
    return this._entries.filter((entry) => entry instanceof _Suite);
  }
  get tests() {
    return this._entries.filter((entry) => entry instanceof TestCase);
  }
  _addTest(test) {
    test.parent = this;
    this._entries.push(test);
  }
  _addSuite(suite) {
    suite.parent = this;
    this._entries.push(suite);
  }
  _prependSuite(suite) {
    suite.parent = this;
    this._entries.unshift(suite);
  }
  allTests() {
    const result2 = [];
    const visit = (suite) => {
      for (const entry of suite._entries) {
        if (entry instanceof _Suite)
          visit(entry);
        else
          result2.push(entry);
      }
    };
    visit(this);
    return result2;
  }
  _hasTests() {
    let result2 = false;
    const visit = (suite) => {
      for (const entry of suite._entries) {
        if (result2)
          return;
        if (entry instanceof _Suite)
          visit(entry);
        else
          result2 = true;
      }
    };
    visit(this);
    return result2;
  }
  titlePath() {
    const titlePath = this.parent ? this.parent.titlePath() : [];
    if (this.title || this._type !== "describe")
      titlePath.push(this.title);
    return titlePath;
  }
  _collectGrepTitlePath(path10) {
    if (this.parent)
      this.parent._collectGrepTitlePath(path10);
    if (this.title || this._type !== "describe")
      path10.push(this.title);
    path10.push(...this._tags);
  }
  _collectTagTitlePath(path10) {
    this.parent?._collectTagTitlePath(path10);
    if (this._type === "describe")
      path10.push(this.title);
    path10.push(...this._tags);
  }
  _getOnlyItems() {
    const items = [];
    if (this._only)
      items.push(this);
    for (const suite of this.suites)
      items.push(...suite._getOnlyItems());
    items.push(...this.tests.filter((test) => test._only));
    return items;
  }
  _deepClone() {
    const suite = this._clone();
    for (const entry of this._entries) {
      if (entry instanceof _Suite)
        suite._addSuite(entry._deepClone());
      else
        suite._addTest(entry._clone());
    }
    return suite;
  }
  _deepSerialize() {
    const suite = this._serialize();
    suite.entries = [];
    for (const entry of this._entries) {
      if (entry instanceof _Suite)
        suite.entries.push(entry._deepSerialize());
      else
        suite.entries.push(entry._serialize());
    }
    return suite;
  }
  static _deepParse(data) {
    const suite = _Suite._parse(data);
    for (const entry of data.entries) {
      if (entry.kind === "suite")
        suite._addSuite(_Suite._deepParse(entry));
      else
        suite._addTest(TestCase._parse(entry));
    }
    return suite;
  }
  forEachTest(visitor) {
    for (const entry of this._entries) {
      if (entry instanceof _Suite)
        entry.forEachTest(visitor);
      else
        visitor(entry, this);
    }
  }
  _serialize() {
    return {
      kind: "suite",
      title: this.title,
      type: this._type,
      location: this.location,
      only: this._only,
      requireFile: this._requireFile,
      timeout: this._timeout,
      retries: this._retries,
      staticAnnotations: this._staticAnnotations.slice(),
      tags: this._tags.slice(),
      modifiers: this._modifiers.slice(),
      parallelMode: this._parallelMode,
      hooks: this._hooks.map((h) => ({ type: h.type, location: h.location, title: h.title })),
      fileId: this._fileId
    };
  }
  static _parse(data) {
    const suite = new _Suite(data.title, data.type);
    suite.location = data.location;
    suite._only = data.only;
    suite._requireFile = data.requireFile;
    suite._timeout = data.timeout;
    suite._retries = data.retries;
    suite._staticAnnotations = data.staticAnnotations;
    suite._tags = data.tags;
    suite._modifiers = data.modifiers;
    suite._parallelMode = data.parallelMode;
    suite._hooks = data.hooks.map((h) => ({ type: h.type, location: h.location, title: h.title, fn: () => {
    } }));
    suite._fileId = data.fileId;
    return suite;
  }
  _clone() {
    const data = this._serialize();
    const suite = _Suite._parse(data);
    suite._use = this._use.slice();
    suite._hooks = this._hooks.slice();
    suite._fullProject = this._fullProject;
    return suite;
  }
  project() {
    return this._fullProject?.project || this.parent?.project();
  }
};
var TestCase = class _TestCase extends Base {
  constructor(title, fn, testType, location) {
    super(title);
    this.results = [];
    this.type = "test";
    this.expectedStatus = "passed";
    this.timeout = 0;
    this.annotations = [];
    this.retries = 0;
    this.repeatEachIndex = 0;
    this.id = "";
    this._poolDigest = "";
    this._workerHash = "";
    this._projectId = "";
    // Explicitly declared tags that are not a part of the title.
    this._tags = [];
    this.fn = fn;
    this._testType = testType;
    this.location = location;
  }
  titlePath() {
    const titlePath = this.parent ? this.parent.titlePath() : [];
    titlePath.push(this.title);
    return titlePath;
  }
  outcome() {
    return computeTestCaseOutcome(this);
  }
  ok() {
    const status = this.outcome();
    return status === "expected" || status === "flaky" || status === "skipped";
  }
  get tags() {
    const path10 = [];
    this.parent._collectTagTitlePath(path10);
    path10.push(this.title);
    const titleTags = path10.join(" ").match(/@[\S]+/g) || [];
    return [
      ...titleTags,
      ...this._tags
    ];
  }
  _serialize() {
    return {
      kind: "test",
      id: this.id,
      title: this.title,
      retries: this.retries,
      timeout: this.timeout,
      expectedStatus: this.expectedStatus,
      location: this.location,
      only: this._only,
      requireFile: this._requireFile,
      poolDigest: this._poolDigest,
      workerHash: this._workerHash,
      annotations: this.annotations.slice(),
      tags: this._tags.slice(),
      projectId: this._projectId
    };
  }
  static _parse(data) {
    const test = new _TestCase(data.title, () => {
    }, rootTestType, data.location);
    test.id = data.id;
    test.retries = data.retries;
    test.timeout = data.timeout;
    test.expectedStatus = data.expectedStatus;
    test._only = data.only;
    test._requireFile = data.requireFile;
    test._poolDigest = data.poolDigest;
    test._workerHash = data.workerHash;
    test.annotations = data.annotations;
    test._tags = data.tags;
    test._projectId = data.projectId;
    return test;
  }
  _clone() {
    const data = this._serialize();
    const test = _TestCase._parse(data);
    test._testType = this._testType;
    test.fn = this.fn;
    return test;
  }
  _appendTestResult() {
    const result2 = {
      retry: this.results.length,
      parallelIndex: -1,
      workerIndex: -1,
      duration: 0,
      startTime: /* @__PURE__ */ new Date(),
      stdout: [],
      stderr: [],
      attachments: [],
      status: "skipped",
      steps: [],
      errors: [],
      annotations: []
    };
    this.results.push(result2);
    return result2;
  }
  _grepBaseTitlePath() {
    const path10 = [];
    this.parent._collectGrepTitlePath(path10);
    path10.push(this.title);
    return path10;
  }
  _grepTitleWithTags() {
    const path10 = this._grepBaseTitlePath();
    path10.push(...this._tags);
    return path10.join(" ");
  }
};
// packages/playwright/src/common/testLoader.ts
var testLoader_exports = {};
__export(testLoader_exports, {
  defaultTimeout: () => defaultTimeout2,
  loadTestFile: () => loadTestFile
});
var import_path9 = __toESM(require("path"));
var import_util11 = __toESM(require("util"));
var import_globals3 = require("../globals");
var defaultTimeout2 = 3e4;
var cachedFileSuites = /* @__PURE__ */ new Map();
async function loadTestFile(file2, config, testErrors) {
  if (cachedFileSuites.has(file2))
    return cachedFileSuites.get(file2);
  const suite = new Suite(import_path9.default.relative(config.config.rootDir, file2) || import_path9.default.basename(file2), "file");
  suite._requireFile = file2;
  suite.location = { file: file2, line: 0, column: 0 };
  suite._tags = [...config.config.tags];
  (0, import_globals3.setCurrentlyLoadingFileSuite)(suite);
  if (!(0, import_globals3.isWorkerProcess)())
    await startCollectingFileDeps2();
  try {
    await requireOrImport(file2);
    cachedFileSuites.set(file2, suite);
  } catch (e) {
    if (!testErrors)
      throw e;
    testErrors.push(serializeLoadError(file2, e));
  } finally {
    (0, import_globals3.setCurrentlyLoadingFileSuite)(void 0);
    if (!(0, import_globals3.isWorkerProcess)())
      await stopCollectingFileDeps2(file2);
  }
  {
    const files = /* @__PURE__ */ new Set();
    suite.allTests().map((t) => files.add(t.location.file));
    if (files.size === 1) {
      const mappedFile = files.values().next().value;
      if (suite.location.file !== mappedFile) {
        if (import_path9.default.extname(mappedFile) !== import_path9.default.extname(suite.location.file))
          suite.location.file = mappedFile;
      }
    }
  }
  return suite;
}
function serializeLoadError(file2, error) {
  if (error instanceof Error) {
    const result2 = filterStackTrace(error);
    const loc = error.loc;
    result2.location = loc ? {
      file: file2,
      line: loc.line || 0,
      column: loc.column || 0
    } : void 0;
    return result2;
  }
  return { value: import_util11.default.inspect(error) };
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  FullConfigInternal,
  ProcessRunner,
  builtInReporters,
  cc,
  config,
  configLoader,
  defineConfig,
  fixtures,
  ipc,
  mergeTests,
  poolBuilder,
  processRunner,
  startProcessRunner,
  suiteUtils,
  test,
  testLoader,
  testType,
  transform
});
在上述文件截断后对比
scripts/node_modules/playwright/lib/common/index.js.txt scripts/node_modules/playwright/lib/errorContext.js scripts/node_modules/playwright/lib/globals.js scripts/node_modules/playwright/lib/index.js scripts/node_modules/playwright/lib/isomorphic.js scripts/node_modules/playwright/lib/isomorphic.js.txt scripts/node_modules/playwright/lib/loader/loaderProcessEntry.js scripts/node_modules/playwright/lib/loader/loaderProcessEntry.js.txt scripts/node_modules/playwright/lib/matchers/expect.js scripts/node_modules/playwright/lib/matchers/expect.js.LICENSE scripts/node_modules/playwright/lib/matchers/expect.js.txt scripts/node_modules/playwright/lib/mcp/test/browserBackend.js scripts/node_modules/playwright/lib/mcp/test/generatorTools.js scripts/node_modules/playwright/lib/mcp/test/plannerTools.js scripts/node_modules/playwright/lib/mcp/test/seed.js scripts/node_modules/playwright/lib/mcp/test/streams.js scripts/node_modules/playwright/lib/mcp/test/testBackend.js scripts/node_modules/playwright/lib/mcp/test/testContext.js scripts/node_modules/playwright/lib/mcp/test/testTool.js scripts/node_modules/playwright/lib/mcp/test/testTools.js scripts/node_modules/playwright/lib/package.js scripts/node_modules/playwright/lib/program.js scripts/node_modules/playwright/lib/runner/index.js scripts/node_modules/playwright/lib/runner/index.js.txt scripts/node_modules/playwright/lib/transform/babelBundle.js scripts/node_modules/playwright/lib/transform/babelBundle.js.LICENSE scripts/node_modules/playwright/lib/transform/babelBundle.js.txt scripts/node_modules/playwright/lib/transform/esmLoader.js scripts/node_modules/playwright/lib/transform/esmLoader.js.LICENSE scripts/node_modules/playwright/lib/transform/esmLoader.js.txt scripts/node_modules/playwright/lib/util.js scripts/node_modules/playwright/lib/worker/workerProcessEntry.js scripts/node_modules/playwright/lib/worker/workerProcessEntry.js.txt scripts/node_modules/playwright/package.json scripts/node_modules/playwright/test.d.ts scripts/node_modules/playwright/test.js scripts/node_modules/playwright/test.mjs scripts/node_modules/playwright/types/test.d.ts scripts/node_modules/playwright/types/testReporter.d.ts scripts/package-lock.json scripts/package.json sql/production_workflow_optimization.sql yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/framework/permission/core/aop/CrmPermissionAspect.java yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/util/CrmPermissionUtils.java yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/ErpSaleOrderController.java yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/controller/admin/item/MdmItemController.java yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/service/item/MdmItemService.java yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/service/item/MdmItemServiceImpl.java yudao-module-mes-api/src/main/java/cn/iocoder/yudao/module/mes/api/mps/MesProMpsApi.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/api/mps/MesProMpsApiImpl.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/MesProFeedbackController.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/vo/MesProFeedbackBatchCreateReqVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/vo/MesProFeedbackBatchCreateRespVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/vo/MesProFeedbackQuickCreateReqVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/feedback/vo/MesProFeedbackQuickCreateRespVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/task/MesProTaskController.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/task/vo/MesProTaskAutoGeneratePreviewRespVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/task/vo/MesProTaskAutoGenerateReqVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderController.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderProcessController.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/MesProWorkOrderProgressRespVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/process/MesProWorkOrderProcessPageReqVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/process/MesProWorkOrderProcessRespVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/process/MesProWorkOrderProcessSaveReqVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/materialstock/MesWmMaterialStockController.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/materialstock/vo/MesWmMaterialStockMoveReqVO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/pro/task/MesProTaskDO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/pro/workorder/MesProWorkOrderDO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/pro/workorder/MesProWorkOrderProcessDO.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/workorder/MesProWorkOrderMapper.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/workorder/MesProWorkOrderProcessMapper.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/materialstock/MesWmMaterialStockMapper.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/pro/MesProTaskStatusEnum.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/feedback/MesProFeedbackService.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/feedback/MesProFeedbackServiceImpl.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/mps/MesProMpsService.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/mps/MesProMpsServiceImpl.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/task/MesProTaskService.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/task/MesProTaskServiceImpl.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderProcessService.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderProcessServiceImpl.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderService.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockService.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/materialstock/MesWmMaterialStockServiceImpl.java yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/transfer/MesWmTransferServiceImpl.java yudao-server/src/main/java/cn/iocoder/yudao/server/controller/DefaultController.java